javax.media.j3d
Class LinearFog

java.lang.Object
  extended by javax.media.j3d.SceneGraphObject
      extended by javax.media.j3d.Node
          extended by javax.media.j3d.Leaf
              extended by javax.media.j3d.Fog
                  extended by javax.media.j3d.LinearFog

public class LinearFog
extends Fog

The LinearFog leaf node defines fog distance parameters for linear fog. LinearFog extends the Fog node by adding a pair of distance values, in Z, at which the fog should start obscuring the scene and should maximally obscure the scene.

The front and back fog distances are defined in the local coordinate system of the node, but the actual fog equation will ideally take place in eye coordinates.

The linear fog blending factor, f, is computed as follows:

where:


Field Summary
static int ALLOW_DISTANCE_READ
          Specifies that this LinearFog node allows read access to its distance information.
static int ALLOW_DISTANCE_WRITE
          Specifies that this LinearFog node allows write access to its distance information.
 
Fields inherited from class javax.media.j3d.Fog
ALLOW_COLOR_READ, ALLOW_COLOR_WRITE, ALLOW_INFLUENCING_BOUNDS_READ, ALLOW_INFLUENCING_BOUNDS_WRITE, ALLOW_SCOPE_READ, ALLOW_SCOPE_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
LinearFog()
          Constructs a LinearFog node with default parameters.
LinearFog(javax.vecmath.Color3f color)
          Constructs a LinearFog node with the specified fog color.
LinearFog(javax.vecmath.Color3f color, double frontDistance, double backDistance)
          Constructs a LinearFog node with the specified fog color and distances.
LinearFog(float r, float g, float b)
          Constructs a LinearFog node with the specified fog color.
LinearFog(float r, float g, float b, double frontDistance, double backDistance)
          Constructs a LinearFog node with the specified fog color and distances.
 
Method Summary
 Node cloneNode(boolean forceDuplicate)
          Used to create a new instance of the node.
 double getBackDistance()
          Gets back distance for fog.
 double getFrontDistance()
          Gets front distance for fog.
 void setBackDistance(double backDistance)
          Sets back distance for fog.
 void setFrontDistance(double frontDistance)
          Sets front distance for fog.
 
Methods inherited from class javax.media.j3d.Fog
addScope, getAllScopes, getColor, getInfluencingBoundingLeaf, getInfluencingBounds, getScope, indexOfScope, insertScope, numScopes, removeAllScopes, removeScope, removeScope, setColor, setColor, 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, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ALLOW_DISTANCE_READ

public static final int ALLOW_DISTANCE_READ
Specifies that this LinearFog node allows read access to its distance information.

See Also:
Constant Field Values

ALLOW_DISTANCE_WRITE

public static final int ALLOW_DISTANCE_WRITE
Specifies that this LinearFog node allows write access to its distance information.

See Also:
Constant Field Values
Constructor Detail

LinearFog

public LinearFog()
Constructs a LinearFog node with default parameters. The default values are as follows:


LinearFog

public LinearFog(javax.vecmath.Color3f color)
Constructs a LinearFog node with the specified fog color.

Parameters:
color - the fog color

LinearFog

public LinearFog(javax.vecmath.Color3f color,
                 double frontDistance,
                 double backDistance)
Constructs a LinearFog node with the specified fog color and distances.

Parameters:
color - the fog color
frontDistance - the front distance for the fog
backDistance - the back distance for the fog

LinearFog

public LinearFog(float r,
                 float g,
                 float b)
Constructs a LinearFog node with the specified fog color.

Parameters:
r - the red component of the fog color
g - the green component of the fog color
b - the blue component of the fog color

LinearFog

public LinearFog(float r,
                 float g,
                 float b,
                 double frontDistance,
                 double backDistance)
Constructs a LinearFog node with the specified fog color and distances.

Parameters:
r - the red component of the fog color
g - the green component of the fog color
b - the blue component of the fog color
frontDistance - the front distance for the fog
backDistance - the back distance for the fog
Method Detail

setFrontDistance

public void setFrontDistance(double frontDistance)
Sets front distance for fog.

Parameters:
frontDistance - the distance at which fog starts obscuring objects
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getFrontDistance

public double getFrontDistance()
Gets front distance for fog.

Returns:
the distance at which fog starts obscuring objects
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setBackDistance

public void setBackDistance(double backDistance)
Sets back distance for fog.

Parameters:
backDistance - the distance at which fog totally obscurs objects
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getBackDistance

public double getBackDistance()
Gets back distance for fog.

Returns:
the distance at which fog totally obscurs objects
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

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)