j3d.org Aviatrix3D

org.j3d.aviatrix3d
Class TransformGroup

java.lang.Object
  extended byorg.j3d.aviatrix3d.SceneGraphObject
      extended byorg.j3d.aviatrix3d.Node
          extended byorg.j3d.aviatrix3d.Group
              extended byorg.j3d.aviatrix3d.TransformGroup
All Implemented Interfaces:
PickableObject

public class TransformGroup
extends Group

A grouping node that contains a transform. The node contains a single transformation that can position, scale and rotate all its children. The specified transformation must be Affine and have uniform scaling components(SRT-transform). This class will not check this constraint, so expect odd results if you break this rule, up to and including a possible core reactor meltdown in a foreign country.

Version:
$Revision: 1.21 $
Author:
Alan Hudson

Field Summary
 
Fields inherited from class org.j3d.aviatrix3d.Group
childList, dirtyBoundsCount, lastChild, pickFlags, wkVec1, wkVec2
 
Fields inherited from class org.j3d.aviatrix3d.Node
bounds, implicitBounds, INVALID_BOUNDS, parent
 
Fields inherited from class org.j3d.aviatrix3d.SceneGraphObject
alive, updateHandler, WRITE_TIMING_MSG
 
Fields inherited from interface org.j3d.aviatrix3d.PickableObject
COLLIDABLE_OBJECT, GENERAL_OBJECT, PROXIMITY_OBJECT, VISIBLE_OBJECT
 
Constructor Summary
TransformGroup()
          The default constructor
TransformGroup(javax.vecmath.Matrix4f trans)
          Construct a TransformGroup given a matrix.
 
Method Summary
 void getTransform(javax.vecmath.Matrix4d mat)
          Get the current local transformation value.
 void getTransform(javax.vecmath.Matrix4f mat)
          Get the current local transformation value.
protected  void recomputeBounds()
          Internal method to recalculate the implicit bounds of this Node.
 void setTransform(javax.vecmath.Matrix4f trans)
          Set the transform matrix for this class.
protected  void updateBounds()
          Update this node's bounds and then call the parent to update it's bounds.
 
Methods inherited from class org.j3d.aviatrix3d.Group
addChild, checkForCyclicChild, getAllChildren, getChild, getPickMask, getRenderableChild, indexOfChild, markBoundsDirty, numChildren, numRenderableChildren, pickBatch, pickSingle, removeAllChildren, removeChild, removeChild, requestBoundsUpdate, setBounds, setChild, setLive, setPickMask, setUpdateHandler
 
Methods inherited from class org.j3d.aviatrix3d.Node
boundsChanged, checkForCyclicParent, getBounds, getParent, removeParent, setParent
 
Methods inherited from class org.j3d.aviatrix3d.SceneGraphObject
dataChanged, getUserData, isLive, setUserData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransformGroup

public TransformGroup()
The default constructor


TransformGroup

public TransformGroup(javax.vecmath.Matrix4f trans)
Construct a TransformGroup given a matrix.

Parameters:
trans - The matrix to use for transformation
Method Detail

setTransform

public void setTransform(javax.vecmath.Matrix4f trans)
                  throws InvalidWriteTimingException
Set the transform matrix for this class.

Parameters:
trans - The matrix. Copy by value semantics.
Throws:
InvalidWriteTimingException - An attempt was made to write outside of the NodeUpdateListener callback method

getTransform

public void getTransform(javax.vecmath.Matrix4f mat)
Get the current local transformation value.


getTransform

public void getTransform(javax.vecmath.Matrix4d mat)
Get the current local transformation value.


recomputeBounds

protected void recomputeBounds()
Internal method to recalculate the implicit bounds of this Node. Overrides the group version to take into account the transform stack applied to each child.

Overrides:
recomputeBounds in class Group

updateBounds

protected void updateBounds()
Update this node's bounds and then call the parent to update it's bounds. Used to propogate bounds changes from the leaves of the tree to the root. A node implementation may decide when and where to tell the parent(s)s that updates are ready.

Overrides:
updateBounds in class Group

j3d.org Aviatrix3D

Latest Info from http://aviatrix3d.j3d.org/
Copyright © 2003 - j3d.org