PhysX SDK 3.2 API Reference: Foundation

PhysX SDK 3.2 API

Foundation


Classes

class  PxAllocatorCallback
 Abstract base class for an application defined memory allocator that can be used by the Px library. More...
class  PxBitAndDataT< storageType, bitMask >
class  PxBounds3
 Class representing 3D range or axis aligned bounding box. More...
class  PxAllocationListener
 Abstract listener class that listens to allocation and deallocation events from the foundation memory system. More...
class  PxBroadcastingAllocator
 Abstract base class for an application defined memory allocator that allows an external listener to audit the memory allocations. More...
class  PxErrorCallback
 User defined interface class. Used by the library to emit debug information. More...
struct  PxErrorCode
 Error codes. More...
class  PxFlags< enumtype, storagetype >
 Container for bitfield flag variables associated with a specific enum type. More...
class  PxFoundation
 Foundation SDK singleton class. More...
class  PxMat33
 3x3 matrix class More...
class  PxMat44
 4x4 matrix class More...
class  PxPlane
 Representation of a plane. More...
struct  PxPackValidation
class  PxQuat
 This is a quaternion class. For more information on quaternion mathematics consult a mathematics source on complex numbers. More...
class  PxStrideIterator< T >
class  PxTransform
 class representing a rigid euclidean transform as a quaternion and a vector More...
class  PxVec2
 2 Element vector class. More...
class  PxVec3
 3 Element vector class. More...
class  PxVec4
 4 Element vector class. More...

Defines

#define PX_ASSERT(exp)   assert(exp)
#define PX_ALWAYS_ASSERT_MESSAGE(exp)   assert((exp) && false)
#define PX_ALWAYS_ASSERT()   PX_ASSERT(0)
#define PX_FLAGS_OPERATORS(enumtype, storagetype)
#define PX_C_EXPORT   extern "C"
#define PX_FOUNDATION_API
#define PX_CALL_CONV
#define PX_PUSH_PACK_DEFAULT
#define PX_POP_PACK
#define PX_INLINE   inline
#define PX_FORCE_INLINE   inline
#define PX_NOINLINE
#define PX_RESTRICT
#define PX_NOALIAS
#define PX_ALIGN(alignment, decl)
#define PX_ALIGN_PREFIX(alignment)
#define PX_ALIGN_SUFFIX(alignment)
#define PX_DEPRECATED
#define PX_COMPILE_TIME_ASSERT(exp)   typedef char PxCompileTimeAssert_Dummy[(exp) ? 1 : -1]
#define PX_OFFSET_OF(X, Y)   offsetof(X, Y)
#define PX_FORCE_PARAMETER_REFERENCE(_P)   (void)(_P);
#define PX_UNUSED(_P)   PX_FORCE_PARAMETER_REFERENCE(_P)
#define PX_CUDA_CALLABLE
#define PX_DUMMY_SYMBOL
#define PX_MAX_I8   127
#define PX_MIN_I8   (-128)
#define PX_MAX_U8   255U
#define PX_MIN_U8   0
#define PX_MAX_I16   32767
#define PX_MIN_I16   (-32768)
#define PX_MAX_U16   65535U
#define PX_MIN_U16   0
#define PX_MAX_I32   2147483647
#define PX_MIN_I32   (-2147483647 - 1)
#define PX_MAX_U32   4294967295U
#define PX_MIN_U32   0
#define PX_MAX_F32   3.4028234663852885981170418348452e+38F
#define PX_MAX_F64   DBL_MAX
#define PX_EPS_F32   FLT_EPSILON
#define PX_EPS_F64   DBL_EPSILON
#define PX_MAX_REAL   PX_MAX_F32
#define PX_EPS_REAL   PX_EPS_F32
#define PX_NORMALIZATION_EPSILON   PxReal(1e-20f)
#define PX_PHYSICS_VERSION_MAJOR   3
#define PX_PHYSICS_VERSION_MINOR   2
#define PX_PHYSICS_VERSION_BUGFIX   0
#define PX_PHYSICS_VERSION   ((PX_PHYSICS_VERSION_MAJOR<<24) + (PX_PHYSICS_VERSION_MINOR<<16) + (PX_PHYSICS_VERSION_BUGFIX<<8) + 0)

Typedefs

typedef PxBitAndDataT
< unsigned char, 0x80 > 
PxBitAndByte
typedef PxBitAndDataT
< unsigned short, 0x8000 > 
PxBitAndWord
typedef PxBitAndDataT
< unsigned int, 0x80000000 > 
PxBitAndDword
typedef signed __int64 PxI64
typedef signed int PxI32
typedef signed short PxI16
typedef signed char PxI8
typedef unsigned __int64 PxU64
typedef unsigned int PxU32
typedef unsigned short PxU16
typedef unsigned char PxU8
typedef float PxF32
typedef double PxF64
typedef PxF32 PxReal

Functions

PX_C_EXPORT PX_FOUNDATION_API
physx::PxFoundation
*PX_CALL_CONV 
PxCreateFoundation (physx::PxU32 version, physx::PxAllocatorCallback &allocator, physx::PxErrorCallback &errorCallback)
 Creates an instance of the foundation class.
PX_C_EXPORT PX_FOUNDATION_API
physx::PxFoundation
&PX_CALL_CONV 
PxGetFoundation ()
 Retrieves the Foundation SDK after it has been created.
template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxMax (T a, T b)
 The return value is the greater of the two specified values.
template<>
PX_CUDA_CALLABLE
PX_FORCE_INLINE float 
PxMax (float a, float b)
 overload for float to use fsel on xbox
template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxMin (T a, T b)
 The return value is the lesser of the two specified values.
template<>
PX_CUDA_CALLABLE
PX_FORCE_INLINE float 
PxMin (float a, float b)
 overload for float to use fsel on xbox
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxAbs (PxF32 a)
 abs returns the absolute value of its argument.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxEquals (PxF32 a, PxF32 b, PxF32 eps)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxAbs (PxF64 a)
 abs returns the absolute value of its argument.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxI32 
PxAbs (PxI32 a)
 abs returns the absolute value of its argument.
template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxClamp (T v, T lo, T hi)
 Clamps v to the range [hi,lo].
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxSqrt (PxF32 a)
 Square root.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxSqrt (PxF64 a)
 Square root.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxRecipSqrt (PxF32 a)
 reciprocal square root.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxRecipSqrt (PxF64 a)
 reciprocal square root.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxSin (PxF32 a)
 trigonometry -- all angles are in radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxSin (PxF64 a)
 Sine of an angle ( Unit: Radians ).
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxCos (PxF32 a)
 Cosine of an angle (Unit: Radians).
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxCos (PxF64 a)
 Cosine of an angle (Unit: Radians).
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxTan (PxF32 a)
 Tangent of an angle. Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxTan (PxF64 a)
 Tangent of an angle. Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxAsin (PxF32 f)
 Arcsine. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxAsin (PxF64 f)
 Arcsine. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxAcos (PxF32 f)
 Arccosine. Returns angle between 0 and PI in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxAcos (PxF64 f)
 Arccosine. Returns angle between 0 and PI in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxAtan (PxF32 a)
 ArcTangent. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxAtan (PxF64 a)
 ArcTangent. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxAtan2 (PxF32 x, PxF32 y)
 Arctangent of (x/y) with correct sign. Returns angle between -PI and PI in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF64 
PxAtan2 (PxF64 x, PxF64 y)
 Arctangent of (x/y) with correct sign. Returns angle between -PI and PI in radians Unit: Radians.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxIsFinite (PxF32 f)
 returns true if the passed number is a finite floating point number as opposed to INF, NAN, etc.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxIsFinite (PxF64 f)
 returns true if the passed number is a finite floating point number as opposed to INF, NAN, etc.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxFloor (PxF32 a)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxExp (PxF32 a)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxCeil (PxF32 a)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxSign (PxF32 a)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxPow (PxF32 x, PxF32 y)
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxF32 
PxLog (PxF32 x)
 PX_COMPILE_TIME_ASSERT (PX_OFFSET_OF(PxPackValidation, a)==8)
 PX_COMPILE_TIME_ASSERT (sizeof(PxI8)==1)
 PX_COMPILE_TIME_ASSERT (sizeof(PxU8)==1)
 PX_COMPILE_TIME_ASSERT (sizeof(PxI16)==2)
 PX_COMPILE_TIME_ASSERT (sizeof(PxU16)==2)
 PX_COMPILE_TIME_ASSERT (sizeof(PxI32)==4)
 PX_COMPILE_TIME_ASSERT (sizeof(PxU32)==4)
 PX_COMPILE_TIME_ASSERT (sizeof(PxI64)==8)
 PX_COMPILE_TIME_ASSERT (sizeof(PxU64)==8)
template<typename T >
PX_INLINE PxStrideIterator< T > operator+ (int i, PxStrideIterator< T > it)
template<typename T >
PX_INLINE PxStrideIterator< T > PxMakeIterator (T *ptr, PxU32 stride=sizeof(T))
template<typename T >
PX_INLINE PxStrideIterator
< const T > 
PxMakeIterator (const T *ptr, PxU32 stride=sizeof(T))
template<class A , class B >
PX_FORCE_INLINE A PxUnionCast (B b)
static PX_CUDA_CALLABLE
PX_FORCE_INLINE PxVec2 
operator* (PxReal f, const PxVec2 &v)
static PX_CUDA_CALLABLE
PX_FORCE_INLINE PxVec3 
operator* (PxReal f, const PxVec3 &v)
static PX_CUDA_CALLABLE
PX_INLINE PxVec4 
operator* (PxReal f, const PxVec4 &v)
PX_CUDA_CALLABLE PX_FORCE_INLINE PxBounds3::PxBounds3 (const PxVec3 &minimum, const PxVec3 &maximum)
 Construct from two bounding points.
static PX_CUDA_CALLABLE
PX_FORCE_INLINE PxBounds3 
PxBounds3::empty ()
 Return empty bounds.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::isFinite () const
static PX_CUDA_CALLABLE
PX_FORCE_INLINE PxBounds3 
PxBounds3::boundsOfPoints (const PxVec3 &v0, const PxVec3 &v1)
 returns the AABB containing v0 and v1.
static PX_CUDA_CALLABLE
PX_FORCE_INLINE PxBounds3 
PxBounds3::centerExtents (const PxVec3 &center, const PxVec3 &extent)
 returns the AABB from center and extents vectors.
static PX_CUDA_CALLABLE
PX_INLINE PxBounds3 
PxBounds3::basisExtent (const PxVec3 &center, const PxMat33 &basis, const PxVec3 &extent)
 Construct from center, extent, and (not necessarily orthogonal) basis.
static PX_CUDA_CALLABLE
PX_INLINE PxBounds3 
PxBounds3::poseExtent (const PxTransform &pose, const PxVec3 &extent)
 Construct from pose and extent.
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::setEmpty ()
 Sets empty to true.
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::setInfinite ()
 Sets infinite bounds.
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::include (const PxVec3 &v)
 expands the volume to include v
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::include (const PxBounds3 &b)
 expands the volume to include b.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::isEmpty () const
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::intersects (const PxBounds3 &b) const
 indicates whether the intersection of this and b is empty or not.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::intersects1D (const PxBounds3 &a, PxU32 axis) const
 computes the 1D-intersection between two AABBs, on a given axis.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::contains (const PxVec3 &v) const
 indicates if these bounds contain v.
PX_CUDA_CALLABLE
PX_FORCE_INLINE bool 
PxBounds3::isInside (const PxBounds3 &box) const
 checks a box is inside another box.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxVec3 
PxBounds3::getCenter () const
 returns the center of this axis aligned box.
PX_CUDA_CALLABLE
PX_FORCE_INLINE float 
PxBounds3::getCenter (PxU32 axis) const
 get component of the box's center along a given axis
PX_CUDA_CALLABLE
PX_FORCE_INLINE float 
PxBounds3::getExtents (PxU32 axis) const
 get component of the box's extents along a given axis
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxVec3 
PxBounds3::getDimensions () const
 returns the dimensions (width/height/depth) of this axis aligned box.
PX_CUDA_CALLABLE
PX_FORCE_INLINE PxVec3 
PxBounds3::getExtents () const
 returns the extents, which are half of the width/height/depth.
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::scale (PxF32 scale)
 scales the AABB.
PX_CUDA_CALLABLE
PX_FORCE_INLINE void 
PxBounds3::fatten (PxReal distance)
static PX_CUDA_CALLABLE
PX_INLINE PxBounds3 
PxBounds3::transform (const PxMat33 &matrix, const PxBounds3 &bounds)
 gets the transformed bounds of the passed AABB (resulting in a bigger AABB).
static PX_CUDA_CALLABLE
PX_INLINE PxBounds3 
PxBounds3::transform (const PxTransform &transform, const PxBounds3 &bounds)
 gets the transformed bounds of the passed AABB (resulting in a bigger AABB).
PX_INLINE PxFlags::PxFlags (void)
PX_INLINE PxFlags::PxFlags (enumtype e)
PX_INLINE PxFlags::PxFlags (const PxFlags< enumtype, storagetype > &f)
PX_INLINE PxFlags::PxFlags (storagetype b)
PX_INLINE bool PxFlags::operator== (enumtype e) const
PX_INLINE bool PxFlags::operator== (const PxFlags< enumtype, storagetype > &f) const
PX_INLINE bool PxFlags::operator== (bool b) const
PX_INLINE bool PxFlags::operator!= (enumtype e) const
PX_INLINE bool PxFlags::operator!= (const PxFlags< enumtype, storagetype > &f) const
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator= (enumtype e)
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator|= (enumtype e)
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator|= (const PxFlags< enumtype, storagetype > &f)
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator| (enumtype e) const
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator| (const PxFlags< enumtype, storagetype > &f) const
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator&= (enumtype e)
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator&= (const PxFlags< enumtype, storagetype > &f)
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator& (enumtype e) const
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator& (const PxFlags< enumtype, storagetype > &f) const
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator^= (enumtype e)
PX_INLINE PxFlags< enumtype,
storagetype > & 
PxFlags::operator^= (const PxFlags< enumtype, storagetype > &f)
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator^ (enumtype e) const
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator^ (const PxFlags< enumtype, storagetype > &f) const
PX_INLINE PxFlags< enumtype,
storagetype > 
PxFlags::operator~ (void) const
PX_INLINE PxFlags::operator bool (void) const
PX_INLINE PxFlags::operator PxU8 (void) const
PX_INLINE PxFlags::operator PxU16 (void) const
PX_INLINE PxFlags::operator PxU32 (void) const
PX_INLINE void PxFlags::clear (enumtype e)
PX_CUDA_CALLABLE PX_INLINE PxQuat::PxQuat (const PxMat33 &m)
 Creates from orientation matrix.
PX_CUDA_CALLABLE PX_FORCE_INLINE PxTransform::PxTransform (const PxMat44 &m)

Variables

static const PxReal PxPi = PxReal(3.141592653589793)
static const PxReal PxHalfPi = PxReal(1.57079632679489661923)
static const PxReal PxTwoPi = PxReal(6.28318530717958647692)
static const PxReal PxInvPi = PxReal(0.31830988618379067154)

Define Documentation

#define PX_ALIGN ( alignment,
decl   ) 

Alignment macros

PX_ALIGN_PREFIX and PX_ALIGN_SUFFIX can be used for type alignment instead of aligning individual variables as follows: PX_ALIGN_PREFIX(16) struct A { ... } PX_ALIGN_SUFFIX(16); This declaration style is parsed correctly by Visual Assist.

#define PX_ALIGN_PREFIX ( alignment   ) 

#define PX_ALIGN_SUFFIX ( alignment   ) 

 
#define PX_ALWAYS_ASSERT (  )     PX_ASSERT(0)

#define PX_ALWAYS_ASSERT_MESSAGE ( exp   )     assert((exp) && false)

#define PX_ASSERT ( exp   )     assert(exp)

Referenced by PxFixedSizeLookupTable< eMAX_NUM_ENGINE_TORQUE_CURVE_ENTRIES >::addPair(), pxtask::Task::addReference(), PxDefaultAllocator::allocate(), PxBounds3::contains(), pxtask::GpuCopyDescQueue::enqueue(), PxBounds3::fatten(), pxtask::Task::finishBefore(), PxGeometryHolder::get(), pxtask::SpuTask::getArgs(), PxMat44::getBasis(), PxBounds3::getCenter(), PxBounds3::getDimensions(), PxBounds3::getExtents(), PxTransform::getInverse(), PxSimulationStatistics::getNumBroadPhaseAdds(), PxSimulationStatistics::getNumBroadPhaseRemoves(), PxSimulationStatistics::getRbPairStats(), PxFixedSizeLookupTable< eMAX_NUM_ENGINE_TORQUE_CURVE_ENTRIES >::getYVal(), PxBounds3::include(), PxBounds3::intersects(), PxBounds3::intersects1D(), PxBounds3::isEmpty(), PxBounds3::isInside(), PxVec3::normalizeFast(), PxStrideIterator< const PxVec3 >::operator!=(), PxTransform::operator*(), PxStrideIterator< const PxVec3 >::operator-(), PxStrideIterator< const PxVec3 >::operator<(), PxStrideIterator< const PxVec3 >::operator<=(), PxStrideIterator< const PxVec3 >::operator==(), PxStrideIterator< const PxVec3 >::operator>(), PxStrideIterator< const PxVec3 >::operator>=(), PxVec4::operator[](), PxVec3::operator[](), PxVec2::operator[](), PxExtendedVec3::operator[](), PxClamp(), PxMeshScale::PxMeshScale(), PxQuat::PxQuat(), PxStrideIterator< const PxVec3 >::PxStrideIterator(), PxTransform::PxTransform(), pxtask::Task::release(), pxtask::Task::removeReference(), pxtask::SpuTask::removeReference(), PxTransform::rotate(), PxTransform::rotateInv(), PxBounds3::scale(), PxVehicleDriveTankRawInputData::setAnalogAccel(), PxVehicleDriveTankRawInputData::setAnalogLeftBrake(), PxVehicleDriveTankRawInputData::setAnalogLeftThrust(), PxVehicleDriveTankRawInputData::setAnalogRightBrake(), PxVehicleDriveTankRawInputData::setAnalogRightThrust(), pxtask::SpuTask::setArgs(), pxtask::LightCpuTask::setContinuation(), pxtask::SpuTask::setSpuCount(), pxtask::Task::startAfter(), PxTransform::transform(), PxBounds3::transform(), and PxTransform::transformInv().

#define PX_C_EXPORT   extern "C"

List of preprocessor defines used to configure the SDK

  • NDEBUG/_DEBUG: enable asserts (exactly one needs to be defined)
  • PX_CHECKED: enable run time checks, mostly unused or equiv. to _DEBUG
  • PX_SUPPORT_VISUAL_DEBUGGER: ...
  • AG_PERFMON: ... Compiler define Platform define DLL export macros

#define PX_CALL_CONV

Calling convention

#define PX_COMPILE_TIME_ASSERT ( exp   )     typedef char PxCompileTimeAssert_Dummy[(exp) ? 1 : -1]

General defines

#define PX_CUDA_CALLABLE

#define PX_DEPRECATED

Deprecated marco

#define PX_DUMMY_SYMBOL

#define PX_EPS_F32   FLT_EPSILON

#define PX_EPS_F64   DBL_EPSILON

#define PX_EPS_REAL   PX_EPS_F32

#define PX_FLAGS_OPERATORS ( enumtype,
storagetype   ) 

Value:

PX_INLINE PxFlags<enumtype, storagetype> operator|(enumtype a, enumtype b) { PxFlags<enumtype, storagetype> r(a); r |= b; return r; } \
        PX_INLINE PxFlags<enumtype, storagetype> operator&(enumtype a, enumtype b) { PxFlags<enumtype, storagetype> r(a); r &= b; return r; } \
        PX_INLINE PxFlags<enumtype, storagetype> operator~(enumtype a)             { return ~PxFlags<enumtype, storagetype>(a);             }

#define PX_FORCE_INLINE   inline

Force inline macro

#define PX_FORCE_PARAMETER_REFERENCE ( _P   )     (void)(_P);

#define PX_FOUNDATION_API

Define API function declaration

PX_FOUNDATION_EXPORTS - used by the DLL library (PhysXCommon) to export the API PX_FOUNDATION_NO_EXPORTS - exists because there are windows configurations where the PX_FOUNDATION_API is linked through standard static linking no definition - this will allow DLLs and libraries to use the exported API from PhysXCommon

#define PX_INLINE   inline

Inline macro

#define PX_MAX_F32   3.4028234663852885981170418348452e+38F

#define PX_MAX_F64   DBL_MAX

#define PX_MAX_I16   32767

#define PX_MAX_I32   2147483647

#define PX_MAX_I8   127

#define PX_MAX_REAL   PX_MAX_F32

Referenced by PxBounds3::setInfinite().

#define PX_MAX_U16   65535U

#define PX_MAX_U32   4294967295U

#define PX_MAX_U8   255U

#define PX_MIN_I16   (-32768)

#define PX_MIN_I32   (-2147483647 - 1)

#define PX_MIN_I8   (-128)

#define PX_MIN_U16   0

#define PX_MIN_U32   0

#define PX_MIN_U8   0

#define PX_NOALIAS

#define PX_NOINLINE

Noinline macro

#define PX_NORMALIZATION_EPSILON   PxReal(1e-20f)

#define PX_OFFSET_OF ( X,
 )     offsetof(X, Y)

#define PX_PHYSICS_VERSION   ((PX_PHYSICS_VERSION_MAJOR<<24) + (PX_PHYSICS_VERSION_MINOR<<16) + (PX_PHYSICS_VERSION_BUGFIX<<8) + 0)

The constant PX_PHYSICS_VERSION is used when creating certain PhysX module objects. This is to ensure that the application is using the same header version as the library was built with.

#define PX_PHYSICS_VERSION_BUGFIX   0

#define PX_PHYSICS_VERSION_MAJOR   3

#define PX_PHYSICS_VERSION_MINOR   2

#define PX_POP_PACK

#define PX_PUSH_PACK_DEFAULT

Pack macros - disabled on SPU because they are not supported

#define PX_RESTRICT

restrict macro

#define PX_UNUSED ( _P   )     PX_FORCE_PARAMETER_REFERENCE(_P)


Typedef Documentation

typedef PxBitAndDataT<unsigned char, 0x80> PxBitAndByte

typedef PxBitAndDataT<unsigned int, 0x80000000> PxBitAndDword

typedef PxBitAndDataT<unsigned short, 0x8000> PxBitAndWord

typedef float PxF32

typedef double PxF64

typedef signed short PxI16

typedef signed int PxI32

typedef signed __int64 PxI64

typedef signed char PxI8

typedef PxF32 PxReal

typedef unsigned short PxU16

typedef unsigned int PxU32

typedef unsigned __int64 PxU64

typedef unsigned char PxU8


Function Documentation

PX_CUDA_CALLABLE PX_INLINE PxBounds3 PxBounds3::basisExtent ( const PxVec3 center,
const PxMat33 basis,
const PxVec3 extent 
) [static, inherited]

Construct from center, extent, and (not necessarily orthogonal) basis.

References PxMat33::column0, PxMat33::column1, PxMat33::column2, PxAbs(), PxBounds3::PxBounds3(), PxVec3::x, PxVec3::y, and PxVec3::z.

Referenced by PxBounds3::poseExtent(), and PxBounds3::transform().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxBounds3 PxBounds3::boundsOfPoints ( const PxVec3 v0,
const PxVec3 v1 
) [static, inherited]

returns the AABB containing v0 and v1.

Parameters:
v0 first point included in the AABB.
v1 second point included in the AABB.

References PxVec3::maximum(), PxVec3::minimum(), and PxBounds3::PxBounds3().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxBounds3 PxBounds3::centerExtents ( const PxVec3 center,
const PxVec3 extent 
) [static, inherited]

returns the AABB from center and extents vectors.

Parameters:
center Center vector
extent Extents vector

References PxBounds3::PxBounds3().

Referenced by PxBounds3::scale().

template<typename enumtype, typename storagetype >
PX_INLINE void PxFlags< enumtype, storagetype >::clear ( enumtype  e  )  [inline, inherited]

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxBounds3::contains ( const PxVec3 v  )  const [inherited]

indicates if these bounds contain v.

Parameters:
v Point to test against bounds.

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, PX_ASSERT, PxVec3::x, PxVec3::y, and PxVec3::z.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxBounds3 PxBounds3::empty (  )  [static, inherited]

Return empty bounds.

References PxBounds3::PxBounds3().

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::fatten ( PxReal  distance  )  [inherited]

fattens the AABB in all 3 dimensions by the given distance.

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, PX_ASSERT, PxVec3::x, PxVec3::y, and PxVec3::z.

PX_CUDA_CALLABLE PX_FORCE_INLINE float PxBounds3::getCenter ( PxU32  axis  )  const [inherited]

get component of the box's center along a given axis

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, and PX_ASSERT.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec3 PxBounds3::getCenter (  )  const [inherited]

returns the center of this axis aligned box.

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, and PX_ASSERT.

Referenced by PxBounds3::scale(), and PxBounds3::transform().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec3 PxBounds3::getDimensions (  )  const [inherited]

returns the dimensions (width/height/depth) of this axis aligned box.

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, and PX_ASSERT.

Referenced by PxBounds3::getExtents().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec3 PxBounds3::getExtents (  )  const [inherited]

returns the extents, which are half of the width/height/depth.

References PxBounds3::getDimensions(), PxBounds3::isFinite(), and PX_ASSERT.

Referenced by PxBounds3::scale().

PX_CUDA_CALLABLE PX_FORCE_INLINE float PxBounds3::getExtents ( PxU32  axis  )  const [inherited]

get component of the box's extents along a given axis

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, and PX_ASSERT.

Referenced by PxBounds3::transform().

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::include ( const PxBounds3 b  )  [inherited]

expands the volume to include b.

Parameters:
b Bounds to perform union with.

References PxBounds3::isFinite(), PxVec3::maximum(), PxBounds3::maximum, PxVec3::minimum(), PxBounds3::minimum, and PX_ASSERT.

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::include ( const PxVec3 v  )  [inherited]

expands the volume to include v

Parameters:
v Point to expand to.

References PxBounds3::isFinite(), PxVec3::maximum(), PxBounds3::maximum, PxVec3::minimum(), PxBounds3::minimum, and PX_ASSERT.

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxBounds3::intersects ( const PxBounds3 b  )  const [inherited]

indicates whether the intersection of this and b is empty or not.

Parameters:
b Bounds to test for intersection.

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, PX_ASSERT, PxVec3::x, PxVec3::y, and PxVec3::z.

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxBounds3::intersects1D ( const PxBounds3 a,
PxU32  axis 
) const [inherited]

computes the 1D-intersection between two AABBs, on a given axis.

Parameters:
a the other AABB
axis the axis (0, 1, 2)

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, and PX_ASSERT.

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxBounds3::isEmpty (  )  const [inherited]

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxBounds3::isInside ( const PxBounds3 box  )  const [inherited]

checks a box is inside another box.

Parameters:
box the other AABB

References PxBounds3::isFinite(), PxBounds3::maximum, PxBounds3::minimum, PX_ASSERT, PxVec3::x, PxVec3::y, and PxVec3::z.

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::operator bool ( void   )  const [inline, inherited]

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::operator PxU16 ( void   )  const [inline, inherited]

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::operator PxU32 ( void   )  const [inline, inherited]

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::operator PxU8 ( void   )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE bool PxFlags< enumtype, storagetype >::operator!= ( const PxFlags< enumtype, storagetype > &  f  )  const [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE bool PxFlags< enumtype, storagetype >::operator!= ( enumtype  e  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator& ( const PxFlags< enumtype, storagetype > &  f  )  const [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator& ( enumtype  e  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator&= ( const PxFlags< enumtype, storagetype > &  f  )  [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator&= ( enumtype  e  )  [inline, inherited]

static PX_CUDA_CALLABLE PX_INLINE PxVec4 operator* ( PxReal  f,
const PxVec4 v 
) [static]

References PxVec4::w, PxVec4::x, PxVec4::y, and PxVec4::z.

static PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec3 operator* ( PxReal  f,
const PxVec3 v 
) [static]

References PxVec3::x, PxVec3::y, and PxVec3::z.

static PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec2 operator* ( PxReal  f,
const PxVec2 v 
) [static]

References PxVec2::x, and PxVec2::y.

template<typename T >
PX_INLINE PxStrideIterator<T> operator+ ( int  i,
PxStrideIterator< T >  it 
) [inline]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator= ( enumtype  e  )  [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE bool PxFlags< enumtype, storagetype >::operator== ( bool  b  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE bool PxFlags< enumtype, storagetype >::operator== ( const PxFlags< enumtype, storagetype > &  f  )  const [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE bool PxFlags< enumtype, storagetype >::operator== ( enumtype  e  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator^ ( const PxFlags< enumtype, storagetype > &  f  )  const [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator^ ( enumtype  e  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator^= ( const PxFlags< enumtype, storagetype > &  f  )  [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator^= ( enumtype  e  )  [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator| ( const PxFlags< enumtype, storagetype > &  f  )  const [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator| ( enumtype  e  )  const [inline, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator|= ( const PxFlags< enumtype, storagetype > &  f  )  [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > & PxFlags< enumtype, storagetype >::operator|= ( enumtype  e  )  [inline, inherited]

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype > PxFlags< enumtype, storagetype >::operator~ ( void   )  const [inline, inherited]

PX_CUDA_CALLABLE PX_INLINE PxBounds3 PxBounds3::poseExtent ( const PxTransform pose,
const PxVec3 extent 
) [static, inherited]

Construct from pose and extent.

References PxBounds3::basisExtent(), PxTransform::p, and PxTransform::q.

PX_COMPILE_TIME_ASSERT ( sizeof(PxU64 = =8  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxI64 = =8  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxU32 = =4  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxI32 = =4  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxU16 = =2  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxI16 = =2  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxU8 = =1  ) 

PX_COMPILE_TIME_ASSERT ( sizeof(PxI8 = =1  ) 

PX_COMPILE_TIME_ASSERT ( PX_OFFSET_OF(PxPackValidation, a)  = =8  ) 

PX_CUDA_CALLABLE PX_FORCE_INLINE PxI32 PxAbs ( PxI32  a  ) 

abs returns the absolute value of its argument.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxAbs ( PxF64  a  ) 

abs returns the absolute value of its argument.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxAbs ( PxF32  a  ) 

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxAcos ( PxF64  f  ) 

Arccosine. Returns angle between 0 and PI in radians Unit: Radians.

References PxClamp().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxAcos ( PxF32  f  ) 

Arccosine. Returns angle between 0 and PI in radians Unit: Radians.

References PxClamp().

Referenced by PxQuat::getAngle().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxAsin ( PxF64  f  ) 

Arcsine. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.

References PxClamp().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxAsin ( PxF32  f  ) 

Arcsine. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.

References PxClamp().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxAtan ( PxF64  a  ) 

ArcTangent. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxAtan ( PxF32  a  ) 

ArcTangent. Returns angle between -PI/2 and PI/2 in radians Unit: Radians.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxAtan2 ( PxF64  x,
PxF64  y 
)

Arctangent of (x/y) with correct sign. Returns angle between -PI and PI in radians Unit: Radians.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxAtan2 ( PxF32  x,
PxF32  y 
)

Arctangent of (x/y) with correct sign. Returns angle between -PI and PI in radians Unit: Radians.

Referenced by PxQuat::toRadiansAndUnitAxis().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxBounds3::PxBounds3 ( const PxVec3 minimum,
const PxVec3 maximum 
) [inherited]

Construct from two bounding points.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxCeil ( PxF32  a  ) 

template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxClamp ( v,
lo,
hi 
) [inline]

Clamps v to the range [hi,lo].

References PX_ASSERT, PxMax(), and PxMin().

Referenced by PxAcos(), and PxAsin().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxCos ( PxF64  a  ) 

Cosine of an angle (Unit: Radians).

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxCos ( PxF32  a  ) 

Cosine of an angle (Unit: Radians).

Referenced by PxQuat::PxQuat().

PX_C_EXPORT PX_FOUNDATION_API physx::PxFoundation* PX_CALL_CONV PxCreateFoundation ( physx::PxU32  version,
physx::PxAllocatorCallback &  allocator,
physx::PxErrorCallback &  errorCallback 
)

Creates an instance of the foundation class.

The foundation class is needed to initialize higher level SDKs. There may be only one instance per process. Calling this method after an instance has been created already will result in an error message and NULL will be returned.

Parameters:
version Version number we are expecting (should be PX_PHYSICS_VERSION)
allocator User supplied interface for allocating memory(see PxAllocatorCallback)
errorCallback User supplied interface for reporting errors and displaying messages(see PxErrorCallback)
Returns:
Foundation instance on success, NULL if operation failed
See also:
PxFoundation

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxEquals ( PxF32  a,
PxF32  b,
PxF32  eps 
)

References PxAbs().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxExp ( PxF32  a  ) 

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype >::PxFlags ( storagetype  b  )  [inline, explicit, inherited]

template<typename enumtype, typename storagetype>
PX_INLINE PxFlags< enumtype, storagetype >::PxFlags ( const PxFlags< enumtype, storagetype > &  f  )  [inline, inherited]

template<typename enumtype, typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::PxFlags ( enumtype  e  )  [inline, inherited]

template<typename enumtype , typename storagetype >
PX_INLINE PxFlags< enumtype, storagetype >::PxFlags ( void   )  [inline, inherited]

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxFloor ( PxF32  a  ) 

PX_C_EXPORT PX_FOUNDATION_API physx::PxFoundation& PX_CALL_CONV PxGetFoundation (  ) 

Retrieves the Foundation SDK after it has been created.

Note:
The behavior of this method is undefined if the foundation instance has not been created already.
See also:
PxCreateFoundation()

PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxIsFinite ( PxF64  f  ) 

returns true if the passed number is a finite floating point number as opposed to INF, NAN, etc.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxLog ( PxF32  x  ) 

template<typename T >
PX_INLINE PxStrideIterator<const T> PxMakeIterator ( const T *  ptr,
PxU32  stride = sizeof(T) 
) [inline]

template<typename T >
PX_INLINE PxStrideIterator<T> PxMakeIterator ( T *  ptr,
PxU32  stride = sizeof(T) 
) [inline]

template<>
PX_CUDA_CALLABLE PX_FORCE_INLINE float PxMax ( float  a,
float  b 
) [inline]

overload for float to use fsel on xbox

template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxMax ( a,
b 
) [inline]

The return value is the greater of the two specified values.

Referenced by PxVec3::maxElement(), PxVec2::maxElement(), PxVec4::maximum(), PxVec3::maximum(), PxVec2::maximum(), and PxClamp().

template<>
PX_CUDA_CALLABLE PX_FORCE_INLINE float PxMin ( float  a,
float  b 
) [inline]

overload for float to use fsel on xbox

template<class T >
PX_CUDA_CALLABLE PX_FORCE_INLINE T PxMin ( a,
b 
) [inline]

The return value is the lesser of the two specified values.

Referenced by PxContactPair::extractContacts(), PxVec3::minElement(), PxVec2::minElement(), PxVec4::minimum(), PxVec3::minimum(), PxVec2::minimum(), and PxClamp().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxPow ( PxF32  x,
PxF32  y 
)

PX_CUDA_CALLABLE PX_INLINE PxQuat::PxQuat ( const PxMat33 m  )  [explicit, inherited]

Creates from orientation matrix.

Parameters:
[in] m Rotation matrix to extract quaternion from.

References PxSqrt(), PxQuat::w, PxQuat::x, PxQuat::y, and PxQuat::z.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxRecipSqrt ( PxF64  a  ) 

reciprocal square root.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxRecipSqrt ( PxF32  a  ) 

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxSign ( PxF32  a  ) 

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxSin ( PxF64  a  ) 

Sine of an angle ( Unit: Radians ).

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxSin ( PxF32  a  ) 

trigonometry -- all angles are in radians.

Sine of an angle ( Unit: Radians )

Referenced by PxQuat::PxQuat().

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxSqrt ( PxF64  a  ) 

Square root.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxSqrt ( PxF32  a  ) 

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF64 PxTan ( PxF64  a  ) 

Tangent of an angle. Unit: Radians.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxF32 PxTan ( PxF32  a  ) 

Tangent of an angle. Unit: Radians.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxTransform::PxTransform ( const PxMat44 m  )  [explicit, inherited]

template<class A , class B >
PX_FORCE_INLINE A PxUnionCast ( b  )  [inline]

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::scale ( PxF32  scale  )  [inherited]

scales the AABB.

Parameters:
scale Factor to scale AABB by.

References PxBounds3::centerExtents(), PxBounds3::getCenter(), PxBounds3::getExtents(), PxBounds3::isFinite(), and PX_ASSERT.

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::setEmpty (  )  [inherited]

Sets empty to true.

References PxBounds3::maximum, and PxBounds3::minimum.

PX_CUDA_CALLABLE PX_FORCE_INLINE void PxBounds3::setInfinite (  )  [inherited]

Sets infinite bounds.

References PxBounds3::maximum, PxBounds3::minimum, and PX_MAX_REAL.

PX_CUDA_CALLABLE PX_INLINE PxBounds3 PxBounds3::transform ( const PxTransform transform,
const PxBounds3 bounds 
) [static, inherited]

gets the transformed bounds of the passed AABB (resulting in a bigger AABB).

Parameters:
[in] transform Transform to apply, can contain scaling as well
[in] bounds The bounds to transform.

References PxBounds3::basisExtent(), PxBounds3::getCenter(), PxBounds3::getExtents(), PxBounds3::isEmpty(), PxBounds3::isFinite(), PX_ASSERT, PxTransform::q, and PxTransform::transform().

PX_CUDA_CALLABLE PX_INLINE PxBounds3 PxBounds3::transform ( const PxMat33 matrix,
const PxBounds3 bounds 
) [static, inherited]

gets the transformed bounds of the passed AABB (resulting in a bigger AABB).

Parameters:
[in] matrix Transform to apply, can contain scaling as well
[in] bounds The bounds to transform.

References PxBounds3::basisExtent(), PxBounds3::getCenter(), PxBounds3::getExtents(), PxBounds3::isEmpty(), PxBounds3::isFinite(), and PX_ASSERT.


Variable Documentation

const PxReal PxHalfPi = PxReal(1.57079632679489661923) [static]

const PxReal PxInvPi = PxReal(0.31830988618379067154) [static]

const PxReal PxPi = PxReal(3.141592653589793) [static]

const PxReal PxTwoPi = PxReal(6.28318530717958647692) [static]



Copyright © 2008-2012 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com