|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectnet.java.dev.joode.geom.Geom
public abstract class Geom
Geom is the fundamental object in the collision system. The linked lists for spaces and bodies have been removed from this class because they work in ODE by manipulating the passes in pointer to a pointer in essence the bodyAdd and spaceAdd pass the address of their link list start points and so their internal data is altered by the operations that were in the dxGeom class. This can't really be done in Java so the functionality will be replaced in the Space and Body classes
| Field Summary | |
|---|---|
float[] |
aabb
cached AABB for this space |
static int |
AABB_MAX_X
|
static int |
AABB_MAX_Y
|
static int |
AABB_MAX_Z
|
static int |
AABB_MIN_X
|
static int |
AABB_MIN_Y
|
static int |
AABB_MIN_Z
|
Body |
body
dynamics body associated with this object (if any) |
long |
category_bits
|
long |
collide_bits
|
static int |
dBoxClass
|
static int |
dCapsuleClass
|
static int |
dCircle
|
static int |
dConvex
|
static int |
dCylinderClass
|
static int |
dFirstSpaceClass
|
static int |
dFirstUserClass
|
static int |
dGeomNumClasses
|
static int |
dGeomTransformClass
|
static int |
dHashSpaceClass
|
static int |
dLastSpaceClass
|
static int |
dLastUserClass
|
static int |
dMaxUserClasses
|
static int |
dOctTreeSpaceClass
|
static int |
dPlaneClass
|
static int |
dQuadTreeSpaceClass
|
static int |
dRayClass
|
static int |
dRectangle
|
static int |
dSimpleSpaceClass
|
static int |
dSphereClass
|
static int |
dTriMeshClass
|
static int |
GEOM_AABB_BAD
geom's AABB is not valid |
static int |
GEOM_DIRTY
geom is 'dirty', i.e. |
static int |
GEOM_ENABLED
geom is enabled |
static int |
GEOM_PLACEABLE
geom is placeable |
int |
gflags
flags used by geom and space |
Vector3 |
lpos
geom's position vector at last time step |
Space |
parent_space
the space this geom is contained in, null if none |
Vector3 |
pos
geom's position vector |
Matrix3 |
R
pointer to object's rotation matrix |
static int |
RAY_BACKFACECULL
|
static int |
RAY_CLOSEST_HIT
|
static int |
RAY_FIRSTCONTACT
|
static Quaternion |
tmpq
|
int |
type
geom type number, set by subclass constructor |
| Constructor Summary | |
|---|---|
protected |
Geom()
|
|
Geom(Space space,
boolean isPlaceable,
int type)
|
| Method Summary | |
|---|---|
boolean |
AABBTest(Geom other,
float[] aabb)
test whether the given AABB object intersects with this object, return 1=yes, 0=no. |
Geom |
clonePartialGeom(Geom partialClone,
ClonedReferences util)
utility method for children, sets the parents attributes of the passed in partial clone |
abstract void |
computeAABB()
compute the AABB for this object and put it in aabb. |
void |
destroy()
destroy a geom, removing it from any space it is in first. |
float[] |
getAABB()
return in aabb an axis aligned bounding box that surrounds the given geom. |
java.lang.Object |
getUserData()
get the user-defined data stored in the geom. |
boolean |
isEnabled()
|
void |
recomputeAABB()
|
void |
setBody(Body body)
set the body associated with a placeable geom. |
void |
setPosition(float x,
float y,
float z)
|
void |
setQuaternion(float x,
float y,
float z,
float w)
|
void |
setQuaternion(Quaternion q)
|
void |
setRotation(Matrix3 R)
|
void |
setUserData(java.lang.Object data)
set the user-defined data stored in the geom. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface net.java.dev.joode.SimState |
|---|
cloneState |
| Field Detail |
|---|
public static int GEOM_DIRTY
public static int GEOM_AABB_BAD
public static int GEOM_PLACEABLE
public static int GEOM_ENABLED
public static int RAY_FIRSTCONTACT
public static int RAY_BACKFACECULL
public static int RAY_CLOSEST_HIT
public static final int dMaxUserClasses
public static final int AABB_MIN_X
public static final int AABB_MAX_X
public static final int AABB_MIN_Y
public static final int AABB_MAX_Y
public static final int AABB_MIN_Z
public static final int AABB_MAX_Z
public static final int dSphereClass
public static final int dBoxClass
public static final int dCapsuleClass
public static final int dCylinderClass
public static final int dPlaneClass
public static final int dRayClass
public static final int dGeomTransformClass
public static final int dConvex
public static final int dTriMeshClass
public static final int dCircle
public static final int dRectangle
public static final int dFirstSpaceClass
public static final int dSimpleSpaceClass
public static final int dHashSpaceClass
public static final int dOctTreeSpaceClass
public static final int dQuadTreeSpaceClass
public static final int dLastSpaceClass
public static final int dFirstUserClass
public static final int dLastUserClass
public static final int dGeomNumClasses
public static final Quaternion tmpq
public int type
public int gflags
public Body body
public Vector3 pos
public Vector3 lpos
public Matrix3 R
public Space parent_space
public float[] aabb
public long category_bits
public long collide_bits
| Constructor Detail |
|---|
protected Geom()
public Geom(Space space,
boolean isPlaceable,
int type)
| Method Detail |
|---|
public void destroy()
true (the default) then all the geoms in that space are
automatically destroyed as well.
public float[] getAABB()
public abstract void computeAABB()
public boolean AABBTest(Geom other,
float[] aabb)
public void recomputeAABB()
public java.lang.Object getUserData()
public void setUserData(java.lang.Object data)
public void setBody(Body body)
public void setPosition(float x,
float y,
float z)
public void setRotation(Matrix3 R)
public void setQuaternion(float x,
float y,
float z,
float w)
public void setQuaternion(Quaternion q)
public boolean isEnabled()
public Geom clonePartialGeom(Geom partialClone,
ClonedReferences util)
partialClone - util -
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||