javax.media.j3d
Class GeometryRetained

java.lang.Object
  extended by javax.media.j3d.IndexedObject
      extended by javax.media.j3d.SceneGraphObjectRetained
          extended by javax.media.j3d.NodeComponentRetained
              extended by javax.media.j3d.GeometryRetained
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
CompressedGeometryRetained, GeometryArrayRetained, RasterRetained, Text3DRetained

abstract class GeometryRetained
extends NodeComponentRetained


Field Summary
(package private)  boolean boundsDirty
           
(package private)  int cachedChangedFrequent
           
(package private)  Point3d centroid
           
(package private) static int COMPRESS_TYPE
           
(package private)  int computeGeoBounds
           
(package private) static double EPSILON
           
(package private) static int GEO_TYPE_COMPRESSED
           
(package private) static int GEO_TYPE_GEOMETRYARRAY
           
(package private) static int GEO_TYPE_INDEXED_LINE_SET
           
(package private) static int GEO_TYPE_INDEXED_LINE_STRIP_SET
           
(package private) static int GEO_TYPE_INDEXED_POINT_SET
           
(package private) static int GEO_TYPE_INDEXED_QUAD_SET
           
(package private) static int GEO_TYPE_INDEXED_TRI_FAN_SET
           
(package private) static int GEO_TYPE_INDEXED_TRI_SET
           
(package private) static int GEO_TYPE_INDEXED_TRI_STRIP_SET
           
(package private) static int GEO_TYPE_LINE_SET
           
(package private) static int GEO_TYPE_LINE_STRIP_SET
           
(package private) static int GEO_TYPE_NONE
           
(package private) static int GEO_TYPE_POINT_SET
           
(package private) static int GEO_TYPE_QUAD_SET
           
(package private) static int GEO_TYPE_RASTER
           
(package private) static int GEO_TYPE_TEXT3D
           
(package private) static int GEO_TYPE_TOTAL
           
(package private) static int GEO_TYPE_TRI_FAN_SET
           
(package private) static int GEO_TYPE_TRI_SET
           
(package private) static int GEO_TYPE_TRI_STRIP_SET
           
(package private)  BoundingBox geoBounds
           
(package private)  GeometryLock geomLock
           
(package private)  int geoType
           
(package private)  int isDirty
           
(package private)  boolean isEditable
           
(package private) static int LINE_TYPE
           
(package private)  java.lang.Object liveStateLock
           
(package private)  GeometryRetained mirrorGeometry
           
(package private)  int nativeId
           
(package private)  boolean noAlpha
           
(package private) static int POINT_TYPE
           
(package private) static int QUAD_TYPE
           
(package private) static int RASTER_TYPE
           
(package private)  boolean recompCentroid
           
(package private) static int TEXT3D_TYPE
           
(package private) static int TRIANGLE_TYPE
           
(package private)  java.util.ArrayList universeList
           
(package private)  java.util.ArrayList<java.util.ArrayList<Shape3DRetained>> userLists
           
 
Fields inherited from class javax.media.j3d.NodeComponentRetained
changedFrequent, compChanged, duplicateOnCloneTree, mirror, refCnt, refCount, users
 
Fields inherited from class javax.media.j3d.SceneGraphObjectRetained
DONT_MERGE, inBackgroundGroup, inSetLive, MERGE, MERGE_DONE, mergeFlag, onUpdateList, source
 
Fields inherited from class javax.media.j3d.IndexedObject
listIdx
 
Constructor Summary
GeometryRetained()
           
 
Method Summary
(package private)  void addUser(Shape3DRetained s)
           
(package private)  boolean canBeInDisplayList(boolean alphaEditable)
           
(package private) abstract  void computeBoundingBox()
           
(package private)  void computeCentroid()
           
(package private)  void decrComputeGeoBounds()
           
(package private)  void doSetLive(boolean inBackgroundGroup, int refCount)
          This setLive routine calls the superclass's method when reference count is 1
(package private) abstract  void execute(Canvas3D cv, RenderAtom ra, boolean isNonUniformScale, boolean updateAlpha, float alpha, int screen, boolean ignoreVertexColors)
           
(package private) abstract  int getClassType()
           
(package private)  int getVertexFormat()
          This method should return an int indicating the format of the vertices, if any, stored in the geometry.
(package private)  void incrComputeGeoBounds()
           
(package private) abstract  boolean intersect(Bounds targetBound)
           
(package private) abstract  boolean intersect(PickShape pickShape, PickInfo pickInfo, int flags, Point3d iPnt, GeometryRetained geom, int geomIndex)
           
(package private) abstract  boolean intersect(Point3d[] pnts)
           
(package private)  boolean intersect(Transform3D thisLocalToVworld, Bounds targetBound)
           
(package private) abstract  boolean intersect(Transform3D thisToOtherVworld, GeometryRetained geom)
           
(package private)  boolean intersect(Transform3D thisLocalToVworld, Transform3D otherLocalToVworld, GeometryRetained geom)
           
(package private)  boolean isEquivalenceClass(GeometryRetained geometry)
           
(package private)  void removeUser(Shape3DRetained s)
           
(package private)  void setLive(boolean inBackgroundGroup, int refCount)
           
(package private)  void storeInterestData(PickInfo pickInfo, int flags, GeometryRetained geom, int geomIndex, int[] vtxIndexArr, Point3d iPnt, double dist)
           
(package private) abstract  void update()
           
 void updateObject()
           
 
Methods inherited from class javax.media.j3d.NodeComponentRetained
addAMirrorUser, addUser, clearLive, clone, copyMirrorUsers, createMirrorObject, decRefCnt, getDuplicateOnCloneTree, getInImmCtx, incRefCnt, initMirrorObject, notifyUsers, removeAMirrorUser, removeMirrorUsers, removeUser, set, setDuplicateOnCloneTree, setFrequencyChangeMask, setInImmCtx, updateMirrorObject
 
Methods inherited from class javax.media.j3d.SceneGraphObjectRetained
clearLive, clearLive, compile, doSetLive, doSetLive, getSource, getVirtualUniverse, handleFrequencyChange, isInSetLive, isStatic, markAsLive, merge, mergeTransform, setCompiled, setLive, setLive, setSource, traverse
 
Methods inherited from class javax.media.j3d.IndexedObject
getIdxUsed, incIdxUsed
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GEO_TYPE_NONE

static final int GEO_TYPE_NONE
See Also:
Constant Field Values

GEO_TYPE_QUAD_SET

static final int GEO_TYPE_QUAD_SET
See Also:
Constant Field Values

GEO_TYPE_TRI_SET

static final int GEO_TYPE_TRI_SET
See Also:
Constant Field Values

GEO_TYPE_POINT_SET

static final int GEO_TYPE_POINT_SET
See Also:
Constant Field Values

GEO_TYPE_LINE_SET

static final int GEO_TYPE_LINE_SET
See Also:
Constant Field Values

GEO_TYPE_TRI_STRIP_SET

static final int GEO_TYPE_TRI_STRIP_SET
See Also:
Constant Field Values

GEO_TYPE_TRI_FAN_SET

static final int GEO_TYPE_TRI_FAN_SET
See Also:
Constant Field Values

GEO_TYPE_LINE_STRIP_SET

static final int GEO_TYPE_LINE_STRIP_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_QUAD_SET

static final int GEO_TYPE_INDEXED_QUAD_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_TRI_SET

static final int GEO_TYPE_INDEXED_TRI_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_POINT_SET

static final int GEO_TYPE_INDEXED_POINT_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_LINE_SET

static final int GEO_TYPE_INDEXED_LINE_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_TRI_STRIP_SET

static final int GEO_TYPE_INDEXED_TRI_STRIP_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_TRI_FAN_SET

static final int GEO_TYPE_INDEXED_TRI_FAN_SET
See Also:
Constant Field Values

GEO_TYPE_INDEXED_LINE_STRIP_SET

static final int GEO_TYPE_INDEXED_LINE_STRIP_SET
See Also:
Constant Field Values

GEO_TYPE_RASTER

static final int GEO_TYPE_RASTER
See Also:
Constant Field Values

GEO_TYPE_TEXT3D

static final int GEO_TYPE_TEXT3D
See Also:
Constant Field Values

GEO_TYPE_COMPRESSED

static final int GEO_TYPE_COMPRESSED
See Also:
Constant Field Values

GEO_TYPE_TOTAL

static final int GEO_TYPE_TOTAL
See Also:
Constant Field Values

GEO_TYPE_GEOMETRYARRAY

static final int GEO_TYPE_GEOMETRYARRAY
See Also:
Constant Field Values

geoBounds

BoundingBox geoBounds

boundsDirty

boolean boundsDirty

computeGeoBounds

int computeGeoBounds

geoType

int geoType

nativeId

int nativeId

isDirty

int isDirty

geomLock

GeometryLock geomLock

liveStateLock

java.lang.Object liveStateLock

mirrorGeometry

GeometryRetained mirrorGeometry

isEditable

boolean isEditable

universeList

java.util.ArrayList universeList

userLists

java.util.ArrayList<java.util.ArrayList<Shape3DRetained>> userLists

noAlpha

boolean noAlpha

EPSILON

static final double EPSILON
See Also:
Constant Field Values

centroid

Point3d centroid

recompCentroid

boolean recompCentroid

cachedChangedFrequent

int cachedChangedFrequent

POINT_TYPE

static final int POINT_TYPE
See Also:
Constant Field Values

LINE_TYPE

static final int LINE_TYPE
See Also:
Constant Field Values

TRIANGLE_TYPE

static final int TRIANGLE_TYPE
See Also:
Constant Field Values

QUAD_TYPE

static final int QUAD_TYPE
See Also:
Constant Field Values

RASTER_TYPE

static final int RASTER_TYPE
See Also:
Constant Field Values

TEXT3D_TYPE

static final int TEXT3D_TYPE
See Also:
Constant Field Values

COMPRESS_TYPE

static final int COMPRESS_TYPE
See Also:
Constant Field Values
Constructor Detail

GeometryRetained

GeometryRetained()
Method Detail

update

abstract void update()

isEquivalenceClass

boolean isEquivalenceClass(GeometryRetained geometry)

incrComputeGeoBounds

void incrComputeGeoBounds()

decrComputeGeoBounds

void decrComputeGeoBounds()

addUser

void addUser(Shape3DRetained s)

removeUser

void removeUser(Shape3DRetained s)

updateObject

public void updateObject()

computeBoundingBox

abstract void computeBoundingBox()

setLive

void setLive(boolean inBackgroundGroup,
             int refCount)
Overrides:
setLive in class NodeComponentRetained

doSetLive

void doSetLive(boolean inBackgroundGroup,
               int refCount)
This setLive routine calls the superclass's method when reference count is 1

Overrides:
doSetLive in class NodeComponentRetained

execute

abstract void execute(Canvas3D cv,
                      RenderAtom ra,
                      boolean isNonUniformScale,
                      boolean updateAlpha,
                      float alpha,
                      int screen,
                      boolean ignoreVertexColors)

getVertexFormat

int getVertexFormat()
This method should return an int indicating the format of the vertices, if any, stored in the geometry. Instances that can return a valid value should override this method, otherwise it will be assumed that no valid vertex components exist.

Returns:
format of vertices in the GeometryRetained as specified by GeometryArray, if appropriate to this instance.

intersect

abstract boolean intersect(PickShape pickShape,
                           PickInfo pickInfo,
                           int flags,
                           Point3d iPnt,
                           GeometryRetained geom,
                           int geomIndex)

intersect

abstract boolean intersect(Bounds targetBound)

intersect

abstract boolean intersect(Point3d[] pnts)

intersect

abstract boolean intersect(Transform3D thisToOtherVworld,
                           GeometryRetained geom)

storeInterestData

void storeInterestData(PickInfo pickInfo,
                       int flags,
                       GeometryRetained geom,
                       int geomIndex,
                       int[] vtxIndexArr,
                       Point3d iPnt,
                       double dist)

intersect

boolean intersect(Transform3D thisLocalToVworld,
                  Transform3D otherLocalToVworld,
                  GeometryRetained geom)

intersect

boolean intersect(Transform3D thisLocalToVworld,
                  Bounds targetBound)

canBeInDisplayList

boolean canBeInDisplayList(boolean alphaEditable)

computeCentroid

void computeCentroid()

getClassType

abstract int getClassType()


Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.