Package javax.media.j3d
Class DirectionalLight
java.lang.Object
javax.media.j3d.SceneGraphObject
javax.media.j3d.Node
javax.media.j3d.Leaf
javax.media.j3d.Light
javax.media.j3d.DirectionalLight
A DirectionalLight node defines an oriented light with an origin at
infinity. It has the same attributes as a Light node, with the
addition of a directional vector to specify the direction in which the
light shines. A directional light has parallel light rays that travel
in one direction along the specified vector. Directional light contributes
to diffuse and specular reflections, which in turn depend on the
orientation of an object's surface but not its position. A directional
light does not contribute to ambient reflections.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Specifies that the Node allows access to its object's direction information.static final int
Specifies that the Node allows writing to its object's direction information.Fields inherited from class javax.media.j3d.Light
ALLOW_COLOR_READ, ALLOW_COLOR_WRITE, ALLOW_INFLUENCING_BOUNDS_READ, ALLOW_INFLUENCING_BOUNDS_WRITE, ALLOW_SCOPE_READ, ALLOW_SCOPE_WRITE, ALLOW_STATE_READ, ALLOW_STATE_WRITE
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_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a DirectionalLight node with default parameters.DirectionalLight
(boolean lightOn, javax.vecmath.Color3f color, javax.vecmath.Vector3f direction) Constructs and initializes a directional light.DirectionalLight
(javax.vecmath.Color3f color, javax.vecmath.Vector3f direction) Constructs and initializes a directional light. -
Method Summary
Modifier and TypeMethodDescriptioncloneNode
(boolean forceDuplicate) Used to create a new instance of the node.void
getDirection
(javax.vecmath.Vector3f direction) Gets this Light's current direction and places it in the parameter specified.void
setDirection
(float x, float y, float z) Set light direction.void
setDirection
(javax.vecmath.Vector3f direction) Set light direction.Methods inherited from class javax.media.j3d.Light
addScope, getAllScopes, getColor, getEnable, getInfluencingBoundingLeaf, getInfluencingBounds, getScope, indexOfScope, insertScope, numScopes, removeAllScopes, removeScope, removeScope, setColor, setEnable, setInfluencingBoundingLeaf, setInfluencingBounds, setScope, updateNodeReferences
Methods inherited from class javax.media.j3d.Node
cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString
-
Field Details
-
ALLOW_DIRECTION_READ
public static final int ALLOW_DIRECTION_READSpecifies that the Node allows access to its object's direction information.- See Also:
-
ALLOW_DIRECTION_WRITE
public static final int ALLOW_DIRECTION_WRITESpecifies that the Node allows writing to its object's direction information.- See Also:
-
-
Constructor Details
-
DirectionalLight
public DirectionalLight()Constructs a DirectionalLight node with default parameters. The default values are as follows:-
direction : (0,0,-1)
-
DirectionalLight
public DirectionalLight(javax.vecmath.Color3f color, javax.vecmath.Vector3f direction) Constructs and initializes a directional light.- Parameters:
color
- the color of the light sourcedirection
- the direction vector pointing from the light to the object
-
DirectionalLight
public DirectionalLight(boolean lightOn, javax.vecmath.Color3f color, javax.vecmath.Vector3f direction) Constructs and initializes a directional light.- Parameters:
lightOn
- flag indicating whether this light is on or offcolor
- the color of the light sourcedirection
- the direction vector pointing from the light to the object
-
-
Method Details
-
setDirection
public void setDirection(javax.vecmath.Vector3f direction) Set light direction.- Parameters:
direction
- the new direction- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
setDirection
public void setDirection(float x, float y, float z) Set light direction.- Parameters:
x
- the new X directiony
- the new Y directionz
- the new Z direction- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
getDirection
public void getDirection(javax.vecmath.Vector3f direction) Gets this Light's current direction and places it in the parameter specified.- Parameters:
direction
- the vector that will receive this node's direction- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
cloneNode
Used to create a new instance of the node. This routine is called bycloneTree
to duplicate the current node.
-