javax.media.j3d
Class ColorInterpolator
java.lang.Object
|
+--javax.media.j3d.SceneGraphObject
|
+--javax.media.j3d.Node
|
+--javax.media.j3d.Leaf
|
+--javax.media.j3d.Behavior
|
+--javax.media.j3d.Interpolator
|
+--javax.media.j3d.ColorInterpolator
- public class ColorInterpolator
- extends Interpolator
Color interpolation behavior. This class defines a behavior
that modifies the diffuse color of its target material object by linearly
interpolating between a pair of specified colors (using the value
generated by the specified Alpha object).
Fields inherited from class javax.media.j3d.Node |
ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING |
Method Summary |
Node |
cloneNode(boolean forceDuplicate)
Used to create a new instance of the node. |
void |
getEndColor(Color3f color)
This method retrieves this interpolator's endColor. |
void |
getStartColor(Color3f color)
This method retrieves this interpolator's startColor. |
Material |
getTarget()
This method retrieves this interpolator's target material
component object. |
void |
processStimulus(java.util.Enumeration criteria)
This method is invoked by the behavior scheduler every frame. |
void |
setEndColor(Color3f color)
This method sets the endColor for this interpolator. |
void |
setStartColor(Color3f color)
This method sets the startColor for this interpolator. |
void |
setTarget(Material target)
This method sets the target material component object for
this interpolator. |
void |
updateNodeReferences(NodeReferenceTable referenceTable)
Callback used to allow a node to check if any scene graph objects
referenced
by that node have been duplicated via a call to cloneTree . |
Methods inherited from class javax.media.j3d.Node |
cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ColorInterpolator
public ColorInterpolator(Alpha alpha,
Material target)
- Constructs a trivial color interpolator with a specified target,
a starting color of black, and an ending color of white.
- Parameters:
alpha
- the alpha object for this interpolatortarget
- the material component object whose diffuse
color is affected by this color interpolator
ColorInterpolator
public ColorInterpolator(Alpha alpha,
Material target,
Color3f startColor,
Color3f endColor)
- Constructs a color interpolator with the specified target,
starting color, and ending color.
- Parameters:
alpha
- the alpha object for this interpolatortarget
- the material component object whose diffuse
color is affected by this color interpolatorstartColor
- the starting colorendColor
- the ending color
setStartColor
public void setStartColor(Color3f color)
- This method sets the startColor for this interpolator.
- Parameters:
color
- the new start color
getStartColor
public void getStartColor(Color3f color)
- This method retrieves this interpolator's startColor.
- Parameters:
color
- the vector that will receive the interpolator's start color
setEndColor
public void setEndColor(Color3f color)
- This method sets the endColor for this interpolator.
- Parameters:
color
- the new end color
getEndColor
public void getEndColor(Color3f color)
- This method retrieves this interpolator's endColor.
- Parameters:
color
- the vector that will receive the interpolator's end color
setTarget
public void setTarget(Material target)
- This method sets the target material component object for
this interpolator.
- Parameters:
target
- the material component object whose diffuse
color is affected by this color interpolator
getTarget
public Material getTarget()
- This method retrieves this interpolator's target material
component object.
- Returns:
- the interpolator's target material component object
processStimulus
public void processStimulus(java.util.Enumeration criteria)
- This method is invoked by the behavior scheduler every frame.
It maps the alpha value that corresponds to the current time
into a color value and updates the diffuse color of the
specified target Material object with this new color value.
- Overrides:
processStimulus
in class Behavior
- Parameters:
criteria
- an enumeration of the criteria that caused the
stimulus
cloneNode
public Node cloneNode(boolean forceDuplicate)
- Used to create a new instance of the node. This routine is called
by
cloneTree
to duplicate the current node.
- Overrides:
cloneNode
in class Node
- Parameters:
forceDuplicate
- when set to true
, causes the
duplicateOnCloneTree
flag to be ignored. When
false
, the value of each node's
duplicateOnCloneTree
variable determines whether
NodeComponent data is duplicated or copied.- See Also:
Node.cloneTree()
,
Node.cloneNode(boolean)
,
Node.duplicateNode(javax.media.j3d.Node, boolean)
,
NodeComponent.setDuplicateOnCloneTree(boolean)
updateNodeReferences
public void updateNodeReferences(NodeReferenceTable referenceTable)
- Callback used to allow a node to check if any scene graph objects
referenced
by that node have been duplicated via a call to
cloneTree
.
This method is called by cloneTree
after all nodes in
the sub-graph have been duplicated. The cloned Leaf node's method
will be called and the Leaf node can then look up any object references
by using the getNewObjectReference
method found in the
NodeReferenceTable
object. If a match is found, a
reference to the corresponding object in the newly cloned sub-graph
is returned. If no corresponding reference is found, either a
DanglingReferenceException is thrown or a reference to the original
object is returned depending on the value of the
allowDanglingReferences
parameter passed in the
cloneTree
call.
NOTE: Applications should not call this method directly.
It should only be called by the cloneTree method.
- Overrides:
updateNodeReferences
in class Behavior
- Parameters:
referenceTable
- a NodeReferenceTableObject that contains the
getNewObjectReference
method needed to search for
new object instances.- See Also:
NodeReferenceTable
,
Node.cloneTree()
,
DanglingReferenceException