public abstract class GeometryArray extends Geometry
setCoordinate
,
setColors
, etc.) copy the data into this
GeometryArray. This is appropriate for many applications and
offers an application much flexibility in organizing its data.
This is the default mode.
BY_REFERENCE
bit in the
vertexFormat
field of the constructor for this
GeometryArray. In this mode, the various set methods for
coordinates, normals, colors, texture coordinates, and vertex attributes
are not used.
Instead, new methods are used to set a reference to user-supplied
coordinate, color, normal, texture coordinate, and vertex attribute
arrays (such as
setCoordRefFloat
, setColorRefFloat
,
etc.). Data in any array that is referenced by a live or compiled
GeometryArray object may only be modified via the
updateData
method (subject to the
ALLOW_REF_DATA_WRITE
capability bit). Applications
must exercise care not to violate this rule. If any referenced
geometry data is modified outside of the updateData
method, the results are undefined.
All colors used in the geometry array object must be in the range [0.0,1.0]. Values outside this range will cause undefined results. All normals used in the geometry array object must be unit length vectors. That is their geometric length must be 1.0. Normals that are not unit length vectors will cause undefined results.
Note that the term coordinate, as used in the method names and method descriptions, actually refers to a set of x, y, and z coordinates representing the position of a single vertex. The term coordinates (plural) is used to indicate sets of x, y, and z coordinates for multiple vertices. This is somewhat at odds with the mathematical definition of a coordinate, but is used as a convenient shorthand. Similarly, the term texture coordinate is used to indicate a set of texture coordinates for a single vertex, while the term texture coordinates (plural) is used to indicate sets of texture coordinates for multiple vertices.
Modifier and Type | Field and Description |
---|---|
static int |
ALLOW_COLOR_READ
Specifies that this GeometryArray allows reading the array of
colors.
|
static int |
ALLOW_COLOR_WRITE
Specifies that this GeometryArray allows writing the array of
colors.
|
static int |
ALLOW_COORDINATE_READ
Specifies that this GeometryArray allows reading the array of
coordinates.
|
static int |
ALLOW_COORDINATE_WRITE
Specifies that this GeometryArray allows writing the array of
coordinates.
|
static int |
ALLOW_COUNT_READ
Specifies that this GeometryArray allows reading the count or
initial index information for this object.
|
static int |
ALLOW_COUNT_WRITE
Specifies that this GeometryArray allows writing the count or
initial index information for this object.
|
static int |
ALLOW_FORMAT_READ
Specifies that this GeometryArray allows reading the vertex format
information for this object.
|
static int |
ALLOW_NORMAL_READ
Specifies that this GeometryArray allows reading the array of
normals.
|
static int |
ALLOW_NORMAL_WRITE
Specifies that this GeometryArray allows writing the array of
normals.
|
static int |
ALLOW_REF_DATA_READ
Specifies that this GeometryArray allows reading the geometry
data reference information for this object.
|
static int |
ALLOW_REF_DATA_WRITE
Specifies that this GeometryArray allows writing the geometry
data reference information for this object.
|
static int |
ALLOW_TEXCOORD_READ
Specifies that this GeometryArray allows reading the array of
texture coordinates.
|
static int |
ALLOW_TEXCOORD_WRITE
Specifies that this GeometryArray allows writing the array of
texture coordinates.
|
static int |
ALLOW_VERTEX_ATTR_READ
Specifies that this GeometryArray allows reading the array of
vertex attributes.
|
static int |
ALLOW_VERTEX_ATTR_WRITE
Specifies that this GeometryArray allows writing the array of
vertex attributes.
|
static int |
BY_REFERENCE
Specifies that the position, color, normal, and texture coordinate
data for this GeometryArray are accessed by reference.
|
static int |
BY_REFERENCE_INDICES
Specifies that the indices in this GeometryArray
are accessed by reference.
|
static int |
COLOR_3
Specifies that this GeometryArray contains an array of colors without alpha.
|
static int |
COLOR_4
Specifies that this GeometryArray contains an array of colors with alpha.
|
static int |
COORDINATES
Specifies that this GeometryArray contains an array of coordinates.
|
static int |
INTERLEAVED
Specifies that the position, color, normal, and texture
coordinate data for this GeometryArray are accessed via a single
interleaved, floating-point array reference.
|
static int |
NORMALS
Specifies that this GeometryArray contains an array of normals.
|
static int |
TEXTURE_COORDINATE_2
Specifies that this GeometryArray contains one or more arrays of
2D texture coordinates.
|
static int |
TEXTURE_COORDINATE_3
Specifies that this GeometryArray contains one or more arrays of
3D texture coordinates.
|
static int |
TEXTURE_COORDINATE_4
Specifies that this GeometryArray contains one or more arrays of
4D texture coordinates.
|
static int |
USE_COORD_INDEX_ONLY
Specifies that only the coordinate indices are used for indexed
geometry arrays.
|
static int |
USE_NIO_BUFFER
Specifies that geometry by-reference data for this
GeometryArray, whether interleaved or non-interleaved, is
accessed via J3DBuffer objects that wrap NIO Buffer objects,
rather than float, double, byte, or TupleXX arrays.
|
static int |
VERTEX_ATTRIBUTES
Specifies that this GeometryArray contains one or more arrays of
vertex attributes.
|
ALLOW_INTERSECT
Constructor and Description |
---|
GeometryArray(int vertexCount,
int vertexFormat)
Constructs an empty GeometryArray object with the specified
number of vertices and vertex format.
|
GeometryArray(int vertexCount,
int vertexFormat,
int texCoordSetCount,
int[] texCoordSetMap)
Constructs an empty GeometryArray object with the specified
number of vertices, vertex format, number of texture coordinate
sets, and texture coordinate mapping array.
|
GeometryArray(int vertexCount,
int vertexFormat,
int texCoordSetCount,
int[] texCoordSetMap,
int vertexAttrCount,
int[] vertexAttrSizes)
Constructs an empty GeometryArray object with the specified
number of vertices, vertex format, number of texture coordinate
sets, texture coordinate mapping array, vertex attribute count,
and vertex attribute sizes array.
|
Modifier and Type | Method and Description |
---|---|
void |
getColor(int index,
byte[] color)
Gets the color associated with the vertex at
the specified index for this object.
|
void |
getColor(int index,
Color3b color)
Gets the color associated with the vertex at
the specified index for this object.
|
void |
getColor(int index,
Color3f color)
Gets the color associated with the vertex at
the specified index for this object.
|
void |
getColor(int index,
Color4b color)
Gets the color associated with the vertex at
the specified index for this object.
|
void |
getColor(int index,
Color4f color)
Gets the color associated with the vertex at
the specified index for this object.
|
void |
getColor(int index,
float[] color)
Gets the color associated with the vertex at
the specified index for this object.
|
Color3b[] |
getColorRef3b()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color3b arrays
|
Color3f[] |
getColorRef3f()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color3f arrays
|
Color4b[] |
getColorRef4b()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color4b arrays
|
Color4f[] |
getColorRef4f()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color4f arrays
|
J3DBuffer |
getColorRefBuffer()
Gets the color array buffer reference.
|
byte[] |
getColorRefByte()
Gets the byte color array reference.
|
float[] |
getColorRefFloat()
Gets the float color array reference.
|
void |
getColors(int index,
byte[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getColors(int index,
Color3b[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getColors(int index,
Color3f[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getColors(int index,
Color4b[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getColors(int index,
Color4f[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getColors(int index,
float[] colors)
Gets the colors associated with the vertices starting at
the specified index for this object.
|
void |
getCoordinate(int index,
double[] coordinate)
Gets the coordinate associated with the vertex at
the specified index for this object.
|
void |
getCoordinate(int index,
float[] coordinate)
Gets the coordinate associated with the vertex at
the specified index for this object using data in
texCoords |
void |
getCoordinate(int index,
Point3d coordinate)
Gets the coordinate associated with the vertex at
the specified index for this object.
|
void |
getCoordinate(int index,
Point3f coordinate)
Gets the coordinate associated with the vertex at
the specified index for this object.
|
void |
getCoordinates(int index,
double[] coordinates)
Gets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
getCoordinates(int index,
float[] coordinates)
Gets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
getCoordinates(int index,
Point3d[] coordinates)
Gets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
getCoordinates(int index,
Point3f[] coordinates)
Gets the coordinates associated with the vertices starting at
the specified index for this object.
|
Point3d[] |
getCoordRef3d()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Point3d arrays
|
Point3f[] |
getCoordRef3f()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Point3f arrays
|
J3DBuffer |
getCoordRefBuffer()
Gets the coordinate array buffer reference.
|
double[] |
getCoordRefDouble()
Gets the double coordinate array reference.
|
float[] |
getCoordRefFloat()
Gets the float coordinate array reference.
|
int |
getInitialColorIndex()
Gets the initial color index for this GeometryArray object.
|
int |
getInitialCoordIndex()
Gets the initial coordinate index for this GeometryArray object.
|
int |
getInitialNormalIndex()
Gets the initial normal index for this GeometryArray object.
|
int |
getInitialTexCoordIndex(int texCoordSet)
Gets the initial texture coordinate index for the specified
texture coordinate set for this GeometryArray object.
|
int |
getInitialVertexAttrIndex(int vertexAttrNum)
Gets the initial vertex attribute index for the specified
vertex attribute number for this GeometryArray object.
|
int |
getInitialVertexIndex()
Gets the initial vertex index for this GeometryArray object.
|
J3DBuffer |
getInterleavedVertexBuffer()
Gets the interleaved vertex array buffer reference.
|
float[] |
getInterleavedVertices()
Gets the interleaved vertices array reference.
|
void |
getNormal(int index,
float[] normal)
Gets the normal associated with the vertex at
the specified index for this object.
|
void |
getNormal(int index,
Vector3f normal)
Gets the normal associated with the vertex at
the specified index for this object.
|
Vector3f[] |
getNormalRef3f()
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Vector3f arrays
|
J3DBuffer |
getNormalRefBuffer()
Gets the normal array buffer reference.
|
float[] |
getNormalRefFloat()
Gets the float normal array reference.
|
void |
getNormals(int index,
float[] normals)
Gets the normals associated with the vertices starting at
the specified index for this object.
|
void |
getNormals(int index,
Vector3f[] normals)
Gets the normals associated with the vertices starting at
the specified index for this object.
|
TexCoord2f[] |
getTexCoordRef2f(int texCoordSet)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for TexCoord2f arrays
|
TexCoord3f[] |
getTexCoordRef3f(int texCoordSet)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for TexCoord3f arrays
|
J3DBuffer |
getTexCoordRefBuffer(int texCoordSet)
Gets the texture coordinate array buffer reference for the specified
texture coordinate set.
|
float[] |
getTexCoordRefFloat(int texCoordSet)
Gets the float texture coordinate array reference for the specified
texture coordinate set.
|
int |
getTexCoordSetCount()
Retrieves the number of texture coordinate sets in this
GeometryArray object.
|
void |
getTexCoordSetMap(int[] texCoordSetMap)
Retrieves the texture coordinate set mapping
array from this GeometryArray object.
|
int |
getTexCoordSetMapLength()
Retrieves the length of the texture coordinate set mapping
array of this GeometryArray object.
|
void |
getTextureCoordinate(int index,
float[] texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinate(int texCoordSet, ...) |
void |
getTextureCoordinate(int texCoordSet,
int index,
float[] texCoord)
Gets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinate(int texCoordSet,
int index,
TexCoord2f texCoord)
Gets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinate(int texCoordSet,
int index,
TexCoord3f texCoord)
Gets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinate(int texCoordSet,
int index,
TexCoord4f texCoord)
Gets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinate(int index,
Point2f texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinate(int texCoordSet, TexCoord2f texCoord) |
void |
getTextureCoordinate(int index,
Point3f texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinate(int texCoordSet, TexCoord3f texCoord) |
void |
getTextureCoordinates(int index,
float[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinates(int texCoordSet, ...) |
void |
getTextureCoordinates(int texCoordSet,
int index,
float[] texCoords)
Gets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinates(int texCoordSet,
int index,
TexCoord2f[] texCoords)
Gets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinates(int texCoordSet,
int index,
TexCoord3f[] texCoords)
Gets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinates(int texCoordSet,
int index,
TexCoord4f[] texCoords)
Gets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
getTextureCoordinates(int index,
Point2f[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinates(int texCoordSet, TexCoord2f texCoords[]) |
void |
getTextureCoordinates(int index,
Point3f[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
getTextureCoordinates(int texCoordSet, TexCoord3f texCoords[]) |
int |
getValidVertexCount()
Gets the valid vertex count for this GeometryArray object.
|
void |
getVertexAttr(int vertexAttrNum,
int index,
float[] vertexAttr)
Gets the vertex attribute associated with the vertex at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttr(int vertexAttrNum,
int index,
Point2f vertexAttr)
Gets the vertex attribute associated with the vertex at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttr(int vertexAttrNum,
int index,
Point3f vertexAttr)
Gets the vertex attribute associated with the vertex at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttr(int vertexAttrNum,
int index,
Point4f vertexAttr)
Gets the vertex attribute associated with the vertex at
the specified index in the specified vertex attribute number
for this object.
|
int |
getVertexAttrCount()
Retrieves the number of vertex attributes in this GeometryArray
object.
|
J3DBuffer |
getVertexAttrRefBuffer(int vertexAttrNum)
Gets the vertex attribute array buffer reference for the specified
vertex attribute number.
|
float[] |
getVertexAttrRefFloat(int vertexAttrNum)
Gets the float vertex attribute array reference for the specified
vertex attribute number.
|
void |
getVertexAttrs(int vertexAttrNum,
int index,
float[] vertexAttrs)
Gets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttrs(int vertexAttrNum,
int index,
Point2f[] vertexAttrs)
Gets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttrs(int vertexAttrNum,
int index,
Point3f[] vertexAttrs)
Gets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttrs(int vertexAttrNum,
int index,
Point4f[] vertexAttrs)
Gets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
getVertexAttrSizes(int[] vertexAttrSizes)
Retrieves the vertex attribute sizes array from this
GeometryArray object.
|
int |
getVertexCount()
Retrieves the number of vertices in this GeometryArray
|
int |
getVertexFormat()
Retrieves the vertexFormat of this GeometryArray
|
void |
setColor(int index,
byte[] color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColor(int index,
Color3b color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColor(int index,
Color3f color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColor(int index,
Color4b color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColor(int index,
Color4f color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColor(int index,
float[] color)
Sets the color associated with the vertex at
the specified index for this object.
|
void |
setColorRef3b(Color3b[] colors)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color3b arrays
|
void |
setColorRef3f(Color3f[] colors)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color3f arrays
|
void |
setColorRef4b(Color4b[] colors)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color4b arrays
|
void |
setColorRef4f(Color4f[] colors)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Color4f arrays
|
void |
setColorRefBuffer(J3DBuffer colors)
Sets the color buffer reference to the specified
buffer object.
|
void |
setColorRefByte(byte[] colors)
Sets the byte color array reference to the specified array.
|
void |
setColorRefFloat(float[] colors)
Sets the float color array reference to the specified array.
|
void |
setColors(int index,
byte[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
byte[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setColors(int index,
Color3b[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
Color3b[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setColors(int index,
Color3f[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
Color3f[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setColors(int index,
Color4b[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
Color4b[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setColors(int index,
Color4f[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
Color4f[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setColors(int index,
float[] colors)
Sets the colors associated with the vertices starting at
the specified index for this object.
|
void |
setColors(int index,
float[] colors,
int start,
int length)
Sets the colors associated with the vertices starting at
the specified index for this object using data in
colors
starting at index start for length colors. |
void |
setCoordinate(int index,
double[] coordinate)
Sets the coordinate associated with the vertex at
the specified index.
|
void |
setCoordinate(int index,
float[] coordinate)
Sets the coordinate associated with the vertex at
the specified index for this object.
|
void |
setCoordinate(int index,
Point3d coordinate)
Sets the coordinate associated with the vertex at
the specified index for this object.
|
void |
setCoordinate(int index,
Point3f coordinate)
Sets the coordinate associated with the vertex at
the specified index for this object.
|
void |
setCoordinates(int index,
double[] coordinates)
Sets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
setCoordinates(int index,
double[] coordinates,
int start,
int length)
Sets the coordinates associated with the vertices starting at
the specified index for this object using coordinate data starting
from vertex index
start for length vertices. |
void |
setCoordinates(int index,
float[] coordinates)
Sets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
setCoordinates(int index,
float[] coordinates,
int start,
int length)
Sets the coordinates associated with the vertices starting at
the specified index for this object using coordinate data starting
from vertex index
start for length vertices. |
void |
setCoordinates(int index,
Point3d[] coordinates)
Sets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
setCoordinates(int index,
Point3d[] coordinates,
int start,
int length)
Sets the coordinates associated with the vertices starting at
the specified index for this object using coordinate data starting
from vertex index
start for length vertices. |
void |
setCoordinates(int index,
Point3f[] coordinates)
Sets the coordinates associated with the vertices starting at
the specified index for this object.
|
void |
setCoordinates(int index,
Point3f[] coordinates,
int start,
int length)
Sets the coordinates associated with the vertices starting at
the specified index for this object using coordinate data starting
from vertex index
start for length vertices. |
void |
setCoordRef3d(Point3d[] coords)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Point3d arrays
|
void |
setCoordRef3f(Point3f[] coords)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Point3f arrays
|
void |
setCoordRefBuffer(J3DBuffer coords)
Sets the coordinate buffer reference to the specified
buffer object.
|
void |
setCoordRefDouble(double[] coords)
Sets the double coordinate array reference to the specified
array.
|
void |
setCoordRefFloat(float[] coords)
Sets the float coordinate array reference to the specified
array.
|
void |
setInitialColorIndex(int initialColorIndex)
Sets the initial color index for this GeometryArray object.
|
void |
setInitialCoordIndex(int initialCoordIndex)
Sets the initial coordinate index for this GeometryArray object.
|
void |
setInitialNormalIndex(int initialNormalIndex)
Sets the initial normal index for this GeometryArray object.
|
void |
setInitialTexCoordIndex(int texCoordSet,
int initialTexCoordIndex)
Sets the initial texture coordinate index for the specified
texture coordinate set for this GeometryArray object.
|
void |
setInitialVertexAttrIndex(int vertexAttrNum,
int initialVertexAttrIndex)
Sets the initial vertex attribute index for the specified
vertex attribute number for this GeometryArray object.
|
void |
setInitialVertexIndex(int initialVertexIndex)
Sets the initial vertex index for this GeometryArray object.
|
void |
setInterleavedVertexBuffer(J3DBuffer vertexData)
Sets the interleaved vertex buffer reference to the specified
buffer object.
|
void |
setInterleavedVertices(float[] vertexData)
Sets the interleaved vertex array reference to the specified
array.
|
void |
setNormal(int index,
float[] normal)
Sets the normal associated with the vertex at
the specified index for this object.
|
void |
setNormal(int index,
Vector3f normal)
Sets the normal associated with the vertex at
the specified index for this object.
|
void |
setNormalRef3f(Vector3f[] normals)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for Vector3f arrays
|
void |
setNormalRefBuffer(J3DBuffer normals)
Sets the normal buffer reference to the specified
buffer object.
|
void |
setNormalRefFloat(float[] normals)
Sets the float normal array reference to the specified
array.
|
void |
setNormals(int index,
float[] normals)
Sets the normals associated with the vertices starting at
the specified index for this object.
|
void |
setNormals(int index,
float[] normals,
int start,
int length)
Sets the normals associated with the vertices starting at
the specified index for this object using data in
normals
starting at index start and ending at index start+length . |
void |
setNormals(int index,
Vector3f[] normals)
Sets the normals associated with the vertices starting at
the specified index for this object.
|
void |
setNormals(int index,
Vector3f[] normals,
int start,
int length)
Sets the normals associated with the vertices starting at
the specified index for this object using data in
normals
starting at index start and ending at index start+length . |
void |
setTexCoordRef2f(int texCoordSet,
TexCoord2f[] texCoords)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for TexCoord2f arrays
|
void |
setTexCoordRef3f(int texCoordSet,
TexCoord3f[] texCoords)
Deprecated.
As of Java 3D version 1.3, use geometry by-copy
for TexCoord3f arrays
|
void |
setTexCoordRefBuffer(int texCoordSet,
J3DBuffer texCoords)
Sets the texture coordinate buffer reference for the specified
texture coordinate set to the
specified buffer object.
|
void |
setTexCoordRefFloat(int texCoordSet,
float[] texCoords)
Sets the float texture coordinate array reference for the specified
texture coordinate set to the
specified array.
|
void |
setTextureCoordinate(int index,
float[] texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinate(int texCoordSet, ...) |
void |
setTextureCoordinate(int texCoordSet,
int index,
float[] texCoord)
Sets the texture coordinate associated with the vertex at the
specified index in the specified texture coordinate set for
this object.
|
void |
setTextureCoordinate(int texCoordSet,
int index,
TexCoord2f texCoord)
Sets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinate(int texCoordSet,
int index,
TexCoord3f texCoord)
Sets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinate(int texCoordSet,
int index,
TexCoord4f texCoord)
Sets the texture coordinate associated with the vertex at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinate(int index,
Point2f texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinate(int texCoordSet, TexCoord2f texCoord) |
void |
setTextureCoordinate(int index,
Point3f texCoord)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinate(int texCoordSet, TexCoord3f texCoord) |
void |
setTextureCoordinates(int index,
float[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, ...) |
void |
setTextureCoordinates(int index,
float[] texCoords,
int start,
int length)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, ...) |
void |
setTextureCoordinates(int texCoordSet,
int index,
float[] texCoords)
Sets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinates(int texCoordSet,
int index,
float[] texCoords,
int start,
int length)
Sets the texture coordinates associated with the vertices
starting at the specified index in the specified texture
coordinate set for this object using data in
texCoords starting at index start and
ending at index start+length . |
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord2f[] texCoords)
Sets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord2f[] texCoords,
int start,
int length)
Sets the texture coordinates associated with the vertices
starting at the specified index in the specified texture
coordinate set for this object using data in
texCoords starting at index start and
ending at index start+length . |
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord3f[] texCoords)
Sets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord3f[] texCoords,
int start,
int length)
Sets the texture coordinates associated with the vertices
starting at the specified index in the specified texture
coordinate set for this object.
|
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord4f[] texCoords)
Sets the texture coordinates associated with the vertices starting at
the specified index in the specified texture coordinate set
for this object.
|
void |
setTextureCoordinates(int texCoordSet,
int index,
TexCoord4f[] texCoords,
int start,
int length)
Sets the texture coordinates associated with the vertices
starting at the specified index in the specified texture
coordinate set for this object.
|
void |
setTextureCoordinates(int index,
Point2f[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, TexCoord2f texCoords[]) |
void |
setTextureCoordinates(int index,
Point2f[] texCoords,
int start,
int length)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, TexCoord2f texCoords[], ...) |
void |
setTextureCoordinates(int index,
Point3f[] texCoords)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, TexCoord3f texCoords[]) |
void |
setTextureCoordinates(int index,
Point3f[] texCoords,
int start,
int length)
Deprecated.
As of Java 3D version 1.2, replaced by
setTextureCoordinates(int texCoordSet, TexCoord3f texCoords[], ...) |
void |
setValidVertexCount(int validVertexCount)
Sets the valid vertex count for this GeometryArray object.
|
void |
setVertexAttr(int vertexAttrNum,
int index,
float[] vertexAttr)
Sets the vertex attribute associated with the vertex at the
specified index in the specified vertex attribute number for
this object.
|
void |
setVertexAttr(int vertexAttrNum,
int index,
Point2f vertexAttr)
Sets the vertex attribute associated with the vertex at the
specified index in the specified vertex attribute number for
this object.
|
void |
setVertexAttr(int vertexAttrNum,
int index,
Point3f vertexAttr)
Sets the vertex attribute associated with the vertex at the
specified index in the specified vertex attribute number for
this object.
|
void |
setVertexAttr(int vertexAttrNum,
int index,
Point4f vertexAttr)
Sets the vertex attribute associated with the vertex at the
specified index in the specified vertex attribute number for
this object.
|
void |
setVertexAttrRefBuffer(int vertexAttrNum,
J3DBuffer vertexAttrs)
Sets the vertex attribute buffer reference for the specified
vertex attribute number to the specified buffer object.
|
void |
setVertexAttrRefFloat(int vertexAttrNum,
float[] vertexAttrs)
Sets the float vertex attribute array reference for the
specified vertex attribute number to the specified array.
|
void |
setVertexAttrs(int vertexAttrNum,
int index,
float[] vertexAttrs)
Sets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
setVertexAttrs(int vertexAttrNum,
int index,
float[] vertexAttrs,
int start,
int length)
Sets the vertex attributes associated with the vertices
starting at the specified index in the specified vertex
attribute number for this object using data in
vertexAttrs starting at index start and
ending at index start+length . |
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point2f[] vertexAttrs)
Sets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point2f[] vertexAttrs,
int start,
int length)
Sets the vertex attributes associated with the vertices
starting at the specified index in the specified vertex
attribute number for this object using data in
vertexAttrs starting at index start and
ending at index start+length . |
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point3f[] vertexAttrs)
Sets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point3f[] vertexAttrs,
int start,
int length)
Sets the vertex attributes associated with the vertices
starting at the specified index in the specified vertex
attribute number for this object using data in
vertexAttrs starting at index start and
ending at index start+length . |
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point4f[] vertexAttrs)
Sets the vertex attributes associated with the vertices starting at
the specified index in the specified vertex attribute number
for this object.
|
void |
setVertexAttrs(int vertexAttrNum,
int index,
Point4f[] vertexAttrs,
int start,
int length)
Sets the vertex attributes associated with the vertices
starting at the specified index in the specified vertex
attribute number for this object using data in
vertexAttrs starting at index start and
ending at index start+length . |
void |
updateData(GeometryUpdater updater)
Updates geometry array data that is accessed by reference.
|
cloneNodeComponent, cloneNodeComponent, duplicateNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString, updateNodeReferences
public static final int ALLOW_COORDINATE_READ
public static final int ALLOW_COORDINATE_WRITE
public static final int ALLOW_COLOR_READ
public static final int ALLOW_COLOR_WRITE
public static final int ALLOW_NORMAL_READ
public static final int ALLOW_NORMAL_WRITE
public static final int ALLOW_TEXCOORD_READ
public static final int ALLOW_TEXCOORD_WRITE
public static final int ALLOW_VERTEX_ATTR_READ
public static final int ALLOW_VERTEX_ATTR_WRITE
public static final int ALLOW_COUNT_READ
public static final int ALLOW_COUNT_WRITE
public static final int ALLOW_FORMAT_READ
public static final int ALLOW_REF_DATA_READ
public static final int ALLOW_REF_DATA_WRITE
public static final int COORDINATES
public static final int NORMALS
public static final int COLOR_3
public static final int COLOR_4
public static final int TEXTURE_COORDINATE_2
public static final int TEXTURE_COORDINATE_3
public static final int TEXTURE_COORDINATE_4
public static final int BY_REFERENCE
public static final int INTERLEAVED
BY_REFERENCE
flag.public static final int USE_NIO_BUFFER
BY_REFERENCE
flag.public static final int USE_COORD_INDEX_ONLY
public static final int VERTEX_ATTRIBUTES
public static final int BY_REFERENCE_INDICES
BY_REFERENCE
and
USE_COORD_INDEX_ONLY
flags.public GeometryArray(int vertexCount, int vertexFormat)
vertexCount
- the number of vertex elements in this GeometryArrayvertexFormat
- 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
or
COLOR_4
, to signal the inclusion of per vertex
colors (without or with alpha information); one of
TEXTURE_COORDINATE_2
, TEXTURE_COORDINATE_3
or TEXTURE_COORDINATE_4
,
to signal the
inclusion of per-vertex texture coordinates (2D, 3D or 4D);
BY_REFERENCE
, to indicate that the data is passed
by reference
rather than by copying; INTERLEAVED
, to indicate
that the referenced
data is interleaved in a single array;
USE_NIO_BUFFER
, to indicate that the referenced data
is accessed via a J3DBuffer object that wraps an NIO buffer;
USE_COORD_INDEX_ONLY
,
to indicate that only the coordinate indices are used for indexed
geometry arrays;
BY_REFERENCE_INDICES
, to indicate
that the indices are accessed by reference in indexed
geometry arrays.IllegalArgumentException
- if vertexCount < 0IllegalArgumentException
- if vertexFormat does not
include COORDINATES
IllegalArgumentException
- if the USE_COORD_INDEX_ONLY
bit or the BY_REFERENCE_INDICES
bit is set for
non-indexed geometry arrays (that is, GeometryArray objects
that are not a subclass of IndexedGeometryArray)IllegalArgumentException
- if the INTERLEAVED
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the USE_NIO_BUFFER
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the INTERLEAVED
bit and the VERTEX_ATTRIBUTES
bit are both setIllegalArgumentException
- if the
BY_REFERENCE_INDICES
bit is set without the BY_REFERENCE
and
USE_COORD_INDEX_ONLY
bits being setpublic GeometryArray(int vertexCount, int vertexFormat, int texCoordSetCount, int[] texCoordSetMap)
vertexCount
- the number of vertex elements in this
GeometryArrayvertexFormat
- 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
or
COLOR_4
, to signal the inclusion of per vertex
colors (without or with alpha information); one of
TEXTURE_COORDINATE_2
or TEXTURE_COORDINATE_3
or TEXTURE_COORDINATE_4
,
to signal the
inclusion of per-vertex texture coordinates (2D , 3D or 4D);
BY_REFERENCE
, to indicate that the data is passed
by reference
rather than by copying; INTERLEAVED
, to indicate
that the referenced
data is interleaved in a single array;
USE_NIO_BUFFER
, to indicate that the referenced data
is accessed via a J3DBuffer object that wraps an NIO buffer;
USE_COORD_INDEX_ONLY
,
to indicate that only the coordinate indices are used for indexed
geometry arrays;
BY_REFERENCE_INDICES
, to indicate
that the indices are accessed by reference in indexed
geometry arrays.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
or
TEXTURE_COORDINATE_4
, the
texCoordSetMap
array is not used. The following example
illustrates the use of the texCoordSetMap
array.
Description | ||
Use tex coord set 1 for tex unit 0 | ||
Use no tex coord set for tex unit 1 | ||
Use tex coord set 0 for tex unit 2 | ||
Reuse tex coord set 1 for tex unit 3 |
IllegalArgumentException
- if vertexCount < 0IllegalArgumentException
- if vertexFormat does not
include COORDINATES
IllegalArgumentException
- if the USE_COORD_INDEX_ONLY
bit or the BY_REFERENCE_INDICES
bit is set for
non-indexed geometry arrays (that is, GeometryArray objects
that are not a subclass of IndexedGeometryArray)IllegalArgumentException
- if the INTERLEAVED
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the USE_NIO_BUFFER
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the INTERLEAVED
bit and the VERTEX_ATTRIBUTES
bit are both setIllegalArgumentException
- if the
BY_REFERENCE_INDICES
bit is set without the BY_REFERENCE
and
USE_COORD_INDEX_ONLY
bits being setIllegalArgumentException
- if
texCoordSetCount < 0
IllegalArgumentException
- if any element in
texCoordSetMap[] >= texCoordSetCount
.public GeometryArray(int vertexCount, int vertexFormat, int texCoordSetCount, int[] texCoordSetMap, int vertexAttrCount, int[] vertexAttrSizes)
vertexCount
- the number of vertex elements in this
GeometryArrayvertexFormat
- 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
or
COLOR_4
, to signal the inclusion of per vertex
colors (without or with alpha information); one of
TEXTURE_COORDINATE_2
or TEXTURE_COORDINATE_3
or TEXTURE_COORDINATE_4
,
to signal the
inclusion of per-vertex texture coordinates (2D , 3D or 4D);
VERTEX_ATTRIBUTES
, to signal
the inclusion of one or more arrays of vertex attributes;
BY_REFERENCE
, to indicate that the data is passed
by reference
rather than by copying; INTERLEAVED
, to indicate
that the referenced
data is interleaved in a single array;
USE_NIO_BUFFER
, to indicate that the referenced data
is accessed via a J3DBuffer object that wraps an NIO buffer;
USE_COORD_INDEX_ONLY
,
to indicate that only the coordinate indices are used for indexed
geometry arrays;
BY_REFERENCE_INDICES
, to indicate
that the indices are accessed by reference in indexed
geometry arrays.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
or
TEXTURE_COORDINATE_4
, the
texCoordSetMap
array is not used. The following example
illustrates the use of the texCoordSetMap
array.
Description | ||
Use tex coord set 1 for tex unit 0 | ||
Use no tex coord set for tex unit 1 | ||
Use tex coord set 0 for tex unit 2 | ||
Reuse tex coord set 1 for tex unit 3 |
vertexAttrCount
- the number of vertex attributes
in this GeometryArray object. If vertexFormat
does not include VERTEX_ATTRIBUTES
, the
vertexAttrCount
parameter must be 0.vertexAttrSizes
- is an array that specifes the size of
each vertex attribute. Each element in the array specifies the
number of components in the attribute, from 1 to 4. The length
of the array must be equal to vertexAttrCount
.IllegalArgumentException
- if vertexCount < 0IllegalArgumentException
- if vertexFormat does not
include COORDINATES
IllegalArgumentException
- if the USE_COORD_INDEX_ONLY
bit or the BY_REFERENCE_INDICES
bit is set for
non-indexed geometry arrays (that is, GeometryArray objects
that are not a subclass of IndexedGeometryArray)IllegalArgumentException
- if the INTERLEAVED
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the USE_NIO_BUFFER
bit is set without the BY_REFERENCE
bit being setIllegalArgumentException
- if the INTERLEAVED
bit and the VERTEX_ATTRIBUTES
bit are both setIllegalArgumentException
- if the
BY_REFERENCE_INDICES
bit is set without the BY_REFERENCE
and
USE_COORD_INDEX_ONLY
bits being setIllegalArgumentException
- if
texCoordSetCount < 0
IllegalArgumentException
- if any element in
texCoordSetMap[] >= texCoordSetCount
.IllegalArgumentException
- if
vertexAttrCount > 0
and the
VERTEX_ATTRIBUTES
bit is not setIllegalArgumentException
- if
vertexAttrCount < 0
IllegalArgumentException
- if
vertexAttrSizes.length != vertexAttrCount
IllegalArgumentException
- if any element in
vertexAttrSizes[]
is < 1
or
> 4
.public int getVertexCount()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic int getVertexFormat()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic int getTexCoordSetCount()
public int getTexCoordSetMapLength()
public void getTexCoordSetMap(int[] texCoordSetMap)
texCoordSetMap
- an array that will receive a copy of the
texture coordinate set mapping array. The array must be large
enough to hold all entries of the texture coordinate set
mapping array.public int getVertexAttrCount()
public void getVertexAttrSizes(int[] vertexAttrSizes)
vertexAttrSizes
- an array that will receive a copy of
the vertex attribute sizes array. The array must hold at least
vertexAttrCount
elements.public void updateData(GeometryUpdater updater)
This method may also be used to atomically set multiple references (for example, to coordinate and color arrays) or to atomically change multiple data values through the geometry data copying methods.
updater
- object whose updateData callback method will be
called to update the data referenced by this GeometryArray.CapabilityNotSetException
- if the appropriate capability
is not set, the vertex data mode is BY_REFERENCE
, and this
object is part of a live or compiled scene graphpublic void setValidVertexCount(int validVertexCount)
vertexCount
.validVertexCount
- the new valid vertex count.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalArgumentException
- if any of the following are
true:
validVertexCount < 0
,initialVertexIndex + validVertexCount > vertexCount
,initialCoordIndex + validVertexCount > vertexCount
,initialColorIndex + validVertexCount > vertexCount
,initialNormalIndex + validVertexCount > vertexCount
,initialTexCoordIndex + validVertexCount > vertexCount
,initialVertexAttrIndex + validVertexCount > vertexCount
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
),VertexAttrRef.length
< num_words *
(initialVertexAttrIndex + validVertexCount
),InterleavedVertices.length
< words_per_vertex *
(initialVertexIndex + validVertexCount
)set
ArrayRef
is used, and
words_per_vertex depends on which vertex formats are enabled
for interleaved arrays.public int getValidVertexCount()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setInitialVertexIndex(int initialVertexIndex)
BY_REFERENCE
or when the data mode is INTERLEAVED
.initialVertexIndex
- the new initial vertex index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalArgumentException
- if either of the following are
true:
initialVertexIndex < 0
orinitialVertexIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if the geometry data format
is INTERLEAVED
, the InterleavedVertices array is
non-null, and:
InterleavedVertices.length
< num_words *
(initialVertexIndex + validVertexCount
)IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
and is not
INTERLEAVED
.public int getInitialVertexIndex()
BY_REFERENCE
or when the data mode is INTERLEAVED
.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setCoordinate(int index, float[] coordinate)
index
- destination vertex index in this geometry arraycoordinate
- source array of 3 values containing the new coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinate(int index, double[] coordinate)
index
- destination vertex index in this geometry arraycoordinate
- source array of 3 values containing the new coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinate(int index, Point3f coordinate)
index
- destination vertex index in this geometry arraycoordinate
- a point containing the new coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinate(int index, Point3d coordinate)
index
- destination vertex index in this geometry arraycoordinate
- a point containing the new coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, float[] coordinates)
index
- starting destination vertex index in this geometry arraycoordinates
- source array of 3*n values containing n new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, double[] coordinates)
index
- starting destination vertex index in this geometry arraycoordinates
- source array of 3*n values containing n new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, Point3f[] coordinates)
index
- starting destination vertex index in this geometry arraycoordinates
- source array of points containing new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, Point3d[] coordinates)
index
- starting destination vertex index in this geometry arraycoordinates
- source array of points containing new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, float[] coordinates, int start, int length)
start
for length
vertices.index
- starting destination vertex index in this geometry arraycoordinates
- source array of 3*n values containing n new coordinatesstart
- starting source vertex index in coordinates
array.length
- number of vertices to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, double[] coordinates, int start, int length)
start
for length
vertices.index
- starting destination vertex index in this geometry arraycoordinates
- source array of 3*n values containing n new coordinatesstart
- starting source vertex index in coordinates
array.length
- number of vertices to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, Point3f[] coordinates, int start, int length)
start
for length
vertices.index
- starting destination vertex index in this geometry arraycoordinates
- source array of points containing new coordinatesstart
- starting source vertex index in coordinates
array.length
- number of vertices to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setCoordinates(int index, Point3d[] coordinates, int start, int length)
start
for length
vertices.index
- starting destination vertex index in this geometry arraycoordinates
- source array of points containing new coordinatesstart
- starting source vertex index in coordinates
array.length
- number of vertices to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColor(int index, float[] color)
index
- destination vertex index in this geometry arraycolor
- source array of 3 or 4 values containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColor(int index, byte[] color)
index
- destination vertex index in this geometry arraycolor
- source array of 3 or 4 values containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColor(int index, Color3f color)
index
- destination vertex index in this geometry arraycolor
- a Color3f containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void setColor(int index, Color4f color)
index
- destination vertex index in this geometry arraycolor
- a Color4f containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void setColor(int index, Color3b color)
index
- destination vertex index in this geometry arraycolor
- a Color3b containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void setColor(int index, Color4b color)
index
- destination vertex index in this geometry arraycolor
- a Color4b containing the new colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void setColors(int index, float[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of 3*n or 4*n values containing n new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColors(int index, byte[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of 3*n or 4*n values containing n new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColors(int index, Color3f[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of Color3f objects containing new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in vertex formatpublic void setColors(int index, Color4f[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of Color4f objects containing new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in vertex formatpublic void setColors(int index, Color3b[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of Color3b objects containing new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in vertex formatpublic void setColors(int index, Color4b[] colors)
index
- starting destination vertex index in this geometry arraycolors
- source array of Color4b objects containing new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in vertex formatpublic void setColors(int index, float[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of 3*n or 4*n values containing n new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColors(int index, byte[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of 3*n or 4*n values containing n new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setColors(int index, Color3f[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of Color3f objects containing new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in vertex formatpublic void setColors(int index, Color4f[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of Color4f objects containing new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in vertex formatpublic void setColors(int index, Color3b[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of Color3b objects containing new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in vertex formatpublic void setColors(int index, Color4b[] colors, int start, int length)
colors
starting at index start
for length
colors.index
- starting destination vertex index in this geometry arraycolors
- source array of Color4b objects containing new colorsstart
- starting source vertex index in colors
array.length
- number of colors to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if COLOR bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in vertex formatpublic void setNormal(int index, float[] normal)
index
- destination vertex index in this geometry arraynormal
- source array of 3 values containing the new normalCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setNormal(int index, Vector3f normal)
index
- destination vertex index in this geometry arraynormal
- the vector containing the new normalCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setNormals(int index, float[] normals)
index
- starting destination vertex index in this geometry arraynormals
- source array of 3*n values containing n new normalsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setNormals(int index, Vector3f[] normals)
index
- starting destination vertex index in this geometry arraynormals
- source array of vectors containing new normalsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setNormals(int index, float[] normals, int start, int length)
normals
starting at index start
and ending at index start+length
.index
- starting destination vertex index in this geometry arraynormals
- source array of 3*n values containing n new normalsstart
- starting source vertex index in normals
array.length
- number of normals to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setNormals(int index, Vector3f[] normals, int start, int length)
normals
starting at index start
and ending at index start+length
.index
- starting destination vertex index in this geometry arraynormals
- source array of vectors containing new normalsstart
- starting source vertex index in normals
array.length
- number of normals to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if NORMALS bit NOT set in
constructor vertexFormat
or array index for element is out of bounds.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setTextureCoordinate(int index, float[] texCoord)
setTextureCoordinate(int texCoordSet, ...)
public void setTextureCoordinate(int texCoordSet, int index, float[] texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- destination vertex index in this geometry arraytexCoord
- source array of 2, 3 or 4 values containing the new
texture coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setTextureCoordinate(int index, Point2f texCoord)
setTextureCoordinate(int texCoordSet, TexCoord2f texCoord)
public void setTextureCoordinate(int texCoordSet, int index, TexCoord2f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- destination vertex index in this geometry arraytexCoord
- the TexCoord2f containing the new texture coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_3 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinate(int index, Point3f texCoord)
setTextureCoordinate(int texCoordSet, TexCoord3f texCoord)
public void setTextureCoordinate(int texCoordSet, int index, TexCoord3f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- destination vertex index in this geometry arraytexCoord
- the TexCoord3f containing the new texture coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinate(int texCoordSet, int index, TexCoord4f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- destination vertex index in this geometry arraytexCoord
- the TexCoord4f containing the new texture coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_3 is specified in vertex formatpublic void setTextureCoordinates(int index, float[] texCoords)
setTextureCoordinates(int texCoordSet, ...)
public void setTextureCoordinates(int texCoordSet, int index, float[] texCoords)
texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of 2*n, 3*n or 4*n values containing n new
texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setTextureCoordinates(int index, Point2f[] texCoords)
setTextureCoordinates(int texCoordSet, TexCoord2f texCoords[])
public void setTextureCoordinates(int texCoordSet, int index, TexCoord2f[] texCoords)
texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord2f objects containing new
texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_3 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinates(int index, Point3f[] texCoords)
setTextureCoordinates(int texCoordSet, TexCoord3f texCoords[])
public void setTextureCoordinates(int texCoordSet, int index, TexCoord3f[] texCoords)
texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord3f objects containing new
texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinates(int texCoordSet, int index, TexCoord4f[] texCoords)
texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord4f objects containing new
texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_3 is specified in vertex formatpublic void setTextureCoordinates(int index, float[] texCoords, int start, int length)
setTextureCoordinates(int texCoordSet, ...)
public void setTextureCoordinates(int texCoordSet, int index, float[] texCoords, int start, int length)
texCoords
starting at index start
and
ending at index start+length
.index
- starting destination vertex index in this geometry arraytexCoords
- source array of 2*n , 3*n or 4*n values containing
n new texture coordinatesstart
- starting source vertex index in texCoords
array.length
- number of texture Coordinates to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setTextureCoordinates(int index, Point2f[] texCoords, int start, int length)
setTextureCoordinates(int texCoordSet, TexCoord2f texCoords[], ...)
public void setTextureCoordinates(int texCoordSet, int index, TexCoord2f[] texCoords, int start, int length)
texCoords
starting at index start
and
ending at index start+length
.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord2f objects containing new
texture coordinatesstart
- starting source vertex index in texCoords
array.length
- number of texture Coordinates to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_3 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinates(int index, Point3f[] texCoords, int start, int length)
setTextureCoordinates(int texCoordSet, TexCoord3f texCoords[], ...)
public void setTextureCoordinates(int texCoordSet, int index, TexCoord3f[] texCoords, int start, int length)
start
and ending at index start+length
.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord3f objects containing new
texture coordinatesstart
- starting source vertex index in texCoords
array.length
- number of texture Coordinates to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void setTextureCoordinates(int texCoordSet, int index, TexCoord4f[] texCoords, int start, int length)
start
and ending at index start+length
.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting destination vertex index in this geometry arraytexCoords
- source array of TexCoord4f objects containing new
texture coordinatesstart
- starting source vertex index in texCoords
array.length
- number of texture Coordinates to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_3 is specified in vertex formatpublic void setVertexAttr(int vertexAttrNum, int index, float[] vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- destination vertex index in this geometry arrayvertexAttr
- source array of 1, 2, 3 or 4 values containing
the new vertex attributeCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setVertexAttr(int vertexAttrNum, int index, Point2f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- destination vertex index in this geometry arrayvertexAttr
- the Point2f containing the new vertex attributeCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 2.public void setVertexAttr(int vertexAttrNum, int index, Point3f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- destination vertex index in this geometry arrayvertexAttr
- the Point3f containing the new vertex attributeCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 3.public void setVertexAttr(int vertexAttrNum, int index, Point4f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- destination vertex index in this geometry arrayvertexAttr
- the Point4f containing the new vertex attributeCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 4.public void setVertexAttrs(int vertexAttrNum, int index, float[] vertexAttrs)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of 1*n, 2*n, 3*n, or 4*n values
containing n new vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too large.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setVertexAttrs(int vertexAttrNum, int index, Point2f[] vertexAttrs)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point2f objects containing new
vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too large.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 2.public void setVertexAttrs(int vertexAttrNum, int index, Point3f[] vertexAttrs)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point3f objects containing new
vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too large.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 3.public void setVertexAttrs(int vertexAttrNum, int index, Point4f[] vertexAttrs)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point4f objects containing new
vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too large.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 4.public void setVertexAttrs(int vertexAttrNum, int index, float[] vertexAttrs, int start, int length)
vertexAttrs
starting at index start
and
ending at index start+length
.index
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of 1*n, 2*n, 3*n, or 4*n values
containing n new vertex attributesstart
- starting source vertex index in vertexAttrs
array.length
- number of vertex attributes to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if any of index,
(index+length), or vertexAttrNum are out of range, or if
vertexAttrs is too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void setVertexAttrs(int vertexAttrNum, int index, Point2f[] vertexAttrs, int start, int length)
vertexAttrs
starting at index start
and
ending at index start+length
.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point2f objects containing new
vertex attributesstart
- starting source vertex index in vertexAttrs
array.length
- number of vertex attributes to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if any of index,
(index+length), or vertexAttrNum are out of range, or if
vertexAttrs is too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 2.public void setVertexAttrs(int vertexAttrNum, int index, Point3f[] vertexAttrs, int start, int length)
vertexAttrs
starting at index start
and
ending at index start+length
.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point3f objects containing new
vertex attributesstart
- starting source vertex index in vertexAttrs
array.length
- number of vertex attributes to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if any of index,
(index+length), or vertexAttrNum are out of range, or if
vertexAttrs is too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 3.public void setVertexAttrs(int vertexAttrNum, int index, Point4f[] vertexAttrs, int start, int length)
vertexAttrs
starting at index start
and
ending at index start+length
.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting destination vertex index in this geometry arrayvertexAttrs
- source array of Point4f objects containing new
vertex attributesstart
- starting source vertex index in vertexAttrs
array.length
- number of vertex attributes to be copied.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if any of index,
(index+length), or vertexAttrNum are out of range, or if
vertexAttrs is too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 4.public void getCoordinate(int index, float[] coordinate)
texCoords
index
- source vertex index in this geometry arraycoordinate
- destination array of 3 values that will receive the coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinate(int index, double[] coordinate)
index
- source vertex index in this geometry arraycoordinate
- destination array of 3 values that will receive the coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinate(int index, Point3f coordinate)
index
- source vertex index in this geometry arraycoordinate
- a vector that will receive the coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinate(int index, Point3d coordinate)
index
- source vertex index in this geometry arraycoordinate
- a vector that will receive the coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinates(int index, float[] coordinates)
vertexCount-index
coordinates
are copied. If the destination array is larger than is needed
to hold the coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the coordinates, only as
many coordinates as the array will hold are copied.index
- starting source vertex index in this geometry arraycoordinates
- destination array of 3*n values that will receive new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinates(int index, double[] coordinates)
vertexCount-index
coordinates
are copied. If the destination array is larger than is needed
to hold the coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the coordinates, only as
many coordinates as the array will hold are copied.index
- starting source vertex index in this geometry arraycoordinates
- destination array of 3*n values that will receive new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinates(int index, Point3f[] coordinates)
vertexCount-index
coordinates
are copied. If the destination array is larger than is needed
to hold the coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the coordinates, only as
many coordinates as the array will hold are copied.index
- starting source vertex index in this geometry arraycoordinates
- destination array of points that will receive new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getCoordinates(int index, Point3d[] coordinates)
vertexCount-index
coordinates
are copied. If the destination array is larger than is needed
to hold the coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the coordinates, only as
many coordinates as the array will hold are copied.index
- starting source vertex index in this geometry arraycoordinates
- destination array of points that will receive new coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getColor(int index, float[] color)
index
- source vertex index in this geometry arraycolor
- destination array of 3 or 4 values that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getColor(int index, byte[] color)
index
- source vertex index in this geometry arraycolor
- destination array of 3 or 4 values that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getColor(int index, Color3f color)
index
- source vertex index in this geometry arraycolor
- a vector that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void getColor(int index, Color4f color)
index
- source vertex index in this geometry arraycolor
- a vector that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void getColor(int index, Color3b color)
index
- source vertex index in this geometry arraycolor
- a vector that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void getColor(int index, Color4b color)
index
- source vertex index in this geometry arraycolor
- a vector that will receive the colorCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void getColors(int index, float[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of 3*n or 4*n values that will
receive n new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getColors(int index, byte[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of 3*n or 4*n values that will
receive new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getColors(int index, Color3f[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of Color3f objects that will receive new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void getColors(int index, Color4f[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of Color4f objects that will receive new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void getColors(int index, Color3b[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of Color3b objects that will receive new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_4 is specified in the vertex
formatpublic void getColors(int index, Color4b[] colors)
vertexCount-index
colors
are copied. If the destination array is larger than is needed
to hold the colors, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the colors, only as
many colors as the array will hold are copied.index
- starting source vertex index in this geometry arraycolors
- destination array of Color4b objects that will receive new colorsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if COLOR_3 is specified in the vertex
formatpublic void getNormal(int index, float[] normal)
index
- source vertex index in this geometry arraynormal
- destination array of 3 values that will receive the normalCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getNormal(int index, Vector3f normal)
index
- source vertex index in this geometry arraynormal
- the vector that will receive the normalCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getNormals(int index, float[] normals)
vertexCount-index
normals
are copied. If the destination array is larger than is needed
to hold the normals, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the normals, only as
many normals as the array will hold are copied.index
- starting source vertex index in this geometry arraynormals
- destination array of 3*n values that will receive the normalCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getNormals(int index, Vector3f[] normals)
vertexCount-index
normals
are copied. If the destination array is larger than is needed
to hold the normals, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the normals, only as
many normals as the array will hold are copied.index
- starting source vertex index in this geometry arraynormals
- destination array of vectors that will receive the normalsCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getTextureCoordinate(int index, float[] texCoord)
getTextureCoordinate(int texCoordSet, ...)
public void getTextureCoordinate(int texCoordSet, int index, float[] texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- source vertex index in this geometry arraytexCoord
- array of 2, 3 or 4 values that will receive the
texture coordinateCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getTextureCoordinate(int index, Point2f texCoord)
getTextureCoordinate(int texCoordSet, TexCoord2f texCoord)
public void getTextureCoordinate(int texCoordSet, int index, TexCoord2f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- source vertex index in this geometry arraytexCoord
- the vector that will receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_3 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void getTextureCoordinate(int index, Point3f texCoord)
getTextureCoordinate(int texCoordSet, TexCoord3f texCoord)
public void getTextureCoordinate(int texCoordSet, int index, TexCoord3f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- source vertex index in this geometry arraytexCoord
- the vector that will receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void getTextureCoordinate(int texCoordSet, int index, TexCoord4f texCoord)
texCoordSet
- texture coordinate set in this geometry arrayindex
- source vertex index in this geometry arraytexCoord
- the vector that will receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_3 is specified in vertex formatpublic void getTextureCoordinates(int index, float[] texCoords)
getTextureCoordinates(int texCoordSet, ...)
public void getTextureCoordinates(int texCoordSet, int index, float[] texCoords)
vertexCount-index
texture coordinates
are copied. If the destination array is larger than is needed
to hold the texture coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the texture coordinates, only as
many texture coordinates as the array will hold are copied.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting source vertex index in this geometry arraytexCoords
- destination array of 2*n , 3*n or 4*n values that
will receive n new texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getTextureCoordinates(int index, Point2f[] texCoords)
getTextureCoordinates(int texCoordSet, TexCoord2f texCoords[])
public void getTextureCoordinates(int texCoordSet, int index, TexCoord2f[] texCoords)
vertexCount-index
texture coordinates
are copied. If the destination array is larger than is needed
to hold the texture coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the texture coordinates, only as
many texture coordinates as the array will hold are copied.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting source vertex index in this geometry arraytexCoords
- destination array of TexCoord2f objects that will
receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_3 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void getTextureCoordinates(int index, Point3f[] texCoords)
getTextureCoordinates(int texCoordSet, TexCoord3f texCoords[])
public void getTextureCoordinates(int texCoordSet, int index, TexCoord3f[] texCoords)
vertexCount-index
texture coordinates
are copied. If the destination array is larger than is needed
to hold the texture coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the texture coordinates, only as
many texture coordinates as the array will hold are copied.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting source vertex index in this geometry arraytexCoords
- destination array of TexCoord3f objects that will
receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_4 is specified in vertex formatpublic void getTextureCoordinates(int texCoordSet, int index, TexCoord4f[] texCoords)
vertexCount-index
texture coordinates
are copied. If the destination array is larger than is needed
to hold the texture coordinates, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the texture coordinates, only as
many texture coordinates as the array will hold are copied.texCoordSet
- texture coordinate set in this geometry arrayindex
- starting source vertex index in this geometry arraytexCoords
- destination array of TexCoord4f objects that will
receive the texture coordinatesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if the index or
texCoordSet is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if TEXTURE_COORDINATE_2 or
TEXTURE_COORDINATE_3 is specified in vertex formatpublic void getVertexAttr(int vertexAttrNum, int index, float[] vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- source vertex index in this geometry arrayvertexAttr
- array of 1, 2, 3 or 4 values that will receive the
vertex attributeCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range, or if the vertexAttr array is
too small.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getVertexAttr(int vertexAttrNum, int index, Point2f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- source vertex index in this geometry arrayvertexAttr
- the vector that will receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 2.public void getVertexAttr(int vertexAttrNum, int index, Point3f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- source vertex index in this geometry arrayvertexAttr
- the vector that will receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 3.public void getVertexAttr(int vertexAttrNum, int index, Point4f vertexAttr)
vertexAttrNum
- vertex attribute number in this geometry arrayindex
- source vertex index in this geometry arrayvertexAttr
- the vector that will receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 4.public void getVertexAttrs(int vertexAttrNum, int index, float[] vertexAttrs)
vertexCount-index
vertex attributes
are copied. If the destination array is larger than is needed
to hold the vertex attributes, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the vertex attributes, only as
many vertex attributes as the array will hold are copied.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting source vertex index in this geometry arrayvertexAttrs
- destination array of 1*n, 2*n, 3*n, or 4*n values
that will receive n new vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.public void getVertexAttrs(int vertexAttrNum, int index, Point2f[] vertexAttrs)
vertexCount-index
vertex attributes
are copied. If the destination array is larger than is needed
to hold the vertex attributes, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the vertex attributes, only as
many vertex attributes as the array will hold are copied.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting source vertex index in this geometry arrayvertexAttrs
- destination array of Point2f objects that will
receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 2.public void getVertexAttrs(int vertexAttrNum, int index, Point3f[] vertexAttrs)
vertexCount-index
vertex attributes
are copied. If the destination array is larger than is needed
to hold the vertex attributes, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the vertex attributes, only as
many vertex attributes as the array will hold are copied.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting source vertex index in this geometry arrayvertexAttrs
- destination array of Point3f objects that will
receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 3.public void getVertexAttrs(int vertexAttrNum, int index, Point4f[] vertexAttrs)
vertexCount-index
vertex attributes
are copied. If the destination array is larger than is needed
to hold the vertex attributes, the excess locations in the
array are not modified. If the destination array is smaller
than is needed to hold the vertex attributes, only as
many vertex attributes as the array will hold are copied.vertexAttrNum
- vertex attribute number in this geometry arrayindex
- starting source vertex index in this geometry arrayvertexAttrs
- destination array of Point4f objects that will
receive the vertex attributesCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphArrayIndexOutOfBoundsException
- if the index or
vertexAttrNum is out of range.IllegalStateException
- if the data mode for this geometry
array object is BY_REFERENCE
.IllegalStateException
- if the size of the specified
vertex attribute number is not 4.public void setInitialCoordIndex(int initialCoordIndex)
BY_REFERENCE
and is not INTERLEAVED.initialCoordIndex
- the new initial coordinate index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
or if the data mode
is INTERLEAVED
.
IllegalArgumentException
- if either of the following are
true:
initialCoordIndex < 0
orinitialCoordIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if
the CoordRef array is non-null and:
CoordRef.length
< num_words *
(initialCoordIndex + validVertexCount
)setCoordRef
is used.public int getInitialCoordIndex()
BY_REFERENCE
and is not INTERLEAVED.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setInitialColorIndex(int initialColorIndex)
BY_REFERENCE
and is not INTERLEAVED.initialColorIndex
- the new initial color index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
or if the data mode
is INTERLEAVED
.
IllegalArgumentException
- if either of the following are
true:
initialColorIndex < 0
orinitialColorIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if
the ColorRef array is non-null and:
ColorRef.length
< num_words *
(initialColorIndex + validVertexCount
)setColorRef
is used.public int getInitialColorIndex()
BY_REFERENCE
and is not INTERLEAVED.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setInitialNormalIndex(int initialNormalIndex)
BY_REFERENCE
and is not INTERLEAVED.initialNormalIndex
- the new initial normal index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
or if the data mode
is INTERLEAVED
.
IllegalArgumentException
- if either of the following are
true:
initialNormalIndex < 0
orinitialNormalIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if normals
the NormalRef array is non-null and:
NormalRef.length
< num_words *
(initialNormalIndex + validVertexCount
)setNormalRef
is used.public int getInitialNormalIndex()
BY_REFERENCE
and is not INTERLEAVED.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setInitialTexCoordIndex(int texCoordSet, int initialTexCoordIndex)
BY_REFERENCE
and is not INTERLEAVED.texCoordSet
- texture coordinate set in this geometry arrayinitialTexCoordIndex
- the new initial texture coordinate index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
or if the data mode
is INTERLEAVED
.
IllegalArgumentException
- if either of the following are
true:
initialTexCoordIndex < 0
orinitialTexCoordIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if
the TexCoordRef array is non-null and:
TexCoordRef.length
< num_words *
(initialTexCoordIndex + validVertexCount
)setTexCoordRef
is used.
ArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if texCoordSet is out of range.public int getInitialTexCoordIndex(int texCoordSet)
BY_REFERENCE
and is not INTERLEAVED.texCoordSet
- texture coordinate set in this geometry arrayArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or if texCoordSet is out of range.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setInitialVertexAttrIndex(int vertexAttrNum, int initialVertexAttrIndex)
BY_REFERENCE
and is not INTERLEAVED.vertexAttrNum
- vertex attribute number in this geometry arrayinitialVertexAttrIndex
- the new initial vertex attribute index.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graph
IllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
or if the data mode
is INTERLEAVED
.
IllegalArgumentException
- if either of the following are
true:
initialVertexAttrIndex < 0
orinitialVertexAttrIndex + validVertexCount > vertexCount
ArrayIndexOutOfBoundsException
- if
the VertexAttrRef array is non-null and:
VertexAttrRef.length
< num_words *
(initialVertexAttrIndex + validVertexCount
)ArrayIndexOutOfBoundsException
- if vertexAttrNum is
out of range.public int getInitialVertexAttrIndex(int vertexAttrNum)
BY_REFERENCE
and is not INTERLEAVED.vertexAttrNum
- vertex attribute number in this geometry arrayArrayIndexOutOfBoundsException
- if vertexAttrNum is
out of range.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphpublic void setCoordRefBuffer(J3DBuffer coords)
coords
- a J3DBuffer object to which a reference will be set.
The buffer contains an NIO buffer of 3*n float or
double values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer or a java.nio.DoubleBuffer object.ArrayIndexOutOfBoundsException
- if
coords.getBuffer().limit() <
3 * (initialCoordIndex + validVertexCount)
.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the coordinate index array is greater than or equal to the
number of vertices defined by the coords object,
coords.getBuffer().limit() / 3
.public J3DBuffer getCoordRefBuffer()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.public void setCoordRefFloat(float[] coords)
coordRefFloat
, coordRefDouble
,
coordRef3f
, or coordRef3d
may be
non-null (or they may all be null). An attempt to set more
than one of these attributes to a non-null reference will
result in an exception being thrown. If all coordinate array
references are null, the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.coords
- an array of 3*n values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other coordinate reference is also non-null.ArrayIndexOutOfBoundsException
- if
coords.length < 3 * (initialCoordIndex + validVertexCount)
.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the coordinate index array is greater than or equal to the
number of vertices defined by the coords array,
coords.length / 3
.public float[] getCoordRefFloat()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.public void setCoordRefDouble(double[] coords)
coordRefFloat
, coordRefDouble
,
coordRef3f
, or coordRef3d
may be
non-null (or they may all be null). An attempt to set more
than one of these attributes to a non-null reference will
result in an exception being thrown. If all coordinate array
references are null, the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.coords
- an array of 3*n values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other coordinate reference is also non-null.ArrayIndexOutOfBoundsException
- if
coords.length < 3 * (initialCoordIndex + validVertexCount)
.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the coordinate index array is greater than or equal to the
number of vertices defined by the coords array,
coords.length / 3
.public double[] getCoordRefDouble()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.public void setCoordRef3f(Point3f[] coords)
public Point3f[] getCoordRef3f()
public void setCoordRef3d(Point3d[] coords)
public Point3d[] getCoordRef3d()
public void setColorRefBuffer(J3DBuffer colors)
COLOR_3
or
COLOR_4
), the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.colors
- a J3DBuffer object to which a reference will be set.
The buffer contains an NIO buffer of 3*n or 4*n
float or byte values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer or a java.nio.ByteBuffer object.ArrayIndexOutOfBoundsException
- if none of the
COLOR
bits are set in the
vertexFormat
, or if
colors.getBuffer().limit() <
num_words *
(initialColorIndex + validVertexCount)
,
where num_words is 3 or 4 depending on the vertex color format.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the color index array is greater than or equal to the
number of vertices defined by the colors object,
colors.getBuffer().limit() /
num_words.public J3DBuffer getColorRefBuffer()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.public void setColorRefFloat(float[] colors)
colorRefFloat
, colorRefByte
,
colorRef3f
, colorRef4f
,
colorRef3b
, or colorRef4b
may be
non-null (or they may all be null). An attempt to set more
than one of these attributes to a non-null reference will
result in an exception being thrown. If all color array
references are null and colors are enabled (that is, the
vertexFormat includes either COLOR_3
or
COLOR_4
), the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.colors
- an array of 3*n or 4*n values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other color reference is also non-null.ArrayIndexOutOfBoundsException
- if none of the
COLOR
bits are set in the
vertexFormat
, or if
colors.length <
num_words *
(initialColorIndex + validVertexCount)
,
where num_words is 3 or 4 depending on the vertex color format.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the color index array is greater than or equal to the
number of vertices defined by the colors array,
colors.length /
num_words.public float[] getColorRefFloat()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.public void setColorRefByte(byte[] colors)
colorRefFloat
, colorRefByte
,
colorRef3f
, colorRef4f
,
colorRef3b
, or colorRef4b
may be
non-null (or they may all be null). An attempt to set more
than one of these attributes to a non-null reference will
result in an exception being thrown. If all color array
references are null and colors are enabled (that is, the
vertexFormat includes either COLOR_3
or
COLOR_4
), the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.colors
- an array of 3*n or 4*n values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other color reference is also non-null.ArrayIndexOutOfBoundsException
- if none of the
COLOR
bits are set in the
vertexFormat
, or if
colors.length <
num_words *
(initialColorIndex + validVertexCount)
,
where num_words is 3 or 4 depending on the vertex color format.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the color index array is greater than or equal to the
number of vertices defined by the colors array,
colors.length /
num_words.public byte[] getColorRefByte()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.public void setColorRef3f(Color3f[] colors)
public Color3f[] getColorRef3f()
public void setColorRef4f(Color4f[] colors)
public Color4f[] getColorRef4f()
public void setColorRef3b(Color3b[] colors)
public Color3b[] getColorRef3b()
public void setColorRef4b(Color4b[] colors)
public Color4b[] getColorRef4b()
public void setNormalRefBuffer(J3DBuffer normals)
NORMAL
), the
entire geometry array object is treated as if it were null--any
Shape3D or Morph node that uses this geometry array will not be
drawn.normals
- a J3DBuffer object to which a reference will be set.
The buffer contains an NIO buffer of 3*n float values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer object.ArrayIndexOutOfBoundsException
- if
NORMALS
bit is not set in the
vertexFormat
, or if
normals.getBuffer().limit() <
3 * (initialNormalIndex + validVertexCount)
.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the normal index array is greater than or equal to the
number of vertices defined by the normals object,
normals.getBuffer().limit() / 3
.public J3DBuffer getNormalRefBuffer()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.public void setNormalRefFloat(float[] normals)
normalRefFloat
or normalRef3f
may be
non-null (or they may all be null). An attempt to set more
than one of these attributes to a non-null reference will
result in an exception being thrown. If all normal array
references are null and normals are enabled (that is, the
vertexFormat includes
NORMAL
), the entire geometry array object is
treated as if it were null--any Shape3D or Morph node that uses
this geometry array will not be drawn.normals
- an array of 3*n values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other normal reference is also non-null.ArrayIndexOutOfBoundsException
- if
NORMALS
bit is not set in the
vertexFormat
, or if
normals.length < 3 * (initialNormalIndex + validVertexCount)
.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the normal index array is greater than or equal to the
number of vertices defined by the normals array,
normals.length / 3
.public float[] getNormalRefFloat()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.public void setNormalRef3f(Vector3f[] normals)
public Vector3f[] getNormalRef3f()
public void setTexCoordRefBuffer(int texCoordSet, J3DBuffer texCoords)
TEXTURE_COORDINATE_2
,
TEXTURE_COORDINATE_3
, or
TEXTURE_COORDINATE_4
), the entire geometry
array object is treated as if it were null--any Shape3D or
Morph node that uses this geometry array will not be drawn.texCoordSet
- texture coordinate set in this geometry arraytexCoords
- a J3DBuffer object to which a reference will be set.
The buffer contains an NIO buffer of 2*n, 3*n or
4*n float values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer object.ArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
, or if texCoordSet is out of range,
or if
texCoords.getBuffer().limit() <
num_words
* (initialTexCoordIndex + validVertexCount)
,
where num_words is 2, 3, or 4 depending on the vertex
texture coordinate format.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the texture coordinate index array is greater than or equal to the
number of vertices defined by the texCoords object,
texCoords.getBuffer().limit() /
num_words.public J3DBuffer getTexCoordRefBuffer(int texCoordSet)
texCoordSet
- texture coordinate set in this geometry arrayCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.ArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or texCoordSet is out of range.public void setTexCoordRefFloat(int texCoordSet, float[] texCoords)
texCoordRefFloat
, texCoordRef2f
, or
texCoordRef3f
may be non-null (or they may all be
null). An attempt to set more than one of these attributes to
a non-null reference will result in an exception being thrown.
If all texCoord array references are null and texture
coordinates are enabled (that is, the vertexFormat includes
TEXTURE_COORDINATE_2
,
TEXTURE_COORDINATE_3
, or
TEXTURE_COORDINATE_4
), the entire geometry
array object is treated as if it were null--any Shape3D or
Morph node that uses this geometry array will not be drawn.texCoordSet
- texture coordinate set in this geometry arraytexCoords
- an array of 2*n, 3*n or
4*n values to
which a reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the specified array is
non-null and any other texCoord reference is also non-null.ArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
, or if texCoordSet is out of range,
or if
texCoords.length <
num_words *
(initialTexCoordIndex + validVertexCount)
,
where num_words is 2, 3, or 4 depending on the vertex
texture coordinate format.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the texture coordinate index array is greater than or equal to the
number of vertices defined by the texCoords array,
texCoords.length /
num_words.public float[] getTexCoordRefFloat(int texCoordSet)
texCoordSet
- texture coordinate set in this geometry arrayCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.ArrayIndexOutOfBoundsException
- if none of the
TEXTURE_COORDINATE
bits are set in the
vertexFormat
or texCoordSet is out of range.public void setTexCoordRef2f(int texCoordSet, TexCoord2f[] texCoords)
public TexCoord2f[] getTexCoordRef2f(int texCoordSet)
public void setTexCoordRef3f(int texCoordSet, TexCoord3f[] texCoords)
public TexCoord3f[] getTexCoordRef3f(int texCoordSet)
public void setVertexAttrRefBuffer(int vertexAttrNum, J3DBuffer vertexAttrs)
VERTEX_ATTRIBUTES
), the entire geometry array
object is treated as if it were null--any Shape3D node that
uses this geometry array will not be drawn.vertexAttrNum
- vertex attribute number in this geometry arrayvertexAttrs
- a J3DBuffer object to which a reference will
be set. The buffer contains an NIO buffer of 1*n,
2*n, 3*n, or 4*n float values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer object.ArrayIndexOutOfBoundsException
- if vertexAttrNum is out of
range, or if
vertexAttrs.getBuffer().limit() <
num_words
* (initialVertexAttrIndex + validVertexCount)
,
where num_words is the size of the specified
vertexAttrNum (1, 2, 3, or 4).ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the vertex attribute index array is greater than or equal to the
number of vertices defined by the vertexAttrs object,
vertexAttrs.getBuffer().limit() /
num_words.public J3DBuffer getVertexAttrRefBuffer(int vertexAttrNum)
vertexAttrNum
- vertex attribute number in this geometry arrayCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is not USE_NIO_BUFFER
, or is INTERLEAVED
.ArrayIndexOutOfBoundsException
- if vertexAttrNum is out
of range.public void setVertexAttrRefFloat(int vertexAttrNum, float[] vertexAttrs)
VERTEX_ATTRIBUTES
), the entire geometry array
object is treated as if it were null--any Shape3D node that
uses this geometry array will not be drawn.vertexAttrNum
- vertex attribute number in this geometry arrayvertexAttrs
- an array of 1*n, 2*n,
3*n, or 4*n values to which a reference will be
set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.ArrayIndexOutOfBoundsException
- if vertexAttrNum is
out of range, or if
vertexAttrs.length <
num_words *
(initialVertexAttrIndex + validVertexCount)
,
where num_words is the size of the specified
vertexAttrNum (1, 2, 3, or 4).ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the vertex attribute index array is greater than or equal to the
number of vertices defined by the vertexAttrs array,
vertexAttrs.length /
num_words.public float[] getVertexAttrRefFloat(int vertexAttrNum)
vertexAttrNum
- vertex attribute number in this geometry arrayCapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not BY_REFERENCE
,
is USE_NIO_BUFFER
, or is INTERLEAVED
.ArrayIndexOutOfBoundsException
- if vertexAttrNum is
out of range.public void setInterleavedVertices(float[] vertexData)
TEXTURE_COORDINATE_2
, 3 words per texture
coordinate set per vertex for
TEXTURE_COORDINATE_3
or 4 words per texture
coordinate set per vertex for
TEXTURE_COORDINATE_4
. Colors, if enabled, use 3
words per vertex for COLOR_3
or 4 words per vertex
for COLOR_4
. Normals, if enabled, use 3 words per
vertex. Positional coordinates, which are always enabled, use
3 words per vertex. For example, the format of interleaved
data for a GeometryArray object whose vertexFormat includes
COORDINATES
, COLOR_3
, and
NORMALS
would be: red, green,
blue, Nx, Ny, Nz, x,
y, z. All components of a vertex are stored in
adjacent memory locations. The first component of vertex 0 is
stored beginning at index 0 in the array. The first component
of vertex 1 is stored beginning at index
words_per_vertex in the array. The total number of
words needed to store n vertices is
words_per_vertex*n.vertexData
- an array of vertex values to which a
reference will be set.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not INTERLEAVED
or is USE_NIO_BUFFER
.ArrayIndexOutOfBoundsException
- if
vertexData.length
< words_per_vertex *
(initialVertexIndex + validVertexCount
),
where words_per_vertex depends on which formats are enabled.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the index array associated with any of the enabled vertex
components (coord, color, normal, texcoord) is greater than or
equal to the number of vertices defined by the vertexData
array,
vertexData.length /
words_per_vertex.public float[] getInterleavedVertices()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not INTERLEAVED
or is USE_NIO_BUFFER
.public void setInterleavedVertexBuffer(J3DBuffer vertexData)
TEXTURE_COORDINATE_2
, 3 words per texture
coordinate set per vertex for
TEXTURE_COORDINATE_3
or 4 words per texture
coordinate set per vertex for
TEXTURE_COORDINATE_4
. Colors, if enabled, use 3
words per vertex for COLOR_3
or 4 words per vertex
for COLOR_4
. Normals, if enabled, use 3 words per
vertex. Positional coordinates, which are always enabled, use
3 words per vertex. For example, the format of interleaved
data for a GeometryArray object whose vertexFormat includes
COORDINATES
, COLOR_3
, and
NORMALS
would be: red, green,
blue, Nx, Ny, Nz, x,
y, z. All components of a vertex are stored in
adjacent memory locations. The first component of vertex 0 is
stored beginning at index 0 in the buffer. The first component
of vertex 1 is stored beginning at index
words_per_vertex in the buffer. The total number of
words needed to store n vertices is
words_per_vertex*n.vertexData
- a J3DBuffer object to which a reference will be set.
The buffer contains an NIO float buffer of
words_per_vertex*n values.CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not INTERLEAVED
or is not USE_NIO_BUFFER
.IllegalArgumentException
- if the java.nio.Buffer
contained in the specified J3DBuffer is not a
java.nio.FloatBuffer object.ArrayIndexOutOfBoundsException
- if
vertexData.getBuffer().limit()
< words_per_vertex *
(initialVertexIndex + validVertexCount
),
where words_per_vertex depends on which formats are enabled.ArrayIndexOutOfBoundsException
- if this GeometryArray
object is a subclass of IndexedGeometryArray, and any element
in the range
[initialIndexIndex, initialIndexIndex+validIndexCount-1]
in the index array associated with any of the enabled vertex
components (coord, color, normal, texcoord) is greater than or
equal to the number of vertices defined by the vertexData
object,
vertexData.getBuffer().limit() /
words_per_vertex.public J3DBuffer getInterleavedVertexBuffer()
CapabilityNotSetException
- if the appropriate capability is
not set and this object is part of a live or compiled scene graphIllegalStateException
- if the data mode for this geometry
array object is not INTERLEAVED
or is not USE_NIO_BUFFER
.Copyright © 2016–2022 SciJava. All rights reserved.