|
Aviatrix3D 2.1.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.j3d.aviatrix3d.SceneGraphObject
org.j3d.aviatrix3d.NodeComponent
org.j3d.aviatrix3d.Geometry
org.j3d.renderer.aviatrix3d.nodes.BufferGeometry
public abstract class BufferGeometry
Base, unsafe, representation of geometry that uses NIO buffers directly from the user.
The code in this class is inherently unsafe in a multithreaded environment because the data structures used by the user are the references that the internal rendering also uses. That means a user can easily replace the values in the arrays without ever needing to go through the callback mechanism. The tradeoff this gives is reduced memory consumption and somewhat faster speed due to no longer needing to copy arrays into buffers every frame.
Field Summary | |
---|---|
protected static int |
ATTRIB_CLEAR
Mask to clear the shader vertex attributes setting |
protected static int |
ATTRIB_MASK
Mask to work out if shader vertex attributes are used |
protected int[] |
attribIds
Listing of the valid attribute IDs for rendering |
protected static int |
ATTRIBS
Edge values are shader vertex attributes in the data |
protected org.j3d.util.IntHashMap |
attributes
Map of the attribute Ids to their data (ref to user array). |
protected static int |
COLOR_3
RGB colour values are supplied in the data |
protected static int |
COLOR_4
RGBA colour values are supplied in the data |
protected static int |
COLOR_CLEAR
Mask to clear the per-vertex colour setting |
protected static int |
COLOR_MASK
Mask to work out if colours are used |
protected static int |
COLOR2
Secondary color values are supplied in the data |
protected static int |
COLOR2_CLEAR
Mask to clear the per-vertex secondary colour setting |
protected static int |
COLOR2_MASK
Mask to work out if secondary colours are used |
protected java.nio.FloatBuffer |
color2Buffer
Buffer for holding secondary color data |
protected java.nio.FloatBuffer |
colorBuffer
Buffer for holding colour data |
static int |
COORDINATE_2
2D Coordinate information is included in the vertex values |
static int |
COORDINATE_3
3D Coordinate information is included in the vertex values |
static int |
COORDINATE_4
4D Coordinate information is included in the vertex values |
protected static int |
COORDINATE_CLEAR
Mask to clear the coordinate setting |
protected static int |
COORDINATE_MASK
Mask to work out what coordinates are used |
protected static int |
EDGE_CLEAR
Mask to clear the edge flag setting |
protected static int |
EDGE_MASK
Mask to work out if edge flags are used |
protected static int |
EDGES
Edge values are supplied in the data |
protected static int |
FOG
Fog coordinate values are supplied in the data |
protected static int |
FOG_CLEAR
Mask to clear the fog coordinate setting |
protected static int |
FOG_MASK
Mask to work out if fog coordinates are used |
protected java.nio.FloatBuffer |
fogBuffer
Buffer for holding fog coordinate data |
protected static int |
NORMAL_CLEAR
Mask to clear the normal setting |
protected java.nio.FloatBuffer |
normalBuffer
Buffer for holding normal data |
protected static int |
NORMALS
Normal information is included in the vertex values |
protected int |
numCoords
Number of valid entries in the coordinate array |
protected int |
numTextureArrays
The number of valid texture arrays in the textures variable |
protected int |
numTextureSets
List of offsets into the texture array /** The number of texture sets to use from the textureSet array |
protected static int |
TEXTURE_CLEAR
Mask to clear the texture coordinate setting |
static int |
TEXTURE_COORDINATE_1
1D texture coordinates are included in the vertex values |
static int |
TEXTURE_COORDINATE_2
2D texture coordinates are included in the vertex values |
static int |
TEXTURE_COORDINATE_3
3D texture coordinates are included in the vertex values |
static int |
TEXTURE_COORDINATE_4
4D texture coordinates are included in the vertex values |
protected static int |
TEXTURE_COORDINATE_MULTI
Multiple sets of texture coordinates are included in the vertex values |
protected static int |
TEXTURE_COORDINATE_SINGLE
Single set of texture coordinates are included in the vertex values |
protected static int |
TEXTURE_MASK
Mask to work out if texture coordinates are used |
protected static int |
TEXTURE_SET_AVAILABLE
Has a valid texture set provided |
protected static int |
TEXTURE_SET_CLEAR
Has a valid texture set provided |
protected java.nio.FloatBuffer[] |
textureBuffer
Buffer for holding texture coordinate data |
protected int[] |
textureSets
The texture set map array that describes how to map the arrays |
protected int[] |
textureTypes
Flags for the texture type for each array. |
protected java.nio.FloatBuffer |
vertexBuffer
Buffer for holding vertex data |
protected int |
vertexFormat
The format of the geometry used |
protected float[] |
wkPolygon
Working places for a single quad/triangle |
Fields inherited from class org.j3d.aviatrix3d.Geometry |
---|
bounds, implicitBounds, internalUpdater, INVALID_BOUNDS, lastParentList, parentList, pickFlags, validAlpha |
Fields inherited from class org.j3d.aviatrix3d.NodeComponent |
---|
lastParent, liveCount |
Fields inherited from class org.j3d.aviatrix3d.SceneGraphObject |
---|
alive, LISTENER_SET_TIMING_ERR_PROP, updateHandler |
Fields inherited from interface org.j3d.aviatrix3d.picking.PickableObject |
---|
COLLIDABLE_OBJECT, GENERAL_OBJECT, PROXIMITY_OBJECT, VISIBLE_OBJECT |
Fields inherited from interface org.j3d.aviatrix3d.picking.PickTarget |
---|
CUSTOM_PICK_TYPE, GROUP_PICK_TYPE, LEAF_PICK_TYPE, SINGLE_PICK_TYPE |
Constructor Summary | |
---|---|
protected |
BufferGeometry()
/** Constructs an instance with pre-defined values with default values. |
Method Summary | |
---|---|
protected void |
clearVertexState(javax.media.opengl.GL gl)
Convenience method to clear the previously set state in the rendering pipeline. |
void |
getColors(java.nio.FloatBuffer col)
Retrieve the colours that are currently set. |
void |
getFogCoordinates(java.nio.FloatBuffer fogs)
Retrieve the fog coordinates that are currently set. |
void |
getNormals(java.nio.FloatBuffer n)
Retrieve the normals that are currently set. |
void |
getSecondaryColors(java.nio.FloatBuffer cols)
Retrieve the secondary colors that are currently set. |
void |
getTextureCoordinates(java.nio.FloatBuffer[] coords)
Retrieve the texture coordinates that are currently set. |
int |
getValidVertexCount()
Get the number of vertices that are valid in the geometry arrays. |
int |
getVertexType()
Get the current vertex format type - 2D, 3D, or 4D. |
void |
getVertices(java.nio.FloatBuffer vertices)
Retrieve the vertices that are currently set. |
protected void |
initPolygonDetails(int numCoords)
Initialize the internal arrays to a given size for the picking. |
boolean |
is2D()
Check to see whether this shape is something that represents 2D or 3D geometry. |
protected boolean |
isVisible()
Check to see if this geometry is making the geometry visible or not. |
protected boolean |
ray3DQuadChecked(float[] origin,
float[] direction,
float length,
float[] dataOut)
Private version of the ray - Polygon intersection test that does not do any bounds checking on arrays and assumes everything is correct. |
protected boolean |
ray3DTriangleChecked(float[] origin,
float[] direction,
float length,
float[] dataOut)
Private version of the ray - Polygon intersection test that does not do any bounds checking on arrays and assumes everything is correct. |
protected void |
recomputeBounds()
Internal method to recalculate the implicit bounds of this Node. |
void |
setAttributes(int index,
int size,
java.nio.ByteBuffer attribs,
boolean normalise,
boolean signed)
Set the attribute values at the given index to a new value. |
void |
setAttributes(int index,
int size,
java.nio.DoubleBuffer attribs,
boolean normalise)
Set the attribute values at the given index to a new value. |
void |
setAttributes(int index,
int size,
java.nio.FloatBuffer attribs,
boolean normalise)
Set the attribute values at the given index to a new value. |
void |
setAttributes(int index,
int size,
java.nio.IntBuffer attribs,
boolean normalise,
boolean signed)
Set the attribute values at the given index to a new value. |
void |
setAttributes(int index,
int size,
java.nio.ShortBuffer attribs,
boolean normalise,
boolean signed)
Set the attribute values at the given index to a new value. |
void |
setColors(boolean hasAlpha,
java.nio.FloatBuffer colors)
Set the color array reference to the new array. |
void |
setFogCoordinates(java.nio.FloatBuffer coords)
Set the fog coordinate reference to the new array. |
protected void |
setLive(boolean state)
Notification that this object is live now. |
void |
setNormals(java.nio.FloatBuffer normals)
Set the normal array reference to the new array. |
void |
setSecondaryColors(java.nio.FloatBuffer colors)
Set the secondary color reference to the new array. |
void |
setTextureCoordinates(int[] types,
java.nio.FloatBuffer[] texCoords)
Replace all the texture array reference with the new array. |
void |
setTextureCoordinates(int[] types,
java.nio.FloatBuffer[] texCoords,
int numSets)
Replace all the texture array reference to the new array. |
void |
setTextureCoordinates(int type,
int textureSet,
java.nio.FloatBuffer texCoords)
Set a single texture array reference to the new array. |
void |
setTextureSetMap(int[] set)
Set the texture set map to the new mapping. |
void |
setTextureSetMap(int[] set,
int numValid)
Set the texture set map to the new mapping. |
void |
setValidVertexCount(int count)
Set the number of vertices to the new number. |
protected void |
setVertexState(javax.media.opengl.GL gl)
Convenience method to pass everything to the rendering pipeline. |
void |
setVertices(int type,
java.nio.FloatBuffer vertices)
Set the vertex array reference to the new array. |
void |
setVertices(int type,
java.nio.FloatBuffer vertices,
int numValid)
Set the vertex array reference to the new array. |
protected void |
updateBounds()
Update this node's bounds and then call the parent to update it's bounds. |
Methods inherited from class org.j3d.aviatrix3d.Geometry |
---|
addParent, boundsChanged, checkPickMask, getBounds, getPickableBounds, getPickMask, getPickTargetType, hasTransparency, markBoundsDirty, pickBatch, pickLineRay, pickLineSegment, pickSingle, removeParent, setBounds, setPickMask |
Methods inherited from class org.j3d.aviatrix3d.NodeComponent |
---|
addParent, getParents, numParents, removeParent |
Methods inherited from class org.j3d.aviatrix3d.SceneGraphObject |
---|
checkForCyclicChild, checkForCyclicParent, dataChanged, getAppUpdateWriteTimingMessage, getBoundsWriteTimingMessage, getDataWriteTimingMessage, getUserData, isLive, setUpdateHandler, setUserData |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.j3d.aviatrix3d.rendering.GeometryRenderable |
---|
hasTransparency, render |
Methods inherited from interface org.j3d.aviatrix3d.rendering.Renderable |
---|
equals |
Methods inherited from interface java.lang.Comparable |
---|
compareTo |
Field Detail |
---|
public static final int COORDINATE_2
public static final int COORDINATE_3
public static final int COORDINATE_4
protected static final int COORDINATE_MASK
protected static final int COORDINATE_CLEAR
protected static final int NORMALS
protected static final int NORMAL_CLEAR
protected static final int TEXTURE_MASK
protected static final int TEXTURE_CLEAR
protected static final int TEXTURE_COORDINATE_SINGLE
protected static final int TEXTURE_COORDINATE_MULTI
protected static final int TEXTURE_SET_AVAILABLE
protected static final int TEXTURE_SET_CLEAR
protected static final int COLOR_MASK
protected static final int COLOR_CLEAR
protected static final int COLOR_3
protected static final int COLOR_4
protected static final int EDGE_MASK
protected static final int EDGE_CLEAR
protected static final int EDGES
protected static final int COLOR2_MASK
protected static final int COLOR2_CLEAR
protected static final int COLOR2
protected static final int FOG_MASK
protected static final int FOG_CLEAR
protected static final int FOG
protected static final int ATTRIB_MASK
protected static final int ATTRIB_CLEAR
protected static final int ATTRIBS
public static final int TEXTURE_COORDINATE_1
public static final int TEXTURE_COORDINATE_2
public static final int TEXTURE_COORDINATE_3
public static final int TEXTURE_COORDINATE_4
protected float[] wkPolygon
protected java.nio.FloatBuffer vertexBuffer
protected java.nio.FloatBuffer colorBuffer
protected java.nio.FloatBuffer normalBuffer
protected java.nio.FloatBuffer fogBuffer
protected java.nio.FloatBuffer color2Buffer
protected java.nio.FloatBuffer[] textureBuffer
protected int numCoords
protected int numTextureArrays
protected int[] textureSets
protected int[] textureTypes
protected int numTextureSets
protected org.j3d.util.IntHashMap attributes
protected int[] attribIds
protected int vertexFormat
Constructor Detail |
---|
protected BufferGeometry()
Method Detail |
---|
protected void setLive(boolean state)
setLive
in class SceneGraphObject
state
- true if this should be marked as live nowprotected boolean isVisible()
isVisible
in class Geometry
public boolean is2D()
EffectRenderable
, while 3D is.
Note that this can be changed depending on the type of geometry itself.
A Shape3D node with an IndexedLineArray that only has 2D coordinates is
as much a 2D geometry as a raster object.
is2D
in class Geometry
public int getVertexType()
public int getValidVertexCount()
public void setValidVertexCount(int count) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the bounds changed callback.
count
- The new number, must be >= 0
java.lang.IllegalArgumentException
- The number is negative
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener bounds changed callback methodpublic void setVertices(int type, java.nio.FloatBuffer vertices) throws InvalidWriteTimingException
In a live scene graph, can only be called during the bounds changed callback.
type
- The number of dimensions to the coordinates - 2D, 3D or 4Dvertices
- The new array reference to use for vertex information
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener bounds changed callback methodpublic void getVertices(java.nio.FloatBuffer vertices)
vertices
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setVertices(int type, java.nio.FloatBuffer vertices, int numValid) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the bounds changed callback.
type
- The number of dimensions to the coordinates - 2D, 3D or 4Dvertices
- The new array reference to use for vertex informationnumValid
- The number of valid values to use in the array
java.lang.IllegalArgumentException
- The number is negative
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener bounds changed callback methodpublic void setColors(boolean hasAlpha, java.nio.FloatBuffer colors) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
hasAlpha
- true if this is 4 component colour, false for 3 componentcolors
- The new array reference to use for color information
java.lang.IllegalArgumentException
- The length of the colors array is less
than the number of declared vertices
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic void getColors(java.nio.FloatBuffer col)
col
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setNormals(java.nio.FloatBuffer normals) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
normals
- The new array reference to use for normal information
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void getNormals(java.nio.FloatBuffer n)
n
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setTextureSetMap(int[] set) throws InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
set
- The new set to use
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic void setTextureSetMap(int[] set, int numValid) throws InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
set
- The new set to usenumValid
- The length of the set to use
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback methodpublic void setTextureCoordinates(int type, int textureSet, java.nio.FloatBuffer texCoords) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
type
- The texture type - 1D, 2D, 3D, 4D.textureSet
- The set to update with these arraystexCoords
- The new array reference to use for vertex information
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener callback method
java.lang.IllegalArgumentException
public void setTextureCoordinates(int[] types, java.nio.FloatBuffer[] texCoords) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
types
- The sets of texture coordinate types that match each arraytexCoords
- The new array reference to use for vertex information
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void setTextureCoordinates(int[] types, java.nio.FloatBuffer[] texCoords, int numSets) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
types
- The sets of texture coordinate types that match each arraytexCoords
- The new array reference to use for vertex informationnumSets
- The number of texture sets that are valid
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void getTextureCoordinates(java.nio.FloatBuffer[] coords)
coords
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setFogCoordinates(java.nio.FloatBuffer coords) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
glFogi(GL_FOG_COORDINATE_SOURCE, GL_FOG_COORDINATE)
before
setting these values and then clear it afterwards.
In a live scene graph, can only be called during the data changed callback.
coords
- The new array reference to use for z depth values
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void getFogCoordinates(java.nio.FloatBuffer fogs)
fogs
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setSecondaryColors(java.nio.FloatBuffer colors) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
In a live scene graph, can only be called during the data changed callback.
colors
- The new array reference to use for secondary color
information
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener callback method
java.lang.IllegalArgumentException
public void getSecondaryColors(java.nio.FloatBuffer cols)
cols
- The array to copy the values into
java.lang.ArrayIndexOutOfBoundsException
- The provided array is too shortpublic void setAttributes(int index, int size, java.nio.FloatBuffer attribs, boolean normalise) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
No checks are made on the index value and it is assumed the user
provides valid values for this after binding the index in the
ShaderProgram
class.
Note: If the index provided is zero, then this attribute will replace the vertex values (eg a glVertex() call) with the attribute value, as per the OpenGL specification.
In a live scene graph, can only be called during the data changed callback.
index
- The attribute index to set these values forsize
- The number of components: -1, 1, 2, 3 or 4attribs
- The new array reference to use for attribute informationnormalise
- true if the values should be normalised [-1.0, 1.0]
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void setAttributes(int index, int size, java.nio.DoubleBuffer attribs, boolean normalise) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
No checks are made on the index value and it is assumed the user
provides valid values for this after binding the index in the
ShaderProgram
class.
Note: If the index provided is zero, then this attribute will replace the vertex values (eg a glVertex() call) with the attribute value, as per the OpenGL specification.
In a live scene graph, can only be called during the data changed callback.
index
- The attribute index to set these values forsize
- The number of components: -1, 1, 2, 3 or 4attribs
- The new array reference to use for attribute informationnormalise
- true if the values should be normalised [-1.0, 1.0]
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void setAttributes(int index, int size, java.nio.IntBuffer attribs, boolean normalise, boolean signed) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
No checks are made on the index value and it is assumed the user
provides valid values for this after binding the index in the
ShaderProgram
class.
Note: If the index provided is zero, then this attribute will replace the vertex values (eg a glVertex() call) with the attribute value, as per the OpenGL specification.
In a live scene graph, can only be called during the data changed callback.
index
- The attribute index to set these values forsize
- The number of components: -1, 1, 2, 3 or 4attribs
- The new array reference to use for attribute informationnormalise
- true if the values should be normalised [-1.0, 1.0]signed
- false if this is unsigned ints, true for signed values
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void setAttributes(int index, int size, java.nio.ShortBuffer attribs, boolean normalise, boolean signed) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
No checks are made on the index value and it is assumed the user
provides valid values for this after binding the index in the
ShaderProgram
class.
Note: If the index provided is zero, then this attribute will replace the vertex values (eg a glVertex() call) with the attribute value, as per the OpenGL specification.
In a live scene graph, can only be called during the data changed callback.
index
- The attribute index to set these values forsize
- The number of components: -1, 1, 2, 3 or 4attribs
- The new array reference to use for attribute informationnormalise
- true if the values should be normalised [-1.0, 1.0]signed
- false if this is unsigned shorts, true for signed values
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
public void setAttributes(int index, int size, java.nio.ByteBuffer attribs, boolean normalise, boolean signed) throws java.lang.IllegalArgumentException, InvalidWriteTimingException
No checks are made on the index value and it is assumed the user
provides valid values for this after binding the index in the
ShaderProgram
class.
Note: If the index provided is zero, then this attribute will replace the vertex values (eg a glVertex() call) with the attribute value, as per the OpenGL specification.
In a live scene graph, can only be called during the data changed callback.
index
- The attribute index to set these values forsize
- The number of components: -1, 1, 2, 3 or 4attribs
- The new array reference to use for attribute informationnormalise
- true if the values should be normalised [-1.0, 1.0]signed
- false if this is unsigned shorts, true for signed values
InvalidWriteTimingException
- An attempt was made to write outside
of the NodeUpdateListener data changed callback method
java.lang.IllegalArgumentException
protected void setVertexState(javax.media.opengl.GL gl)
glDrawArrays()
or equivalent.
gl
- The gl context to draw withprotected void clearVertexState(javax.media.opengl.GL gl)
glDrawArrays()
or equivalent.
gl
- The gl context to draw withprotected void updateBounds()
updateBounds
in class Geometry
protected void recomputeBounds()
recomputeBounds
in class Geometry
protected void initPolygonDetails(int numCoords)
numCoords
- The number of coordinates in the polygonprotected boolean ray3DTriangleChecked(float[] origin, float[] direction, float length, float[] dataOut)
This method does not use wkPoint.
origin
- The origin of the raydirection
- The direction of the raylength
- An optional length for to make the ray a segment. If
the value is zero, it is ignoreddataOut
- The intersection coordinates and more
protected boolean ray3DQuadChecked(float[] origin, float[] direction, float length, float[] dataOut)
This method does not use wkPoint.
origin
- The origin of the raydirection
- The direction of the raylength
- An optional length for to make the ray a segment. If
the value is zero, it is ignoreddataOut
- The intersection coordinates and more
|
Aviatrix3D 2.1.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |