PxJoint Class Referenceabstract

a base interface providing common functionality for PhysX joints More...

#include <PxJoint.h>

Inheritance diagram for PxJoint:
Collaboration diagram for PxJoint:

Public Member Functions

virtual void setActors (PxRigidActor *actor0, PxRigidActor *actor1)=0
 Set the actors for this joint. More...
 
virtual void getActors (PxRigidActor *&actor0, PxRigidActor *&actor1) const =0
 Get the actors for this joint. More...
 
virtual void setLocalPose (PxJointActorIndex::Enum actor, const PxTransform &localPose)=0
 Set the joint local pose for an actor. More...
 
virtual PxTransform getLocalPose (PxJointActorIndex::Enum actor) const =0
 get the joint local pose for an actor. More...
 
virtual PxTransform getRelativeTransform () const =0
 get the relative pose for this joint More...
 
virtual PxVec3 getRelativeLinearVelocity () const =0
 get the relative linear velocity of the joint More...
 
virtual PxVec3 getRelativeAngularVelocity () const =0
 get the relative angular velocity of the joint More...
 
virtual void setBreakForce (PxReal force, PxReal torque)=0
 set the break force for this joint. More...
 
virtual void getBreakForce (PxReal &force, PxReal &torque) const =0
 get the break force for this joint. More...
 
virtual void setConstraintFlags (PxConstraintFlags flags)=0
 set the constraint flags for this joint. More...
 
virtual void setConstraintFlag (PxConstraintFlag::Enum flag, bool value)=0
 set a constraint flags for this joint to a specified value. More...
 
virtual PxConstraintFlags getConstraintFlags () const =0
 get the constraint flags for this joint. More...
 
virtual void setInvMassScale0 (PxReal invMassScale)=0
 set the inverse mass scale for actor0. More...
 
virtual PxReal getInvMassScale0 () const =0
 get the inverse mass scale for actor0. More...
 
virtual void setInvInertiaScale0 (PxReal invInertiaScale)=0
 set the inverse inertia scale for actor0. More...
 
virtual PxReal getInvInertiaScale0 () const =0
 get the inverse inertia scale for actor0. More...
 
virtual void setInvMassScale1 (PxReal invMassScale)=0
 set the inverse mass scale for actor1. More...
 
virtual PxReal getInvMassScale1 () const =0
 get the inverse mass scale for actor1. More...
 
virtual void setInvInertiaScale1 (PxReal invInertiaScale)=0
 set the inverse inertia scale for actor1. More...
 
virtual PxReal getInvInertiaScale1 () const =0
 get the inverse inertia scale for actor1. More...
 
virtual PxConstraintgetConstraint () const =0
 Retrieves the PxConstraint corresponding to this joint. More...
 
virtual void setName (const char *name)=0
 Sets a name string for the object that can be retrieved with getName(). More...
 
virtual const char * getName () const =0
 Retrieves the name string set with setName(). More...
 
virtual void release ()=0
 Deletes the joint. More...
 
virtual PxScenegetScene () const =0
 Retrieves the scene which this joint belongs to. More...
 
- Public Member Functions inherited from PxBase
virtual const char * getConcreteTypeName () const =0
 Returns string name of dynamic type. More...
 
template<class T >
T * is ()
 
template<class T >
const T * is () const
 
PX_FORCE_INLINE PxType getConcreteType () const
 Returns concrete type of object. More...
 
PX_FORCE_INLINE void setBaseFlag (PxBaseFlag::Enum flag, bool value)
 Set PxBaseFlag. More...
 
PX_FORCE_INLINE void setBaseFlags (PxBaseFlags inFlags)
 Set PxBaseFlags. More...
 
PX_FORCE_INLINE PxBaseFlags getBaseFlags () const
 Returns PxBaseFlags. More...
 
virtual bool isReleasable () const
 Whether the object is subordinate. More...
 

Static Public Member Functions

static void getBinaryMetaData (PxOutputStream &stream)
 Put class meta data in stream, used for serialization. More...
 

Public Attributes

void * userData
 user can assign this to whatever, usually to create a 1:1 relationship with a user object. More...
 

Protected Member Functions

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

Additional Inherited Members

- Protected Attributes inherited from PxBase
PxType mConcreteType
 
PxBaseFlags mBaseFlags
 

Detailed Description

a base interface providing common functionality for PhysX joints

Constructor & Destructor Documentation

◆ ~PxJoint()

virtual PxJoint::~PxJoint ( )
inlineprotectedvirtual

◆ PxJoint() [1/2]

PX_INLINE PxJoint::PxJoint ( PxType  concreteType,
PxBaseFlags  baseFlags 
)
inlineprotected

Constructor.

◆ PxJoint() [2/2]

PX_INLINE PxJoint::PxJoint ( PxBaseFlags  baseFlags)
inlineprotected

Deserialization constructor.

Member Function Documentation

◆ getActors()

virtual void PxJoint::getActors ( PxRigidActor *&  actor0,
PxRigidActor *&  actor1 
) const
pure virtual

Get the actors for this joint.

Parameters
[out]actor0the first actor.
[out]actor1the second actor
See also
setActors()

◆ getBinaryMetaData()

static void PxJoint::getBinaryMetaData ( PxOutputStream stream)
static

Put class meta data in stream, used for serialization.

◆ getBreakForce()

virtual void PxJoint::getBreakForce ( PxReal &  force,
PxReal &  torque 
) const
pure virtual

get the break force for this joint.

Parameters
[out]forcethe maximum force the joint can apply before breaking
[out]torquethe maximum torque the joint can apply before breaking
See also
setBreakForce()

◆ getConstraint()

virtual PxConstraint* PxJoint::getConstraint ( ) const
pure virtual

Retrieves the PxConstraint corresponding to this joint.

This can be used to determine, among other things, the force applied at the joint.

Returns
the constraint

◆ getConstraintFlags()

virtual PxConstraintFlags PxJoint::getConstraintFlags ( ) const
pure virtual

get the constraint flags for this joint.

Returns
the constraint flags
See also
PxConstraintFlag

◆ getInvInertiaScale0()

virtual PxReal PxJoint::getInvInertiaScale0 ( ) const
pure virtual

get the inverse inertia scale for actor0.

Returns
inverse inertia scale for actor0
See also
setInvInertiaScale0

◆ getInvInertiaScale1()

virtual PxReal PxJoint::getInvInertiaScale1 ( ) const
pure virtual

get the inverse inertia scale for actor1.

Returns
inverse inertia scale for actor1
See also
setInvInertiaScale1

◆ getInvMassScale0()

virtual PxReal PxJoint::getInvMassScale0 ( ) const
pure virtual

get the inverse mass scale for actor0.

Returns
inverse mass scale for actor0
See also
setInvMassScale0

◆ getInvMassScale1()

virtual PxReal PxJoint::getInvMassScale1 ( ) const
pure virtual

get the inverse mass scale for actor1.

Returns
inverse mass scale for actor1
See also
setInvMassScale1

◆ getLocalPose()

virtual PxTransform PxJoint::getLocalPose ( PxJointActorIndex::Enum  actor) const
pure virtual

get the joint local pose for an actor.

Parameters
[in]actor0 for the first actor, 1 for the second actor.

return the local pose for this joint

See also
setLocalPose()

◆ getName()

virtual const char* PxJoint::getName ( ) const
pure virtual

Retrieves the name string set with setName().

Returns
Name string associated with object.
See also
setName()

◆ getRelativeAngularVelocity()

virtual PxVec3 PxJoint::getRelativeAngularVelocity ( ) const
pure virtual

get the relative angular velocity of the joint

This function returns the angular velocity of actor1 relative to actor0. The value is returned in the constraint frame of actor0

◆ getRelativeLinearVelocity()

virtual PxVec3 PxJoint::getRelativeLinearVelocity ( ) const
pure virtual

get the relative linear velocity of the joint

This function returns the linear velocity of the origin of the constraint frame of actor1, relative to the origin of the constraint frame of actor0. The value is returned in the constraint frame of actor0

◆ getRelativeTransform()

virtual PxTransform PxJoint::getRelativeTransform ( ) const
pure virtual

get the relative pose for this joint

This function returns the pose of the joint frame of actor1 relative to actor0

◆ getScene()

virtual PxScene* PxJoint::getScene ( ) const
pure virtual

Retrieves the scene which this joint belongs to.

Returns
Owner Scene. NULL if not part of a scene.
See also
PxScene

◆ isKindOf()

virtual bool PxJoint::isKindOf ( const char *  name) const
inlineprotectedvirtual

◆ release()

virtual void PxJoint::release ( )
pure virtual

Deletes the joint.

Note
This call does not wake up the connected rigid bodies.

Implements PxBase.

◆ setActors()

virtual void PxJoint::setActors ( PxRigidActor actor0,
PxRigidActor actor1 
)
pure virtual

Set the actors for this joint.

An actor may be NULL to indicate the world frame. At most one of the actors may be NULL.

Parameters
[in]actor0the first actor.
[in]actor1the second actor
See also
getActors()

◆ setBreakForce()

virtual void PxJoint::setBreakForce ( PxReal  force,
PxReal  torque 
)
pure virtual

set the break force for this joint.

if the constraint force or torque on the joint exceeds the specified values, the joint will break, at which point it will not constrain the two actors and the flag PxConstraintFlag::eBROKEN will be set. The force and torque are measured in the joint frame of the first actor

Parameters
[in]forcethe maximum force the joint can apply before breaking
[in]torquethe maximum torque the joint can apply before breaking

◆ setConstraintFlag()

virtual void PxJoint::setConstraintFlag ( PxConstraintFlag::Enum  flag,
bool  value 
)
pure virtual

set a constraint flags for this joint to a specified value.

Parameters
[in]flagthe constraint flag
[in]valuethe value to which to set the flag
See also
PxConstraintFlag

◆ setConstraintFlags()

virtual void PxJoint::setConstraintFlags ( PxConstraintFlags  flags)
pure virtual

set the constraint flags for this joint.

Parameters
[in]flagsthe constraint flags
See also
PxConstraintFlag

◆ setInvInertiaScale0()

virtual void PxJoint::setInvInertiaScale0 ( PxReal  invInertiaScale)
pure virtual

set the inverse inertia scale for actor0.

Parameters
[in]invInertiaScalethe scale to apply to the inverse inertia of actor0 for resolving this constraint
See also
getInvMassScale0

◆ setInvInertiaScale1()

virtual void PxJoint::setInvInertiaScale1 ( PxReal  invInertiaScale)
pure virtual

set the inverse inertia scale for actor1.

Parameters
[in]invInertiaScalethe scale to apply to the inverse inertia of actor1 for resolving this constraint
See also
getInvInertiaScale1

◆ setInvMassScale0()

virtual void PxJoint::setInvMassScale0 ( PxReal  invMassScale)
pure virtual

set the inverse mass scale for actor0.

Parameters
[in]invMassScalethe scale to apply to the inverse mass of actor 0 for resolving this constraint
See also
getInvMassScale0

◆ setInvMassScale1()

virtual void PxJoint::setInvMassScale1 ( PxReal  invMassScale)
pure virtual

set the inverse mass scale for actor1.

Parameters
[in]invMassScalethe scale to apply to the inverse mass of actor 1 for resolving this constraint
See also
getInvMassScale1

◆ setLocalPose()

virtual void PxJoint::setLocalPose ( PxJointActorIndex::Enum  actor,
const PxTransform localPose 
)
pure virtual

Set the joint local pose for an actor.

This is the relative pose which locates the joint frame relative to the actor.

Parameters
[in]actor0 for the first actor, 1 for the second actor.
[in]localPosethe local pose for the actor this joint
See also
getLocalPose()

◆ setName()

virtual void PxJoint::setName ( const char *  name)
pure virtual

Sets a name string for the object that can be retrieved with getName().

This is for debugging and is not used by the SDK. The string is not copied by the SDK, only the pointer is stored.

Parameters
[in]nameString to set the objects name to.
See also
getName()

Member Data Documentation

◆ userData

void* PxJoint::userData

user can assign this to whatever, usually to create a 1:1 relationship with a user object.


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