|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javax.media.j3d.SceneGraphObject | +--javax.media.j3d.NodeComponent | +--javax.media.j3d.Geometry | +--javax.media.j3d.GeometryArray | +--javax.media.j3d.GeometryStripArray
The GeometryStripArray object is an abstract class that is extended for a set of GeometryArray strip primitives. These include LINE_STRIP, TRIANGLE_STRIP, and TRIANGLE_FAN. In addition to specifying the array of vertex elements, which is inherited from GeometryArray, the GeometryStripArray class specifies the number of strips and an array of per-strip vertex counts that specify where the separate strips appear in the vertex array.
Field Summary |
Fields inherited from class javax.media.j3d.Geometry |
ALLOW_INTERSECT |
Constructor Summary | |
GeometryStripArray(int vertexCount,
int vertexFormat,
int[] stripVertexCounts)
Constructs an empty GeometryStripArray object with the specified number of vertices, vertex format, and array of per-strip vertex counts. |
|
GeometryStripArray(int vertexCount,
int vertexFormat,
int texCoordSetCount,
int[] texCoordSetMap,
int[] stripVertexCounts)
Constructs an empty GeometryStripArray object with the specified number of vertices, vertex format, number of texture coordinate sets, texture coordinate mapping array, and array of per-strip vertex counts. |
Method Summary | |
int |
getNumStrips()
Get number of strips in the GeometryStripArray. |
void |
getStripVertexCounts(int[] stripVertexCounts)
Get a list of vertexCounts for each strip. |
void |
setStripVertexCounts(int[] stripVertexCounts)
Sets the array of strip vertex counts. |
void |
setValidVertexCount(int validVertexCount)
This method is not supported for geometry strip arrays. |
Methods inherited from class javax.media.j3d.NodeComponent |
cloneNodeComponent, cloneNodeComponent, duplicateNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree |
Methods inherited from class javax.media.j3d.SceneGraphObject |
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setUserData, updateNodeReferences |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public GeometryStripArray(int vertexCount, int vertexFormat, int[] stripVertexCounts)
vertexCount
- the number of vertex elements in this arrayvertexFormat
- a mask indicating which components are
present in each vertex. This is specified as one or more
individual flags that are bitwise "OR"ed together to describe
the per-vertex data.
The flags include: COORDINATES, to signal the inclusion of
vertex positions--always present; NORMALS, to signal
the inclusion of per vertex normals; one of COLOR_3,
COLOR_4, to signal the inclusion of per vertex
colors (without or with color information); and one of
TEXTURE_COORDINATE_2 or TEXTURE_COORDINATE_3, to signal the
inclusion of per-vertex texture coordinates 2D or 3D.stripVertexCounts
- array that specifies
the count of the number of vertices for each separate strip.
The length of this array is the number of separate strips.
The sum of the elements in this array defines the total number
of valid vertices that are rendered (validVertexCount).
java.lang.IllegalArgumentException
- if
validVertexCount > vertexCount
public GeometryStripArray(int vertexCount, int vertexFormat, int texCoordSetCount, int[] texCoordSetMap, int[] stripVertexCounts)
vertexCount
- the number of vertex elements in this arrayvertexFormat
- a mask indicating which components are
present in each vertex. This is specified as one or more
individual flags that are bitwise "OR"ed together to describe
the per-vertex data.
The flags include: COORDINATES, to signal the inclusion of
vertex positions--always present; NORMALS, to signal
the inclusion of per vertex normals; one of COLOR_3,
COLOR_4, to signal the inclusion of per vertex
colors (without or with color information); and one of
TEXTURE_COORDINATE_2 or TEXTURE_COORDINATE_3, to signal the
inclusion of per-vertex texture coordinates 2D or 3D.texCoordSetCount
- the number of texture coordinate sets
in this GeometryArray object. If vertexFormat
does not include one of TEXTURE_COORDINATE_2
or
TEXTURE_COORDINATE_3
, the
texCoordSetCount
parameter is not used.texCoordSetMap
- an array that maps texture coordinate
sets to texture units. The array is indexed by texture unit
number for each texture unit in the associated Appearance
object. The values in the array specify the texture coordinate
set within this GeometryArray object that maps to the
corresponding texture
unit. All elements within the array must be less than
texCoordSetCount
. A negative value specifies that
no texture coordinate set maps to the texture unit
corresponding to the index. If there are more texture units in
any associated Appearance object than elements in the mapping
array, the extra elements are assumed to be -1. The same
texture coordinate set may be used for more than one texture
unit. Each texture unit in every associated Appearance must
have a valid source of texture coordinates: either a
non-negative texture coordinate set must be specified in the
mapping array or texture coordinate generation must be enabled.
Texture coordinate generation will take precedence for those
texture units for which a texture coordinate set is specified
and texture coordinate generation is enabled. If
vertexFormat
does not include one of
TEXTURE_COORDINATE_2
or
TEXTURE_COORDINATE_3
, the
texCoordSetMap
array is not used.stripVertexCounts
- array that specifies
the count of the number of vertices for each separate strip.
The length of this array is the number of separate strips.
The sum of the elements in this array defines the total number
of valid vertices that are rendered (validVertexCount).
java.lang.IllegalArgumentException
- if
validVertexCount > vertexCount
Method Detail |
public int getNumStrips()
public void setStripVertexCounts(int[] stripVertexCounts)
stripVertexCounts
- array that specifies
the count of the number of vertices for each separate strip.
java.lang.IllegalArgumentException
- if any of the following are
true:
initialVertexIndex + validVertexCount > vertexCount
,initialCoordIndex + validVertexCount > vertexCount
,initialColorIndex + validVertexCount > vertexCount
,initialNormalIndex + validVertexCount > vertexCount
,initialTexCoordIndex + validVertexCount > vertexCount
java.lang.ArrayIndexOutOfBoundsException
- if the geometry data format
is BY_REFERENCE
and any the following
are true for non-null array references:
CoordRef.length
< num_words *
(initialCoordIndex + validVertexCount
)ColorRef.length
< num_words *
(initialColorIndex + validVertexCount
)NormalRef.length
< num_words *
(initialNormalIndex + validVertexCount
)TexCoordRef.length
< num_words *
(initialTexCoordIndex + validVertexCount
)set
ArrayRef
is used.public void getStripVertexCounts(int[] stripVertexCounts)
stripVertexCounts
- an array that will receive vertexCountspublic void setValidVertexCount(int validVertexCount)
setValidVertexCount
in class GeometryArray
validVertexCount
- the new valid vertex count.
java.lang.UnsupportedOperationException
- this method is not supported
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |