|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcrystalspace.jbind.impl.csNativeObject
crystalspace.jbind.impl.csgeom.frustum.csFrustum
A general frustum. This consist of a center point (origin), a frustum polygon in 3D space (relative to center point) and a plane. The planes which go through the center and every edge of the polygon form the frustum. The plane is the back plane of the frustum. It is also possible to have an infinite frustum in which case the polygon will be 0 (not specified). The back plane can also be 0.
Field Summary |
Fields inherited from class crystalspace.jbind.impl.csNativeObject |
ImplFactory, nPointer |
Constructor Summary | |
csFrustum(csFrustum copy)
Copy constructor |
|
csFrustum(csVector3 o)
Create a new empty frustum. |
|
csFrustum(csVector3 o,
csVector3Array verts)
Create a frustum given a polygon and a backplane. |
|
csFrustum(csVector3 o,
csVector3Array verts,
csPlane3 backp)
Create a frustum given a polygon and a backplane. |
|
csFrustum(csVector3 o,
csVertexArrayPool pl)
Create a new empty frustum with another pool. |
|
csFrustum(csVector3 o,
int num_verts,
csVertexArrayPool pl)
Create a frustum given a number of vertices and a backplane. |
|
csFrustum(csVector3 o,
int num_verts,
csVertexArrayPool pl,
csPlane3 backp)
Create a frustum given a number of vertices and a backplane. |
|
csFrustum(iPointer nPointer)
|
Method Summary | |
void |
addVertex(csVector3 v)
Add a vertex to the frustum polygon. |
static int |
batchClassify(csVector3Array frustum,
csVector3 frustumNormals,
csVector3Array poly)
This is like the above version except that it takes a vector of precalculated frustum plane normals. |
static int |
classify(csVector3Array frustum,
csVector3Array poly)
Check if a polygon intersects with the frustum (i.e. is visible in the frustum). |
void |
clipPolyToPlane(csPlane3 plane)
Clip the polygon of this frustum to the postive side of an arbitrary plane (which should be specified relative to the origin of the frustum). |
static void |
clipToPlane(csVector3Array vertices,
csClipInfo clipinfo,
csPlane3 plane)
Clip a frustum (defined from 0,0,0 origin) to the given plane. |
static void |
clipToPlane(csVector3Array vertices,
csClipInfo clipinfo,
csVector3 v1,
csVector3 v2)
Clip a frustum (defined from 0,0,0 origin) to the given plane (defined as 0-v1-v2). |
void |
clipToPlane(csVector3 v1,
csVector3 v2)
Clip this frustum to the positive side of a plane formed by the origin of this frustum, and the two given vertices. |
boolean |
contains(csVector3 point)
Check if a point (given relative to the origin of the frustum) is inside the frustum. |
static boolean |
contains(csVector3Array frustum,
csPlane3 plane,
csVector3 point)
Check if a point is inside a frustum. |
static boolean |
contains(csVector3Array frustum,
csVector3 point)
Check if a point is inside a frustum. |
void |
decRef()
Decrement reference counter. |
csPlane3 |
getBackPlane()
Get the back plane. |
csVector3 |
getOrigin()
Get the origin of this frustum. |
csVector3 |
getVertex(int idx)
Get a vertex. |
int |
getVertexCount()
Get the number of vertices. |
csVector3Array |
getVertices()
Get the array of vertices. |
void |
incRef()
Increment reference counter. |
csFrustum |
intersect(csFrustum other)
Intersect with another frustum. |
csFrustum |
intersect(csVector3Array poly)
Intersect a convex polygon with this volume. |
static csFrustum |
intersect(csVector3 frust_origin,
csVector3Array frust,
csVector3Array poly)
Intersect a convex polygon with this volume. |
static csFrustum |
intersect(csVector3 frust_origin,
csVector3Array frust,
csVector3 v1,
csVector3 v2,
csVector3 v3)
Intersect a triangle with this volume. |
boolean |
isEmpty()
Return true if frustum is empty. |
boolean |
isInfinite()
Return true if frustum is infinite. |
boolean |
isMirrored()
Is this frustum mirrored? |
protected boolean |
isNativePointerValidSafe(long nPointer)
|
boolean |
isWide()
Return true if frustum is infinitely wide but it can still have a back plane. |
void |
makeEmpty()
Make the frustum empty. |
void |
makeInfinite()
Make the frustum infinite (i.e. clear the polygon and the back plane). |
protected void |
nDelete(long pointer)
|
void |
removeBackPlane()
Remove the back plane of this frustum. |
void |
setBackPlane(csPlane3 plane)
Set the back plane of this frustum. |
void |
setMirrored(boolean m)
Enable/disable mirroring. |
void |
setOrigin(csVector3 o)
Set the origin of this frustum. |
void |
transform(csTransform trans)
Apply a transformation to this frustum. |
Methods inherited from class crystalspace.jbind.impl.csNativeObject |
changePointer, equals, finalize, getPointer, getPointer, getPointerArray, hashCode, isMemoryOwner, isNativePointerValid, newNativeObject, setMemoryOwner, toString |
Methods inherited from class java.lang.Object |
clone, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public csFrustum(iPointer nPointer)
nPointer
- public csFrustum(csVector3 o)
o
- public csFrustum(csVector3 o, csVertexArrayPool pl)
o
- pl
- public csFrustum(csVector3 o, csVector3Array verts)
o
- verts
- public csFrustum(csVector3 o, csVector3Array verts, csPlane3 backp)
o
- verts
- backp
- public csFrustum(csVector3 o, int num_verts, csVertexArrayPool pl)
o
- num_verts
- pl
- public csFrustum(csVector3 o, int num_verts, csVertexArrayPool pl, csPlane3 backp)
o
- num_verts
- pl
- backp
- public csFrustum(csFrustum copy)
copy
- Method Detail |
protected void nDelete(long pointer)
nDelete
in class csNativeObject
csNativeObject.nDelete(long)
protected boolean isNativePointerValidSafe(long nPointer)
isNativePointerValidSafe
in class csNativeObject
crystalspace.jbind.impl.csNativeObject#isNativePointerValidSafe()
public void addVertex(csVector3 v)
v
- public static int batchClassify(csVector3Array frustum, csVector3 frustumNormals, csVector3Array poly)
frustum
- frustumNormals
- poly
-
public static int classify(csVector3Array frustum, csVector3Array poly)
frustum
- poly
-
public void clipPolyToPlane(csPlane3 plane)
plane
- public static void clipToPlane(csVector3Array vertices, csClipInfo clipinfo, csPlane3 plane)
vertices
- clipinfo
- plane
- public static void clipToPlane(csVector3Array vertices, csClipInfo clipinfo, csVector3 v1, csVector3 v2)
vertices
- clipinfo
- v1
- v2
- public void clipToPlane(csVector3 v1, csVector3 v2)
v1
- v2
- public static boolean contains(csVector3Array frustum, csPlane3 plane, csVector3 point)
frustum
- plane
- point
-
public static boolean contains(csVector3Array frustum, csVector3 point)
frustum
- point
-
public boolean contains(csVector3 point)
point
-
public void decRef()
public csPlane3 getBackPlane()
public csVector3 getOrigin()
public csVector3 getVertex(int idx)
idx
-
public int getVertexCount()
public csVector3Array getVertices()
public void incRef()
public static csFrustum intersect(csVector3 frust_origin, csVector3Array frust, csVector3 v1, csVector3 v2, csVector3 v3)
frust_origin
- frust
- v1
- v2
- v3
-
public static csFrustum intersect(csVector3 frust_origin, csVector3Array frust, csVector3Array poly)
frust_origin
- frust
- poly
-
public csFrustum intersect(csVector3Array poly)
poly
-
public csFrustum intersect(csFrustum other)
other
-
public boolean isEmpty()
public boolean isInfinite()
public boolean isMirrored()
public boolean isWide()
public void makeEmpty()
public void makeInfinite()
public void removeBackPlane()
public void setBackPlane(csPlane3 plane)
plane
- public void setMirrored(boolean m)
m
- public void setOrigin(csVector3 o)
o
- public void transform(csTransform trans)
trans
-
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |