javax.media.j3d
Class IndexedGeometryArray

java.lang.Object
  |
  +--javax.media.j3d.SceneGraphObject
        |
        +--javax.media.j3d.NodeComponent
              |
              +--javax.media.j3d.Geometry
                    |
                    +--javax.media.j3d.GeometryArray
                          |
                          +--javax.media.j3d.IndexedGeometryArray
Direct Known Subclasses:
IndexedGeometryStripArray, IndexedLineArray, IndexedPointArray, IndexedQuadArray, IndexedTriangleArray

public abstract class IndexedGeometryArray
extends GeometryArray

The IndexedGeometryArray object contains separate integer arrays that index into the arrays of positional coordinates, colors, normals, and texture coordinates. These index arrays specify how vertices are connected to form geometry primitives. This class is extended to create the various indexed primitive types (e.g., lines, triangle strips, etc.).


Field Summary
static int ALLOW_COLOR_INDEX_READ
          Specifies that this IndexedGeometryArray allows reading the array of color indices.
static int ALLOW_COLOR_INDEX_WRITE
          Specifies that this IndexedGeometryArray allows writing the array of color indices.
static int ALLOW_COORDINATE_INDEX_READ
          Specifies that this IndexedGeometryArray allows reading the array of coordinate indices.
static int ALLOW_COORDINATE_INDEX_WRITE
          Specifies that this IndexedGeometryArray allows writing the array of coordinate indices.
static int ALLOW_NORMAL_INDEX_READ
          Specifies that this IndexedGeometryArray allows reading the array of normal indices.
static int ALLOW_NORMAL_INDEX_WRITE
          Specifies that this IndexedGeometryArray allows writing the array of normal indices.
static int ALLOW_TEXCOORD_INDEX_READ
          Specifies that this IndexedGeometryArray allows reading the array of texture coordinate indices.
static int ALLOW_TEXCOORD_INDEX_WRITE
          Specifies that this IndexedGeometryArray allows writing the array of texture coordinate indices.
 
Fields inherited from class javax.media.j3d.GeometryArray
ALLOW_COLOR_READ, ALLOW_COLOR_WRITE, ALLOW_COORDINATE_READ, ALLOW_COORDINATE_WRITE, ALLOW_COUNT_READ, ALLOW_FORMAT_READ, ALLOW_NORMAL_READ, ALLOW_NORMAL_WRITE, ALLOW_TEXCOORD_READ, ALLOW_TEXCOORD_WRITE, COLOR_3, COLOR_4, COORDINATES, NORMALS, TEXTURE_COORDINATE_2, TEXTURE_COORDINATE_3
 
Fields inherited from class javax.media.j3d.Geometry
ALLOW_INTERSECT
 
Constructor Summary
IndexedGeometryArray(int vertexCount, int vertexFormat, int indexCount)
          Constructs an empty IndexedGeometryArray object with the specified number of vertices, vertex format, and number of indices.
 
Method Summary
 int getColorIndex(int index)
          Retrieves the color index associated with the vertex at the specified index for this object.
 void getColorIndices(int index, int[] colorIndices)
          Retrieves the color indices associated with the vertices starting at the specified index for this object.
 int getCoordinateIndex(int index)
          Retrieves the coordinate index associated with the vertex at the specified index for this object.
 void getCoordinateIndices(int index, int[] coordinateIndices)
          Retrieves the coordinate indices associated with the vertices starting at the specified index for this object.
 int getIndexCount()
          Gets number of indices for this IndexedGeometryArray
 int getNormalIndex(int index)
          Retrieves the normal index associated with the vertex at the specified index for this object.
 void getNormalIndices(int index, int[] normalIndices)
          Retrieves the normal indices associated with the vertices starting at the specified index for this object.
 int getTextureCoordinateIndex(int index)
          Retrieves the texture coordinate index associated with the vertex at the specified index for this object.
 void getTextureCoordinateIndices(int index, int[] texCoordIndices)
          Retrieves the texture coordinate indices associated with the vertices starting at the specified index for this object.
 void setColorIndex(int index, int colorIndex)
          Sets the color index associated with the vertex at the specified index for this object.
 void setColorIndices(int index, int[] colorIndices)
          Sets the color indices associated with the vertices starting at the specified index for this object.
 void setCoordinateIndex(int index, int coordinateIndex)
          Sets the coordinate index associated with the vertex at the specified index for this object.
 void setCoordinateIndices(int index, int[] coordinateIndices)
          Sets the coordinate indices associated with the vertices starting at the specified index for this object.
 void setNormalIndex(int index, int normalIndex)
          Sets the normal index associated with the vertex at the specified index for this object.
 void setNormalIndices(int index, int[] normalIndices)
          Sets the normal indices associated with the vertices starting at the specified index for this object.
 void setTextureCoordinateIndex(int index, int texCoordIndex)
          Sets the texture coordinate index associated with the vertex at the specified index for this object.
 void setTextureCoordinateIndices(int index, int[] texCoordIndices)
          Sets the texture coordinate indices associated with the vertices starting at the specified index for this object.
 
Methods inherited from class javax.media.j3d.GeometryArray
getColor, getColor, getColor, getColor, getColor, getColor, getColors, getColors, getColors, getColors, getColors, getColors, getCoordinate, getCoordinate, getCoordinate, getCoordinate, getCoordinates, getCoordinates, getCoordinates, getCoordinates, getNormal, getNormal, getNormals, getNormals, getTextureCoordinate, getTextureCoordinate, getTextureCoordinate, getTextureCoordinates, getTextureCoordinates, getTextureCoordinates, getVertexCount, getVertexFormat, setColor, setColor, setColor, setColor, setColor, setColor, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setColors, setCoordinate, setCoordinate, setCoordinate, setCoordinate, setCoordinates, setCoordinates, setCoordinates, setCoordinates, setCoordinates, setCoordinates, setCoordinates, setCoordinates, setNormal, setNormal, setNormals, setNormals, setNormals, setNormals, setTextureCoordinate, setTextureCoordinate, setTextureCoordinate, setTextureCoordinates, setTextureCoordinates, setTextureCoordinates, setTextureCoordinates, setTextureCoordinates, setTextureCoordinates
 
Methods inherited from class javax.media.j3d.NodeComponent
cloneNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree
 
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, duplicateSceneGraphObject, getCapability, getUserData, isCompiled, isLive, setCapability, setUserData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ALLOW_COORDINATE_INDEX_READ

public static final int ALLOW_COORDINATE_INDEX_READ
Specifies that this IndexedGeometryArray allows reading the array of coordinate indices.

ALLOW_COORDINATE_INDEX_WRITE

public static final int ALLOW_COORDINATE_INDEX_WRITE
Specifies that this IndexedGeometryArray allows writing the array of coordinate indices.

ALLOW_COLOR_INDEX_READ

public static final int ALLOW_COLOR_INDEX_READ
Specifies that this IndexedGeometryArray allows reading the array of color indices.

ALLOW_COLOR_INDEX_WRITE

public static final int ALLOW_COLOR_INDEX_WRITE
Specifies that this IndexedGeometryArray allows writing the array of color indices.

ALLOW_NORMAL_INDEX_READ

public static final int ALLOW_NORMAL_INDEX_READ
Specifies that this IndexedGeometryArray allows reading the array of normal indices.

ALLOW_NORMAL_INDEX_WRITE

public static final int ALLOW_NORMAL_INDEX_WRITE
Specifies that this IndexedGeometryArray allows writing the array of normal indices.

ALLOW_TEXCOORD_INDEX_READ

public static final int ALLOW_TEXCOORD_INDEX_READ
Specifies that this IndexedGeometryArray allows reading the array of texture coordinate indices.

ALLOW_TEXCOORD_INDEX_WRITE

public static final int ALLOW_TEXCOORD_INDEX_WRITE
Specifies that this IndexedGeometryArray allows writing the array of texture coordinate indices.
Constructor Detail

IndexedGeometryArray

public IndexedGeometryArray(int vertexCount,
                            int vertexFormat,
                            int indexCount)
Constructs an empty IndexedGeometryArray object with the specified number of vertices, vertex format, and number of indices. The index values in each of the four index arrays (coordinates, colors, normals, and texture coordinates) are all initialized to 0.
Parameters:
vertexCount - the number of vertex elements in this IndexedGeometryArray
vertexFormat - 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); one of TEXTURE_COORDINATE_2 or TEXTURE_COORDINATE_3, to signal the inclusion of per-vertex texture coordinates 2D or 3D;
indexCount - the number of indices in this object. This count is the number of vertices that will be rendered.
Method Detail

getIndexCount

public final int getIndexCount()
Gets number of indices for this IndexedGeometryArray
Returns:
indexCount the number of indices

setCoordinateIndex

public final void setCoordinateIndex(int index,
                                     int coordinateIndex)
Sets the coordinate index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
coordinateIndex - the new coordinate index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setCoordinateIndices

public final void setCoordinateIndices(int index,
                                       int[] coordinateIndices)
Sets the coordinate indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
coordinateIndices - an array of coordinate indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setColorIndex

public final void setColorIndex(int index,
                                int colorIndex)
Sets the color index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
colorIndex - the new color index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setColorIndices

public final void setColorIndices(int index,
                                  int[] colorIndices)
Sets the color indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
colorIndices - an array of color indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setNormalIndex

public final void setNormalIndex(int index,
                                 int normalIndex)
Sets the normal index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
normalIndex - the new normal index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setNormalIndices

public final void setNormalIndices(int index,
                                   int[] normalIndices)
Sets the normal indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
normalIndices - an array of normal indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setTextureCoordinateIndex

public final void setTextureCoordinateIndex(int index,
                                            int texCoordIndex)
Sets the texture coordinate index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
texCoordIndex - the new texture coordinate index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

setTextureCoordinateIndices

public final void setTextureCoordinateIndices(int index,
                                              int[] texCoordIndices)
Sets the texture coordinate indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
texCoordIndices - an array of texture coordinate indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getCoordinateIndex

public final int getCoordinateIndex(int index)
Retrieves the coordinate index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
Returns:
the coordinate index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getCoordinateIndices

public final void getCoordinateIndices(int index,
                                       int[] coordinateIndices)
Retrieves the coordinate indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
coordinateIndices - array that will receive the coordinate indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getColorIndex

public final int getColorIndex(int index)
Retrieves the color index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
Returns:
the color index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getColorIndices

public final void getColorIndices(int index,
                                  int[] colorIndices)
Retrieves the color indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
colorIndices - array that will receive the color indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getNormalIndex

public final int getNormalIndex(int index)
Retrieves the normal index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
Returns:
the normal index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getNormalIndices

public final void getNormalIndices(int index,
                                   int[] normalIndices)
Retrieves the normal indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
normalIndices - array that will receive the normal indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getTextureCoordinateIndex

public final int getTextureCoordinateIndex(int index)
Retrieves the texture coordinate index associated with the vertex at the specified index for this object.
Parameters:
index - the vertex index
Returns:
the texture coordinate index
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph

getTextureCoordinateIndices

public final void getTextureCoordinateIndices(int index,
                                              int[] texCoordIndices)
Retrieves the texture coordinate indices associated with the vertices starting at the specified index for this object.
Parameters:
index - the vertex index
texCoordIndices - array that will receive the texture coordinate indices
Throws:
CapabilityNotSetException - if appropriate capability is not set and this object is part of live or compiled scene graph