public class LinearFog extends Fog
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:
f = (backDistance - z) / (backDistance - frontDistance)
z is the distance from the viewpoint.frontDistance is the distance at which fog starts obscuring objects.backDistance is the distance at which fog totally obscurs objects.
| Modifier and Type | Field and Description |
|---|---|
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.
|
private static int[] |
readCapabilities |
ALLOW_COLOR_READ, ALLOW_COLOR_WRITE, ALLOW_INFLUENCING_BOUNDS_READ, ALLOW_INFLUENCING_BOUNDS_WRITE, ALLOW_SCOPE_READ, ALLOW_SCOPE_WRITEALLOW_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_REPORTINGnodeHashtable, retained| Constructor and Description |
|---|
LinearFog()
Constructs a LinearFog node with default parameters.
|
LinearFog(Color3f color)
Constructs a LinearFog node with the specified fog color.
|
LinearFog(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.
|
| Modifier and Type | Method and Description |
|---|---|
Node |
cloneNode(boolean forceDuplicate)
Used to create a new instance of the node.
|
(package private) void |
createRetained()
Creates the retained mode LinearFogRetained object that this
LinearFog node will point to.
|
(package private) void |
duplicateAttributes(Node originalNode,
boolean forceDuplicate)
Copies all LinearFog information from
originalNode into
the current 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.
|
addScope, getAllScopes, getColor, getInfluencingBoundingLeaf, getInfluencingBounds, getScope, indexOfScope, insertScope, numScopes, removeAllScopes, removeScope, removeScope, setColor, setColor, setInfluencingBoundingLeaf, setInfluencingBounds, setScope, updateNodeReferencescheckDuplicateNode, checkForCycle, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickablecapabilityBitsEmpty, checkForLiveOrCompiled, clearCapability, clearCapabilityIsFrequent, clearLive, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getNamePrefix, getNodeComponent, getUserData, isCompiled, isLive, isLiveOrCompiled, setCapability, setCapabilityIsFrequent, setCompiled, setDefaultReadCapabilities, setLive, setName, setUserData, toStringpublic static final int ALLOW_DISTANCE_READ
public static final int ALLOW_DISTANCE_WRITE
private static final int[] readCapabilities
public LinearFog()
public LinearFog(Color3f color)
color - the fog colorpublic LinearFog(Color3f color, double frontDistance, double backDistance)
color - the fog colorfrontDistance - the front distance for the fogbackDistance - the back distance for the fogpublic LinearFog(float r,
float g,
float b)
r - the red component of the fog colorg - the green component of the fog colorb - the blue component of the fog colorpublic LinearFog(float r,
float g,
float b,
double frontDistance,
double backDistance)
r - the red component of the fog colorg - the green component of the fog colorb - the blue component of the fog colorfrontDistance - the front distance for the fogbackDistance - the back distance for the fogpublic void setFrontDistance(double frontDistance)
frontDistance - the distance at which fog starts obscuring objectsCapabilityNotSetException - if appropriate capability is
not set and this object is part of live or compiled scene graphpublic double getFrontDistance()
CapabilityNotSetException - if appropriate capability is
not set and this object is part of live or compiled scene graphpublic void setBackDistance(double backDistance)
backDistance - the distance at which fog totally obscurs objectsCapabilityNotSetException - if appropriate capability is
not set and this object is part of live or compiled scene graphpublic double getBackDistance()
CapabilityNotSetException - if appropriate capability is
not set and this object is part of live or compiled scene graphvoid createRetained()
createRetained in class SceneGraphObjectpublic Node cloneNode(boolean forceDuplicate)
cloneTree to duplicate the current node.cloneNode in class NodeforceDuplicate - 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.Node.cloneTree(),
Node.cloneNode(boolean),
Node.duplicateNode(javax.media.j3d.Node, boolean),
NodeComponent.setDuplicateOnCloneTree(boolean)void duplicateAttributes(Node originalNode, boolean forceDuplicate)
originalNode into
the current node. This method is called from the
cloneNode method which is, in turn, called by the
cloneTree method.duplicateAttributes in class FogoriginalNode - the original node to duplicate.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.RestrictedAccessException - if this object is part of a live
or compiled scenegraph.Node.duplicateNode(javax.media.j3d.Node, boolean),
Node.cloneTree(),
NodeComponent.setDuplicateOnCloneTree(boolean)Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.