Xj3D VRML/X3D Code API

org.web3d.vrml.renderer.common.nodes
Class BaseComponentGeometryNode

java.lang.Object
  extended byorg.web3d.vrml.renderer.common.nodes.AbstractNode
      extended byorg.web3d.vrml.renderer.common.nodes.BaseComponentGeometryNode
All Implemented Interfaces:
FrameStateListener, VRMLComponentGeometryNodeType, VRMLGeometryNodeType, VRMLNode, VRMLNodeComponentListener, VRMLNodeType
Direct Known Subclasses:
BaseIndexedGeometryNode, BaseIndexedTriangleGeometryNode, BaseTriangleGeometryNode, J3DComponentGeometryNode

public abstract class BaseComponentGeometryNode
extends AbstractNode
implements VRMLComponentGeometryNodeType, VRMLNodeComponentListener

An abstract implementation of any node that uses component nodes to provide coordinate, normal and texture information.

Version:
$Revision: 1.14 $
Author:
Justin Couch

Field Summary
protected static int ATTRIB_CHANGED
          Flag value for the changeFlags color node change
protected static int ATTRIB_INDEX_CHANGED
          Flag value for the changeFlags attrib index change
protected static java.lang.String ATTRIB_NODE_MSG
          Message for when the node in setValue() is not a vertex attribute
protected static java.lang.String ATTRIB_PROTO_MSG
          Message for when the proto is not a vertex attribute
protected static java.lang.String BAD_NODE_MSG
          Message for when the node in setValue() is not a Geometry
protected static java.lang.String BAD_PROTO_MSG
          Message for when the proto is not a Geometry
protected  int changeFlags
          Bit-flags to work out what has changed during the last frame
protected static java.lang.String COLOR_NODE_MSG
          Message for when the node in setValue() is not a Color
protected static java.lang.String COLOR_PROTO_MSG
          Message for when the proto is not a Color
protected static int COLORS_CHANGED
          Flag value for the changeFlags color node change
protected static int COLORS_INDEX_CHANGED
          Flag value for the changeFlags color index change
protected static java.lang.String COORD_NODE_MSG
          Message for when the node in setValue() is not a Coord
protected static java.lang.String COORD_PROTO_MSG
          Message for when the proto is not a Coord
protected static int COORDS_CHANGED
          Flag value for the changeFlags coordinate node change
protected static int COORDS_INDEX_CHANGED
          Flag value for the changeFlags coordinate index change
protected static int FIELD_ATTRIBS
          Index of the attribs exposedField
protected static int FIELD_CCW
          Index of the ccw field
protected static int FIELD_COLOR
          Index of the color exposedField
protected static int FIELD_COLORPERVERTEX
          Index of the colorPerVertex field
protected static int FIELD_COORD
          Index of the coord exposedField
protected static int FIELD_FOG_COORD
          Index of the fogCoord exposedField
protected static int FIELD_NORMAL
          Index of the normal exposedField
protected static int FIELD_NORMALPERVERTEX
          Index of the normalPerVertex field
protected static int FIELD_SOLID
          Index of the solid field
protected static int FIELD_TEXCOORD
          Index of the texture exposedField
protected static int FOG_CHANGED
          Flag value for the changeFlags color node change
protected static int FOG_INDEX_CHANGED
          Flag value for the changeFlags fog index change
protected static java.lang.String FOG_NODE_MSG
          Message for when the node in setValue() is not a FogCoordinate
protected static java.lang.String FOG_PROTO_MSG
          Message for when the proto is not a FogCoordinate
protected static int LAST_GEOMETRY_INDEX
          The last field index used by this class
protected  boolean localColors
          Should local color node be used for diffuse lighting
protected  java.util.ArrayList localColorsListeners
          The list of listeners for localColor changes
protected static int NORMALS_CHANGED
          Flag value for the changeFlags normal node change
protected static int NORMALS_INDEX_CHANGED
          Flag value for the changeFlags normal index change
protected  VRMLProtoInstance pColor
          Proto version of the color
protected  VRMLProtoInstance pCoord
          Proto version of the coord
protected  VRMLProtoInstance pFogCoord
          Proto version of the fogCoord
protected  VRMLProtoInstance pNormal
          Proto version of the normal
protected  VRMLProtoInstance pTexCoord
          Proto version of the texCoord
protected static int TEXCOORDS_CHANGED
          Flag value for the changeFlags texCoords node change
protected static int TEXCOORDS_INDEX_CHANGED
          Flag value for the changeFlags texCoords index change
protected  java.util.ArrayList vfAttribs
          List of per-vertex attribute nodes provided
protected  boolean vfCcw
          field SFBool ccw TRUE
protected  VRMLColorNodeType vfColor
          exposedField SFNode color
protected  boolean vfColorPerVertex
          field SFBool colorPerVertex TRUE
protected  VRMLCoordinateNodeType vfCoord
          exposedField SFNode coord
protected  VRMLGeometricPropertyNodeType vfFogCoord
          exposedField SFNode fogCoord
protected  VRMLNormalNodeType vfNormal
          exposedField SFNode normal
protected  boolean vfNormalPerVertex
          field SFBool normalPerVertex TRUE
protected  boolean vfSolid
          field SFBool solid TRUE
protected  VRMLTextureCoordinateNodeType vfTexCoord
          exposedField SFNode texCoord
 
Fields inherited from class org.web3d.vrml.renderer.common.nodes.AbstractNode
errorReporter, FIELD_METADATA, fieldData, hasChanged, INIT_ONLY_WRITE_MSG, inSetup, isDEF, isStatic, LAST_NODE_INDEX, METADATA_NODE_MSG, METADATA_PROTO_MSG, nodeName, pMetadata, refCount, stateManager, vfMetadata, vrmlMajorVersion, vrmlMinorVersion
 
Constructor Summary
protected BaseComponentGeometryNode(java.lang.String name)
          Construct a default instance of this class with the bind flag set to false and no time information set (effective value of zero).
 
Method Summary
 void addLocalColorsListener(LocalColorsListener l)
          Add a listener for local color changes.
 void addTexCoordGenModeChanged(TexCoordGenModeListener l)
          Add a listener for texture coordinate generation mode changes.
protected  void copy(VRMLComponentGeometryNodeType node)
          Set the fields of the binadble node that has the fields set based on the fields of the passed in node.
protected  void fireLocalColorsChanged(boolean enabled)
          Send the localColorsChanged event to LocalColorsListeners
 VRMLNodeType[] getComponents()
          Get the components that compose a geometry object.
 VRMLFieldData getFieldValue(int index)
          Get the value of a field.
 int getNumSets()
          Get the number of texture coordinate sets contained by this node
 int getPrimaryType()
          Get the primary type of this node.
 java.lang.String getTexCoordGenMode(int setNum)
          Get the texture coordinate generation mode.
 boolean hasColorPerVertex()
          Check to see if the colors are per vertex or per face.
 boolean hasLocalColors()
          Specified whether this node has color information.
 boolean hasNormalPerVertex()
          Check to see if the normals are per vertex or per face.
 boolean isCCW()
          Get the value of the CCW field.
 boolean isLightingEnabled()
          Specifies whether this node requires lighting.
 boolean isSolid()
          Get the value of the solid field.
 void removeLocalColorsListener(LocalColorsListener l)
          Remove a listener for local color changes.
 void removeTexCoordGenModeChanged(TexCoordGenModeListener l)
          Remove a listener for texture coordinate generation mode changes.
 void sendRoute(double time, int srcIndex, VRMLNodeType destNode, int destIndex)
          Send a routed value from this node to the given destination node.
protected  void setColorNode(VRMLColorNodeType node)
          Notification of the color node being set.
 void setComponent(VRMLNodeType comp)
          Set a component that composes part of a geometry object.
 void setComponents(VRMLNodeType[] comps)
          Set the components the compose a geometry object.
protected  void setCoordinateNode(VRMLCoordinateNodeType node)
          Notification of the coordinate node being set.
protected  void setFogCoordinateNode(VRMLGeometricPropertyNodeType node)
          Notification of the coordinate node being set.
protected  void setNormalNode(VRMLNormalNodeType node)
          Notification of the normal node being set.
protected  void setTexCoordNode(VRMLTextureCoordinateNodeType node)
          Notification of the texture coordinate node being set.
 void setupFinished()
          Notification that the construction phase of this node has finished.
 void setValue(int index, boolean value)
          Set the value of the field at the given index as an boolean.
 void setValue(int index, VRMLNodeType child)
          Set the value of the field at the given index as a node.
 
Methods inherited from class org.web3d.vrml.renderer.common.nodes.AbstractNode
addNodeListener, allEventsComplete, checkNodeType, checkSecondaryType, checkSecondaryType, fireFieldChanged, getMetadataObject, getNodeFieldIndices, getRefCount, getSecondaryType, getUserData, getVRMLNodeName, hasFieldChanged, isDEF, isSetupFinished, notifyExternProtoLoaded, removeNodeListener, setDEF, setErrorReporter, setFrameStateManager, setMetadataObject, setUserData, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setVersion, updateRefCount
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.web3d.vrml.nodes.VRMLNodeType
addNodeListener, getMetadataObject, getRefCount, hasFieldChanged, isSetupFinished, notifyExternProtoLoaded, removeNodeListener, setDEF, setFrameStateManager, setMetadataObject, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, updateRefCount
 
Methods inherited from interface org.web3d.vrml.lang.VRMLNode
getFieldDeclaration, getFieldIndex, getNodeFieldIndices, getNumFields, getSecondaryType, getUserData, getVRMLNodeName, isDEF, setErrorReporter, setUserData, setVersion
 
Methods inherited from interface org.web3d.vrml.nodes.FrameStateListener
allEventsComplete
 
Methods inherited from interface org.web3d.vrml.nodes.VRMLNodeComponentListener
fieldChanged
 

Field Detail

FIELD_COORD

protected static final int FIELD_COORD
Index of the coord exposedField

See Also:
Constant Field Values

FIELD_COLOR

protected static final int FIELD_COLOR
Index of the color exposedField

See Also:
Constant Field Values

FIELD_NORMAL

protected static final int FIELD_NORMAL
Index of the normal exposedField

See Also:
Constant Field Values

FIELD_TEXCOORD

protected static final int FIELD_TEXCOORD
Index of the texture exposedField

See Also:
Constant Field Values

FIELD_SOLID

protected static final int FIELD_SOLID
Index of the solid field

See Also:
Constant Field Values

FIELD_CCW

protected static final int FIELD_CCW
Index of the ccw field

See Also:
Constant Field Values

FIELD_COLORPERVERTEX

protected static final int FIELD_COLORPERVERTEX
Index of the colorPerVertex field

See Also:
Constant Field Values

FIELD_NORMALPERVERTEX

protected static final int FIELD_NORMALPERVERTEX
Index of the normalPerVertex field

See Also:
Constant Field Values

FIELD_FOG_COORD

protected static final int FIELD_FOG_COORD
Index of the fogCoord exposedField

See Also:
Constant Field Values

FIELD_ATTRIBS

protected static final int FIELD_ATTRIBS
Index of the attribs exposedField

See Also:
Constant Field Values

LAST_GEOMETRY_INDEX

protected static final int LAST_GEOMETRY_INDEX
The last field index used by this class

See Also:
Constant Field Values

COORDS_CHANGED

protected static final int COORDS_CHANGED
Flag value for the changeFlags coordinate node change

See Also:
Constant Field Values

NORMALS_CHANGED

protected static final int NORMALS_CHANGED
Flag value for the changeFlags normal node change

See Also:
Constant Field Values

TEXCOORDS_CHANGED

protected static final int TEXCOORDS_CHANGED
Flag value for the changeFlags texCoords node change

See Also:
Constant Field Values

COLORS_CHANGED

protected static final int COLORS_CHANGED
Flag value for the changeFlags color node change

See Also:
Constant Field Values

FOG_CHANGED

protected static final int FOG_CHANGED
Flag value for the changeFlags color node change

See Also:
Constant Field Values

ATTRIB_CHANGED

protected static final int ATTRIB_CHANGED
Flag value for the changeFlags color node change

See Also:
Constant Field Values

COORDS_INDEX_CHANGED

protected static final int COORDS_INDEX_CHANGED
Flag value for the changeFlags coordinate index change

See Also:
Constant Field Values

NORMALS_INDEX_CHANGED

protected static final int NORMALS_INDEX_CHANGED
Flag value for the changeFlags normal index change

See Also:
Constant Field Values

TEXCOORDS_INDEX_CHANGED

protected static final int TEXCOORDS_INDEX_CHANGED
Flag value for the changeFlags texCoords index change

See Also:
Constant Field Values

COLORS_INDEX_CHANGED

protected static final int COLORS_INDEX_CHANGED
Flag value for the changeFlags color index change

See Also:
Constant Field Values

FOG_INDEX_CHANGED

protected static final int FOG_INDEX_CHANGED
Flag value for the changeFlags fog index change

See Also:
Constant Field Values

ATTRIB_INDEX_CHANGED

protected static final int ATTRIB_INDEX_CHANGED
Flag value for the changeFlags attrib index change

See Also:
Constant Field Values

BAD_PROTO_MSG

protected static final java.lang.String BAD_PROTO_MSG
Message for when the proto is not a Geometry

See Also:
Constant Field Values

BAD_NODE_MSG

protected static final java.lang.String BAD_NODE_MSG
Message for when the node in setValue() is not a Geometry

See Also:
Constant Field Values

COORD_PROTO_MSG

protected static final java.lang.String COORD_PROTO_MSG
Message for when the proto is not a Coord

See Also:
Constant Field Values

COORD_NODE_MSG

protected static final java.lang.String COORD_NODE_MSG
Message for when the node in setValue() is not a Coord

See Also:
Constant Field Values

COLOR_PROTO_MSG

protected static final java.lang.String COLOR_PROTO_MSG
Message for when the proto is not a Color

See Also:
Constant Field Values

COLOR_NODE_MSG

protected static final java.lang.String COLOR_NODE_MSG
Message for when the node in setValue() is not a Color

See Also:
Constant Field Values

FOG_PROTO_MSG

protected static final java.lang.String FOG_PROTO_MSG
Message for when the proto is not a FogCoordinate

See Also:
Constant Field Values

FOG_NODE_MSG

protected static final java.lang.String FOG_NODE_MSG
Message for when the node in setValue() is not a FogCoordinate

See Also:
Constant Field Values

ATTRIB_PROTO_MSG

protected static final java.lang.String ATTRIB_PROTO_MSG
Message for when the proto is not a vertex attribute

See Also:
Constant Field Values

ATTRIB_NODE_MSG

protected static final java.lang.String ATTRIB_NODE_MSG
Message for when the node in setValue() is not a vertex attribute

See Also:
Constant Field Values

pColor

protected VRMLProtoInstance pColor
Proto version of the color


vfColor

protected VRMLColorNodeType vfColor
exposedField SFNode color


pCoord

protected VRMLProtoInstance pCoord
Proto version of the coord


vfCoord

protected VRMLCoordinateNodeType vfCoord
exposedField SFNode coord


pNormal

protected VRMLProtoInstance pNormal
Proto version of the normal


vfNormal

protected VRMLNormalNodeType vfNormal
exposedField SFNode normal


pTexCoord

protected VRMLProtoInstance pTexCoord
Proto version of the texCoord


vfTexCoord

protected VRMLTextureCoordinateNodeType vfTexCoord
exposedField SFNode texCoord


pFogCoord

protected VRMLProtoInstance pFogCoord
Proto version of the fogCoord


vfFogCoord

protected VRMLGeometricPropertyNodeType vfFogCoord
exposedField SFNode fogCoord


vfColorPerVertex

protected boolean vfColorPerVertex
field SFBool colorPerVertex TRUE


vfNormalPerVertex

protected boolean vfNormalPerVertex
field SFBool normalPerVertex TRUE


vfSolid

protected boolean vfSolid
field SFBool solid TRUE


vfCcw

protected boolean vfCcw
field SFBool ccw TRUE


changeFlags

protected int changeFlags
Bit-flags to work out what has changed during the last frame


vfAttribs

protected java.util.ArrayList vfAttribs
List of per-vertex attribute nodes provided


localColors

protected boolean localColors
Should local color node be used for diffuse lighting


localColorsListeners

protected java.util.ArrayList localColorsListeners
The list of listeners for localColor changes

Constructor Detail

BaseComponentGeometryNode

protected BaseComponentGeometryNode(java.lang.String name)
Construct a default instance of this class with the bind flag set to false and no time information set (effective value of zero).

Parameters:
name - The name of the type of node
Method Detail

hasLocalColors

public boolean hasLocalColors()
Specified whether this node has color information. If so, then it will be used for diffuse terms instead of materials.

Specified by:
hasLocalColors in interface VRMLGeometryNodeType
Returns:
true Use local color information for diffuse lighting.

addLocalColorsListener

public void addLocalColorsListener(LocalColorsListener l)
Add a listener for local color changes. Nulls and duplicates will be ignored.

Specified by:
addLocalColorsListener in interface VRMLGeometryNodeType
Parameters:
l - The listener.

removeLocalColorsListener

public void removeLocalColorsListener(LocalColorsListener l)
Remove a listener for local color changes. Nulls will be ignored.

Specified by:
removeLocalColorsListener in interface VRMLGeometryNodeType
Parameters:
l - The listener.

addTexCoordGenModeChanged

public void addTexCoordGenModeChanged(TexCoordGenModeListener l)
Add a listener for texture coordinate generation mode changes. Nulls and duplicates will be ignored.

Specified by:
addTexCoordGenModeChanged in interface VRMLGeometryNodeType
Parameters:
l - The listener.

removeTexCoordGenModeChanged

public void removeTexCoordGenModeChanged(TexCoordGenModeListener l)
Remove a listener for texture coordinate generation mode changes. Nulls will be ignored.

Specified by:
removeTexCoordGenModeChanged in interface VRMLGeometryNodeType
Parameters:
l - The listener.

getNumSets

public int getNumSets()
Get the number of texture coordinate sets contained by this node

Specified by:
getNumSets in interface VRMLGeometryNodeType
Returns:
the number of texture coordinate sets

getTexCoordGenMode

public java.lang.String getTexCoordGenMode(int setNum)
Get the texture coordinate generation mode. NULL is returned if the texture coordinates are not generated.

Specified by:
getTexCoordGenMode in interface VRMLGeometryNodeType
Parameters:
setNum - The set which this tex gen mode refers
Returns:
The mode or NULL

copy

protected void copy(VRMLComponentGeometryNodeType node)
Set the fields of the binadble node that has the fields set based on the fields of the passed in node. This directly copies the bind state, so could cause some interesting problems. Not sure what we should do with this currently.

Parameters:
node - The bindable node to copy info from

isSolid

public boolean isSolid()
Get the value of the solid field.

Specified by:
isSolid in interface VRMLGeometryNodeType
Returns:
true This object is solid (ie single sided)

isCCW

public boolean isCCW()
Get the value of the CCW field.

Specified by:
isCCW in interface VRMLGeometryNodeType
Returns:
true Vertices are declared in counter-clockwise order

isLightingEnabled

public boolean isLightingEnabled()
Specifies whether this node requires lighting.

Specified by:
isLightingEnabled in interface VRMLGeometryNodeType
Returns:
Should lighting be enabled

getComponents

public VRMLNodeType[] getComponents()
Get the components that compose a geometry object.

This method will return either VRMLGeometricPropertyNodeType or VRMLProtoInstance. With a proto you can use getImplementationNode to get a node conforming to the VRMLGeometricPropertyNodeType interface.

If there are no components then a zero length array will be returned.

Specified by:
getComponents in interface VRMLComponentGeometryNodeType
Returns:
VRMLNodeType[] The components

setComponents

public void setComponents(VRMLNodeType[] comps)
                   throws InvalidFieldValueException
Set the components the compose a geometry object. To clear all the components, pass a null parameter.

Specified by:
setComponents in interface VRMLComponentGeometryNodeType
Parameters:
comps - An array of geometric properties
Throws:
InvalidFieldValueException - The node is not a known or supported field for this node

setComponent

public void setComponent(VRMLNodeType comp)
                  throws InvalidFieldValueException
Set a component that composes part of a geometry object.

Specified by:
setComponent in interface VRMLComponentGeometryNodeType
Parameters:
comp - A geometric property
Throws:
InvalidFieldValueException - The node is not a known or supported field for this node

hasColorPerVertex

public boolean hasColorPerVertex()
Check to see if the colors are per vertex or per face.

Specified by:
hasColorPerVertex in interface VRMLComponentGeometryNodeType
Returns:
true The colors are per vertex

hasNormalPerVertex

public boolean hasNormalPerVertex()
Check to see if the normals are per vertex or per face.

Specified by:
hasNormalPerVertex in interface VRMLComponentGeometryNodeType
Returns:
true The normals are per vertex

getPrimaryType

public int getPrimaryType()
Get the primary type of this node. Replaces the instanceof mechanism for use in switch statements.

Specified by:
getPrimaryType in interface VRMLNode
Returns:
The primary type

setupFinished

public void setupFinished()
Notification that the construction phase of this node has finished. If the node would like to do any internal processing, such as setting up geometry, then go for it now.

Specified by:
setupFinished in interface VRMLNodeType
Overrides:
setupFinished in class AbstractNode

getFieldValue

public VRMLFieldData getFieldValue(int index)
                            throws InvalidFieldException
Get the value of a field. If the field is a primitive type, it will return a class representing the value. For arrays or nodes it will return the instance directly.

Specified by:
getFieldValue in interface VRMLNodeType
Overrides:
getFieldValue in class AbstractNode
Parameters:
index - The index of the field to change.
Returns:
The class representing the field value
Throws:
InvalidFieldException - The field index is not known

sendRoute

public void sendRoute(double time,
                      int srcIndex,
                      VRMLNodeType destNode,
                      int destIndex)
Send a routed value from this node to the given destination node. The route should use the appropriate setValue() method of the destination node. It should not attempt to cast the node up to a higher level. Routing should also follow the standard rules for the loop breaking and other appropriate rules for the specification.

Specified by:
sendRoute in interface VRMLNodeType
Overrides:
sendRoute in class AbstractNode
Parameters:
time - The time that this route occurred (not necessarily epoch time. Should be treated as a relative value only)
srcIndex - The index of the field in this node that the value should be sent from
destNode - The node reference that we will be sending the value to
destIndex - The index of the field in the destination node that the value should be sent to.

setValue

public void setValue(int index,
                     boolean value)
              throws InvalidFieldException,
                     InvalidFieldValueException
Set the value of the field at the given index as an boolean. This would be used to set SFBool field types.

Specified by:
setValue in interface VRMLNodeType
Overrides:
setValue in class AbstractNode
Parameters:
index - The index of destination field to set
value - The new value to use for the node
Throws:
InvalidFieldException - The field index is not know
InvalidFieldValueException - The value provided is out of range for the field type.

setValue

public void setValue(int index,
                     VRMLNodeType child)
              throws InvalidFieldException,
                     InvalidFieldValueException
Set the value of the field at the given index as a node. This would be used to set SFNode field types.

Specified by:
setValue in interface VRMLNodeType
Overrides:
setValue in class AbstractNode
Parameters:
index - The index of destination field to set
child - The new value to use for the node
Throws:
InvalidFieldException - The field index is not known
InvalidFieldValueException - The node does not match the required type.

setCoordinateNode

protected void setCoordinateNode(VRMLCoordinateNodeType node)
Notification of the coordinate node being set. If the passed value is null then that clears the node. The node passed is the actual geometry, not any proto wrapper, that will have been previously stripped. The default implementation does nothing.

Parameters:
node - The node to use

setColorNode

protected void setColorNode(VRMLColorNodeType node)
Notification of the color node being set. If the passed value is null then that clears the node. The node passed is the actual color, not any proto wrapper, that will have been previously stripped. The default implementation does nothing.

Parameters:
node - The node to use

setNormalNode

protected void setNormalNode(VRMLNormalNodeType node)
Notification of the normal node being set. If the passed value is null then that clears the node. The node passed is the actual normal, not any proto wrapper, that will have been previously stripped. The default implementation does nothing.

Parameters:
node - The node to use

setTexCoordNode

protected void setTexCoordNode(VRMLTextureCoordinateNodeType node)
Notification of the texture coordinate node being set. If the passed value is null then that clears the node. The node passed is the actual texCoord, not any proto wrapper, that will have been previously stripped. The default implementation does nothing.

Parameters:
node - The node to use

setFogCoordinateNode

protected void setFogCoordinateNode(VRMLGeometricPropertyNodeType node)
Notification of the coordinate node being set. If the passed value is null then that clears the node. The node passed is the actual geometry, not any proto wrapper, that will have been previously stripped. The default implementation does nothing.

Parameters:
node - The node to use

fireLocalColorsChanged

protected void fireLocalColorsChanged(boolean enabled)
Send the localColorsChanged event to LocalColorsListeners

Parameters:
enabled - Whether local colors are used.

Xj3D VRML/X3D Code API

Copyright © 2001 - 2005 Web3D Consortium