|
RavEngine
|
A class to iterate over a compressed contact stream. This supports read-only access to the various contact formats. More...
#include <PxContact.h>
Public Types | |
| enum | StreamFormat { eSIMPLE_STREAM , eMODIFIABLE_STREAM , eCOMPRESSED_MODIFIABLE_STREAM } |
Public Member Functions | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE | PxContactStreamIterator (const PxU8 *contactPatches, const PxU8 *contactPoints, const PxU32 *contactFaceIndices, PxU32 nbPatches, PxU32 nbContacts) |
| Constructor. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE bool | hasNextPatch () const |
| Returns whether there are more patches in this stream. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU32 | getTotalContactCount () const |
| Returns the total contact count. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU32 | getTotalPatchCount () const |
| Returns the total patch count. | |
| PX_CUDA_CALLABLE PX_INLINE void | nextPatch () |
| Advances iterator to next contact patch. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE bool | hasNextContact () const |
| Returns if the current patch has more contacts. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE void | nextContact () |
| Advances to the next contact in the patch. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE const PxVec3 & | getContactNormal () const |
| Gets the current contact's normal. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getInvMassScale0 () const |
| Gets the inverse mass scale for body 0. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getInvMassScale1 () const |
| Gets the inverse mass scale for body 1. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getInvInertiaScale0 () const |
| Gets the inverse inertia scale for body 0. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getInvInertiaScale1 () const |
| Gets the inverse inertia scale for body 1. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getMaxImpulse () const |
| Gets the contact's max impulse. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE const PxVec3 & | getTargetVel () const |
| Gets the contact's target velocity. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE const PxVec3 & | getContactPoint () const |
| Gets the contact's contact point. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getSeparation () const |
| Gets the contact's separation. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU32 | getFaceIndex0 () const |
| Gets the contact's face index for shape 0. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU32 | getFaceIndex1 () const |
| Gets the contact's face index for shape 1. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getStaticFriction () const |
| Gets the contact's static friction coefficient. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getDynamicFriction () const |
| Gets the contact's dynamic friction coefficient. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getRestitution () const |
| Gets the contact's restitution coefficient. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxReal | getDamping () const |
| Gets the contact's damping value. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU32 | getMaterialFlags () const |
| Gets the contact's material flags. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU16 | getMaterialIndex0 () const |
| Gets the contact's material index for shape 0. | |
| PX_CUDA_CALLABLE PX_FORCE_INLINE PxU16 | getMaterialIndex1 () const |
| Gets the contact's material index for shape 1. | |
| bool | advanceToIndex (const PxU32 initialIndex) |
| Advances the contact stream iterator to a specific contact index. | |
Public Attributes | |
| PxVec3 | zero |
| Utility zero vector to optimize functions returning zero vectors when a certain flag isn't set. | |
| const PxContactPatch * | patch |
| The patch headers. | |
| const PxContact * | contact |
| The contacts. | |
| const PxU32 * | faceIndice |
| The contact triangle face index. | |
| PxU32 | totalPatches |
| The total number of patches in this contact stream. | |
| PxU32 | totalContacts |
| The total number of contact points in this stream. | |
| PxU32 | nextContactIndex |
| The current contact index. | |
| PxU32 | nextPatchIndex |
| The current patch Index. | |
| PxU32 | contactPatchHeaderSize |
| Size of contact patch header. | |
| PxU32 | contactPointSize |
| Contact point size. | |
| StreamFormat | mStreamFormat |
| The stream format. | |
| PxU32 | forceNoResponse |
| Indicates whether this stream is notify-only or not. | |
| bool | pointStepped |
| Internal helper for stepping the contact stream iterator. | |
| PxU32 | hasFaceIndices |
| Specifies if this contactPatch has face indices (handled as bool) | |
A class to iterate over a compressed contact stream. This supports read-only access to the various contact formats.
|
inline |
Advances the contact stream iterator to a specific contact index.
|
inline |
Gets the current contact's normal.
|
inline |
Gets the contact's contact point.
|
inline |
Gets the contact's damping value.
|
inline |
Gets the contact's dynamic friction coefficient.
|
inline |
Gets the contact's face index for shape 0.
|
inline |
Gets the contact's face index for shape 1.
|
inline |
Gets the inverse inertia scale for body 0.
|
inline |
Gets the inverse inertia scale for body 1.
|
inline |
Gets the inverse mass scale for body 0.
|
inline |
Gets the inverse mass scale for body 1.
|
inline |
Gets the contact's material flags.
|
inline |
Gets the contact's material index for shape 0.
|
inline |
Gets the contact's material index for shape 1.
|
inline |
Gets the contact's max impulse.
|
inline |
Gets the contact's restitution coefficient.
|
inline |
Gets the contact's separation.
|
inline |
Gets the contact's static friction coefficient.
|
inline |
Gets the contact's target velocity.
|
inline |
Returns the total contact count.
|
inline |
Returns the total patch count.
|
inline |
Returns if the current patch has more contacts.
|
inline |
Returns whether there are more patches in this stream.
| PxU32 physx::PxContactStreamIterator::contactPatchHeaderSize |
Size of contact patch header.
| PxU32 physx::PxContactStreamIterator::contactPointSize |
Contact point size.
| PxU32 physx::PxContactStreamIterator::hasFaceIndices |
Specifies if this contactPatch has face indices (handled as bool)
| PxVec3 physx::PxContactStreamIterator::zero |
Utility zero vector to optimize functions returning zero vectors when a certain flag isn't set.