RavEngine
Loading...
Searching...
No Matches
physx::PxTetrahedronMesh Class Referenceabstract

A tetramedron mesh, also called a 'tetrahedron soup'. More...

#include <PxTetrahedronMesh.h>

Inheritance diagram for physx::PxTetrahedronMesh:
[legend]
Collaboration diagram for physx::PxTetrahedronMesh:
[legend]

Public Member Functions

virtual PxU32 getNbVertices () const =0
 Returns the number of vertices.
 
virtual const PxVec3 * getVertices () const =0
 Returns the vertices.
 
virtual PxU32 getNbTetrahedrons () const =0
 Returns the number of tetrahedrons.
 
virtual const void * getTetrahedrons () const =0
 Returns the tetrahedron indices.
 
virtual PxTetrahedronMeshFlags getTetrahedronMeshFlags () const =0
 Reads the PxTetrahedronMesh flags.
 
virtual const PxU32 * getTetrahedraRemap () const =0
 Returns the tetrahedra remapping table.
 
virtual PxBounds3 getLocalBounds () const =0
 Returns the local-space (vertex space) AABB from the tetrahedron mesh.
 
virtual void release ()=0
 Decrements the reference count of a tetrahedron mesh and releases it if the new reference count is zero.
 
- Public Member Functions inherited from physx::PxRefCounted
virtual PxU32 getReferenceCount () const =0
 Returns the reference count of the object.
 
virtual void acquireReference ()=0
 Acquires a counted reference to this object.
 
- Public Member Functions inherited from physx::PxBase
virtual const char * getConcreteTypeName () const =0
 Returns string name of dynamic type.
 
template<class T >
T * is ()
 
template<class T >
const T * is () const
 
PX_FORCE_INLINE PxType getConcreteType () const
 Returns concrete type of object.
 
PX_FORCE_INLINE void setBaseFlag (PxBaseFlag::Enum flag, bool value)
 Set PxBaseFlag

 
PX_FORCE_INLINE void setBaseFlags (PxBaseFlags inFlags)
 Set PxBaseFlags

 
PX_FORCE_INLINE PxBaseFlags getBaseFlags () const
 Returns PxBaseFlags.
 
virtual bool isReleasable () const
 Whether the object is subordinate.
 

Protected Member Functions

PX_INLINE PxTetrahedronMesh (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxTetrahedronMesh (PxBaseFlags baseFlags)
 
virtual bool isKindOf (const char *name) const
 Returns whether a given type name matches with the type of this instance.
 
- Protected Member Functions inherited from physx::PxRefCounted
virtual void onRefCountZero ()
 
PX_INLINE PxRefCounted (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxRefCounted (PxBaseFlags baseFlags)
 
- Protected Member Functions inherited from physx::PxBase
PX_INLINE PxBase (PxType concreteType, PxBaseFlags baseFlags)
 Constructor setting concrete type and base flags.
 
PX_INLINE PxBase (PxBaseFlags baseFlags)
 Deserialization constructor setting base flags.
 
virtual ~PxBase ()
 Destructor.
 
template<class T >
bool typeMatch () const
 

Additional Inherited Members

- Protected Attributes inherited from physx::PxBase
PxType mConcreteType
 
PxBaseFlags mBaseFlags
 
PxU32 mBuiltInRefCount
 

Detailed Description

A tetramedron mesh, also called a 'tetrahedron soup'.

It is represented as an indexed tetrahedron list. There are no restrictions on the tetrahedron data.

To avoid duplicating data when you have several instances of a particular mesh positioned differently, you do not use this class to represent a mesh object directly. Instead, you create an instance of this mesh via the PxTetrahedronMeshGeometry and PxShape classes.

Creation

To create an instance of this class call PxPhysics::createTetrahedronMesh(), and release() to delete it. This is only possible once you have released all of its PxShape instances.

Visualizations:

See also
PxTetrahedronMeshDesc PxTetrahedronMeshGeometry PxShape PxPhysics.createTetrahedronMesh()

Member Function Documentation

◆ getLocalBounds()

virtual PxBounds3 physx::PxTetrahedronMesh::getLocalBounds ( ) const
pure virtual

Returns the local-space (vertex space) AABB from the tetrahedron mesh.

Returns
local-space bounds

Implemented in physx::Gu::TetrahedronMesh.

◆ getNbTetrahedrons()

virtual PxU32 physx::PxTetrahedronMesh::getNbTetrahedrons ( ) const
pure virtual

Returns the number of tetrahedrons.

Returns
number of tetrahedrons
See also
getTetrahedrons()

Implemented in physx::Gu::TetrahedronMesh.

◆ getNbVertices()

virtual PxU32 physx::PxTetrahedronMesh::getNbVertices ( ) const
pure virtual

Returns the number of vertices.

Returns
number of vertices
See also
getVertices()

Implemented in physx::Gu::TetrahedronMesh.

◆ getTetrahedraRemap()

virtual const PxU32 * physx::PxTetrahedronMesh::getTetrahedraRemap ( ) const
pure virtual

Returns the tetrahedra remapping table.

The tetrahedra are internally sorted according to various criteria. Hence the internal tetrahedron order does not always match the original (user-defined) order. The remapping table helps finding the old indices knowing the new ones:

remapTable[ internalTetrahedronIndex ] = originalTetrahedronIndex
Returns
the remapping table (or NULL if 'PxCookingParams::suppressTriangleMeshRemapTable' has been used)
See also
getNbTetrahedron() getTetrahedrons() PxCookingParams::suppressTriangleMeshRemapTable

Implemented in physx::Gu::TetrahedronMesh, and physx::Gu::BVTetrahedronMesh.

◆ getTetrahedronMeshFlags()

virtual PxTetrahedronMeshFlags physx::PxTetrahedronMesh::getTetrahedronMeshFlags ( ) const
pure virtual

Reads the PxTetrahedronMesh flags.

See the list of flags PxTetrahedronMeshFlags

Returns
The values of the PxTetrahedronMesh flags.

Implemented in physx::Gu::TetrahedronMesh.

◆ getTetrahedrons()

virtual const void * physx::PxTetrahedronMesh::getTetrahedrons ( ) const
pure virtual

Returns the tetrahedron indices.

The indices can be 16 or 32bit depending on the number of tetrahedrons in the mesh. Call getTetrahedronMeshFlags() to know if the indices are 16 or 32 bits.

The number of indices is the number of tetrahedrons * 4.

Returns
array of tetrahedrons
See also
getNbTetrahedron() getTetrahedronMeshFlags() getTetrahedraRemap()

Implemented in physx::Gu::TetrahedronMesh.

◆ getVertices()

virtual const PxVec3 * physx::PxTetrahedronMesh::getVertices ( ) const
pure virtual

Returns the vertices.

Returns
array of vertices
See also
getNbVertices()

Implemented in physx::Gu::TetrahedronMesh.

◆ isKindOf()

virtual bool physx::PxTetrahedronMesh::isKindOf ( const char *  superClass) const
inlineprotectedvirtual

Returns whether a given type name matches with the type of this instance.

Reimplemented from physx::PxRefCounted.

◆ release()

virtual void physx::PxTetrahedronMesh::release ( )
pure virtual

Decrements the reference count of a tetrahedron mesh and releases it if the new reference count is zero.

See also
PxPhysics.createTetrahedronMesh()

Implements physx::PxRefCounted.

Implemented in physx::Gu::TetrahedronMesh.


The documentation for this class was generated from the following file: