javax.media.j3d
Class PolygonAttributes

java.lang.Object
  extended by javax.media.j3d.SceneGraphObject
      extended by javax.media.j3d.NodeComponent
          extended by javax.media.j3d.PolygonAttributes

public class PolygonAttributes
extends NodeComponent

The PolygonAttributes object defines attributes for rendering polygon primitives. Polygon primitives include triangles, triangle strips, triangle fans, and quads. The polygon attributes that can be defined are:

See Also:
Appearance

Field Summary
static int ALLOW_CULL_FACE_READ
          Specifies that this PolygonAttributes object allows reading its cull face information.
static int ALLOW_CULL_FACE_WRITE
          Specifies that this PolygonAttributes object allows writing its cull face information.
static int ALLOW_MODE_READ
          Specifies that this PolygonAttributes object allows reading its polygon mode information.
static int ALLOW_MODE_WRITE
          Specifies that this PolygonAttributes object allows writing its polygon mode information.
static int ALLOW_NORMAL_FLIP_READ
          Specifies that this PolygonAttributes object allows reading its back face normal flip flag.
static int ALLOW_NORMAL_FLIP_WRITE
          Specifies that this PolygonAttributes object allows writing its back face normal flip flag.
static int ALLOW_OFFSET_READ
          Specifies that this PolygonAttributes object allows reading its polygon offset information.
static int ALLOW_OFFSET_WRITE
          Specifies that this PolygonAttributes object allows writing its polygon offset information.
static int CULL_BACK
          Cull all back-facing polygons.
static int CULL_FRONT
          Cull all front-facing polygons.
static int CULL_NONE
          Don't perform any face culling.
static int POLYGON_FILL
          Render polygonal primitives by filling the interior of the polygon.
static int POLYGON_LINE
          Render polygonal primitives as lines drawn between consecutive vertices of the polygon.
static int POLYGON_POINT
          Render polygonal primitives as points drawn at the vertices of the polygon.
 
Constructor Summary
PolygonAttributes()
          Constructs a PolygonAttributes object with default parameters.
PolygonAttributes(int polygonMode, int cullFace, float polygonOffset)
          Constructs a PolygonAttributes object with specified values.
PolygonAttributes(int polygonMode, int cullFace, float polygonOffset, boolean backFaceNormalFlip)
          Constructs PolygonAttributes object with specified values.
PolygonAttributes(int polygonMode, int cullFace, float polygonOffset, boolean backFaceNormalFlip, float polygonOffsetFactor)
          Constructs PolygonAttributes object with specified values.
 
Method Summary
 NodeComponent cloneNodeComponent()
          Deprecated. replaced with cloneNodeComponent(boolean forceDuplicate)
 boolean getBackFaceNormalFlip()
          Gets the back face normal flip flag.
 int getCullFace()
          Gets the face culling for this appearance component object.
 int getPolygonMode()
          Gets the polygon rasterization mode for this appearance component object.
 float getPolygonOffset()
          Gets the constant polygon offset.
 float getPolygonOffsetFactor()
          Gets the polygon offset factor.
 void setBackFaceNormalFlip(boolean backFaceNormalFlip)
          Sets the back face normal flip flag to the specified value.
 void setCullFace(int cullFace)
          Sets the face culling for this appearance component object.
 void setPolygonMode(int polygonMode)
          Sets the polygon rasterization mode for this appearance component object.
 void setPolygonOffset(float polygonOffset)
          Sets the constant polygon offset to the specified value.
 void setPolygonOffsetFactor(float polygonOffsetFactor)
          Sets the polygon offset factor to the specified value.
 
Methods inherited from class javax.media.j3d.NodeComponent
cloneNodeComponent, duplicateNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree
 
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString, updateNodeReferences
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ALLOW_CULL_FACE_READ

public static final int ALLOW_CULL_FACE_READ
Specifies that this PolygonAttributes object allows reading its cull face information.

See Also:
Constant Field Values

ALLOW_CULL_FACE_WRITE

public static final int ALLOW_CULL_FACE_WRITE
Specifies that this PolygonAttributes object allows writing its cull face information.

See Also:
Constant Field Values

ALLOW_NORMAL_FLIP_READ

public static final int ALLOW_NORMAL_FLIP_READ
Specifies that this PolygonAttributes object allows reading its back face normal flip flag.

See Also:
Constant Field Values

ALLOW_NORMAL_FLIP_WRITE

public static final int ALLOW_NORMAL_FLIP_WRITE
Specifies that this PolygonAttributes object allows writing its back face normal flip flag.

See Also:
Constant Field Values

ALLOW_MODE_READ

public static final int ALLOW_MODE_READ
Specifies that this PolygonAttributes object allows reading its polygon mode information.

See Also:
Constant Field Values

ALLOW_MODE_WRITE

public static final int ALLOW_MODE_WRITE
Specifies that this PolygonAttributes object allows writing its polygon mode information.

See Also:
Constant Field Values

ALLOW_OFFSET_READ

public static final int ALLOW_OFFSET_READ
Specifies that this PolygonAttributes object allows reading its polygon offset information.

See Also:
Constant Field Values

ALLOW_OFFSET_WRITE

public static final int ALLOW_OFFSET_WRITE
Specifies that this PolygonAttributes object allows writing its polygon offset information.

See Also:
Constant Field Values

POLYGON_POINT

public static final int POLYGON_POINT
Render polygonal primitives as points drawn at the vertices of the polygon.

See Also:
Constant Field Values

POLYGON_LINE

public static final int POLYGON_LINE
Render polygonal primitives as lines drawn between consecutive vertices of the polygon.

See Also:
Constant Field Values

POLYGON_FILL

public static final int POLYGON_FILL
Render polygonal primitives by filling the interior of the polygon.

See Also:
Constant Field Values

CULL_NONE

public static final int CULL_NONE
Don't perform any face culling.

See Also:
Constant Field Values

CULL_BACK

public static final int CULL_BACK
Cull all back-facing polygons. This is the default mode.

See Also:
Constant Field Values

CULL_FRONT

public static final int CULL_FRONT
Cull all front-facing polygons.

See Also:
Constant Field Values
Constructor Detail

PolygonAttributes

public PolygonAttributes()
Constructs a PolygonAttributes object with default parameters. The default values are as follows:


PolygonAttributes

public PolygonAttributes(int polygonMode,
                         int cullFace,
                         float polygonOffset)
Constructs a PolygonAttributes object with specified values.

Parameters:
polygonMode - polygon rasterization mode; one of POLYGON_POINT, POLYGON_LINE, or POLYGON_FILL
cullFace - polygon culling mode; one of CULL_NONE, CULL_BACK, or CULL_FRONT
polygonOffset - constant polygon offset

PolygonAttributes

public PolygonAttributes(int polygonMode,
                         int cullFace,
                         float polygonOffset,
                         boolean backFaceNormalFlip)
Constructs PolygonAttributes object with specified values.

Parameters:
polygonMode - polygon rasterization mode; one of POLYGON_POINT, POLYGON_LINE, or POLYGON_FILL
cullFace - polygon culling mode; one of CULL_NONE, CULL_BACK, or CULL_FRONT
polygonOffset - constant polygon offset
backFaceNormalFlip - back face normal flip flag; true or false

PolygonAttributes

public PolygonAttributes(int polygonMode,
                         int cullFace,
                         float polygonOffset,
                         boolean backFaceNormalFlip,
                         float polygonOffsetFactor)
Constructs PolygonAttributes object with specified values.

Parameters:
polygonMode - polygon rasterization mode; one of POLYGON_POINT, POLYGON_LINE, or POLYGON_FILL
cullFace - polygon culling mode; one of CULL_NONE, CULL_BACK, or CULL_FRONT
polygonOffset - constant polygon offset
backFaceNormalFlip - back face normal flip flag; true or false
polygonOffsetFactor - polygon offset factor for slope-based polygon offset
Since:
Java 3D 1.2
Method Detail

setCullFace

public void setCullFace(int cullFace)
Sets the face culling for this appearance component object.

Parameters:
cullFace - the face to be culled, one of: CULL_NONE, CULL_FRONT, or CULL_BACK
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getCullFace

public int getCullFace()
Gets the face culling for this appearance component object.

Returns:
the face to be culled
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setBackFaceNormalFlip

public void setBackFaceNormalFlip(boolean backFaceNormalFlip)
Sets the back face normal flip flag to the specified value. This flag indicates whether vertex normals of back facing polygons should be flipped (negated) prior to lighting. When this flag is set to true and back face culling is disabled, polygons are rendered as if the polygon had two sides with opposing normals. This feature is disabled by default.

Parameters:
backFaceNormalFlip - the back face normal flip flag
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getBackFaceNormalFlip

public boolean getBackFaceNormalFlip()
Gets the back face normal flip flag.

Returns:
the back face normal flip flag
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setPolygonMode

public void setPolygonMode(int polygonMode)
Sets the polygon rasterization mode for this appearance component object.

Parameters:
polygonMode - the polygon rasterization mode to be used; one of POLYGON_FILL, POLYGON_LINE, or POLYGON_POINT
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getPolygonMode

public int getPolygonMode()
Gets the polygon rasterization mode for this appearance component object.

Returns:
the polygon rasterization mode
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setPolygonOffset

public void setPolygonOffset(float polygonOffset)
Sets the constant polygon offset to the specified value. This screen space offset is added to the final, device coordinate Z value of polygon primitives.

Parameters:
polygonOffset - the constant polygon offset
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getPolygonOffset

public float getPolygonOffset()
Gets the constant polygon offset.

Returns:
the constant polygon offset
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setPolygonOffsetFactor

public void setPolygonOffsetFactor(float polygonOffsetFactor)
Sets the polygon offset factor to the specified value. This factor is multiplied by the slope of the polygon, and then added to the final, device coordinate Z value of polygon primitives.

Parameters:
polygonOffsetFactor - the polygon offset factor
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph
Since:
Java 3D 1.2

getPolygonOffsetFactor

public float getPolygonOffsetFactor()
Gets the polygon offset factor.

Returns:
the polygon offset factor.
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph
Since:
Java 3D 1.2

cloneNodeComponent

public NodeComponent cloneNodeComponent()
Deprecated. replaced with cloneNodeComponent(boolean forceDuplicate)

Overrides:
cloneNodeComponent in class NodeComponent