org.xith3d.scenegraph
Class OrderedGroup
java.lang.Object
org.xith3d.scenegraph.SceneGraphObject
org.xith3d.scenegraph.Node
org.xith3d.scenegraph.GroupNode
org.xith3d.scenegraph.Group
org.xith3d.scenegraph.OrderedGroup
- All Implemented Interfaces:
- org.jagatoo.datatypes.NamableObject, org.jagatoo.datatypes.NamedObject, org.openmali.spatial.SpatialNode
- Direct Known Subclasses:
- DecalGroup
public class OrderedGroup
- extends Group
OrderedGroup node guarantees that its children will be rendered
in their index order.
Note that actual order of shape rendering can be affected by setting
TransparencyAttributes in appearance.
1. All transparent shapes are drawn in a seperate pass and drawn back
to front ignoring ordering in ordered groups.
2. If a shape is transparent, but marked with setSortEnabled(false) then
the shape will be drawn in the opaque pass without respect to its back-to-front order.
3. If a shape is transparent, marked for non-sorting with setSortEnabled(false) and a child in an
ordered group then the ordering of the shapes will be first by ordered group
and second by standard rendering attributes.
- See Also:
TransparencyAttributes.setSortEnabled(boolean),
TransparencyAttributes.setEnabled(boolean)
|
Constructor Summary |
OrderedGroup()
Constructs a new OrderedGroup object. |
| Methods inherited from class org.xith3d.scenegraph.Group |
moveTo |
| Methods inherited from class org.xith3d.scenegraph.GroupNode |
absorbDetails, addChild, addChild, checkChild, dump, dump, ensureCapacity, expandBounds, findAll, findAll, findFirst, findFirst, freeOpenGLResources, getChild, getChildren, getChildren, getClipper, getPickHost, getScissorRect, getTotalNumChildren, getTotalNumShapes, indexOf, isPickHost, mergeInheritedClipper, mergeInheritedNodes, mergeInheritedScissorRect, numChildren, removeAllChildren, removeChild, removeChild, setBoundsDirty, setBoundsDirtyUpward, setChild, setClipper, setPickHost, setPickHost, setScissorRect, setShowBounds, sharedCopy, sharedCopy, traverse, unmergeInheritedFog, unmergeInheritedLight, unmergeInheritedNodes, updateBounds, updateBoundsCheap |
| Methods inherited from class org.xith3d.scenegraph.Node |
cloneNode, detach, duplicateNode, freeOpenGLResources, getBounds, getBoundsAutoCompute, getBoundsType, getBoundsTypeHint, getDefaultPickable, getIndentString, getInheritedNodeAttributes, getModListener, getOrderedChild, getOrderedState, getParent, getRoot, getShadowAttachment, getShowBounds, getTransformGroup, getTreeCell, getWorldBounds, getWorldTransform, getWorldTransform, isBillboard, isIgnoreBounds, isOccluder, isPickable, isRenderable, isUpdatableNode, popGlobalIgnoreBounds, printBounds, pushGlobalIgnoreBounds, setBounds, setBoundsAutoCompute, setBoundsTypeHint, setDefaultPickable, setGlobalIgnoreBounds, setIgnoreBounds, setIsOccluder, setModListener, setOrderedChild, setParent, setPickable, setPickableRecursive, setPickableRecursive, setRenderable, setShadowAttachment, setShowBounds, setTransformGroup, setTreeCell, updateOrderedChild, updateTransformGroup, updateWorldTransform |
| Methods inherited from class org.xith3d.scenegraph.SceneGraphObject |
getName, getUserData, getUserData, getUserDataMap, isLive, setLive, setName, setUserData, setUserData, setUserDataRecursive, setUserDataRecursive, toString |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
OrderedGroup
public OrderedGroup()
- Constructs a new OrderedGroup object.
allocateOrderedId
protected long allocateOrderedId()
newInstance
protected OrderedGroup newInstance()
-
- Overrides:
newInstance in class Group
- Returns:
- a new instance of this class. This is invoked by the sharedCopy() method.
- See Also:
GroupNode.sharedCopy()
traverse
public boolean traverse(DetailedTraversalCallback callback)
- Traverses the scenegraph from this node on.
If this Node is a Group it will recusively run through each child.
- Overrides:
traverse in class Group
- Parameters:
callback - the listener is notified of any traversed Node on the way
- Returns:
- if false, the whole traversal will stop