PxArticulationLink Class Referenceabstract

a component of an articulation that represents a rigid body More...

#include <PxArticulationLink.h>

Inheritance diagram for PxArticulationLink:
Collaboration diagram for PxArticulationLink:

Public Member Functions

virtual void release ()=0
 Deletes the articulation link. More...
 
virtual PxArticulationBasegetArticulation () const =0
 get the articulation to which this articulation link belongs. This returns the base class. The application should establish which articulation implementation this actually is and upcast to that type to access non-common functionality More...
 
virtual PxArticulationJointBasegetInboundJoint () const =0
 Get the joint which connects this link to its parent. More...
 
virtual PxU32 getInboundJointDof () const =0
 Get the degree of freedom of the joint which connects this link to its parent. More...
 
virtual PxU32 getNbChildren () const =0
 Get number of child links. More...
 
virtual PxU32 getLinkIndex () const =0
 Get low-level link index. More...
 
virtual PxU32 getChildren (PxArticulationLink **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the child links. More...
 
virtual const char * getConcreteTypeName () const
 Returns string name of dynamic type. More...
 
- Public Member Functions inherited from PxRigidBody
virtual void setCMassLocalPose (const PxTransform &pose)=0
 Sets the pose of the center of mass relative to the actor. More...
 
virtual PxTransform getCMassLocalPose () const =0
 Retrieves the center of mass pose relative to the actor frame. More...
 
virtual void setMass (PxReal mass)=0
 Sets the mass of a dynamic actor. More...
 
virtual PxReal getMass () const =0
 Retrieves the mass of the actor. More...
 
virtual PxReal getInvMass () const =0
 Retrieves the inverse mass of the actor. More...
 
virtual void setMassSpaceInertiaTensor (const PxVec3 &m)=0
 Sets the inertia tensor, using a parameter specified in mass space coordinates. More...
 
virtual PxVec3 getMassSpaceInertiaTensor () const =0
 Retrieves the diagonal inertia tensor of the actor relative to the mass coordinate frame. More...
 
virtual PxVec3 getMassSpaceInvInertiaTensor () const =0
 Retrieves the diagonal inverse inertia tensor of the actor relative to the mass coordinate frame. More...
 
virtual void setLinearDamping (PxReal linDamp)=0
 Sets the linear damping coefficient. More...
 
virtual PxReal getLinearDamping () const =0
 Retrieves the linear damping coefficient. More...
 
virtual void setAngularDamping (PxReal angDamp)=0
 Sets the angular damping coefficient. More...
 
virtual PxReal getAngularDamping () const =0
 Retrieves the angular damping coefficient. More...
 
virtual PxVec3 getLinearVelocity () const =0
 Retrieves the linear velocity of an actor. More...
 
virtual void setLinearVelocity (const PxVec3 &linVel, bool autowake=true)=0
 Sets the linear velocity of the actor. More...
 
virtual PxVec3 getAngularVelocity () const =0
 Retrieves the angular velocity of the actor. More...
 
virtual void setAngularVelocity (const PxVec3 &angVel, bool autowake=true)=0
 Sets the angular velocity of the actor. More...
 
virtual void setMaxAngularVelocity (PxReal maxAngVel)=0
 Lets you set the maximum angular velocity permitted for this actor. More...
 
virtual PxReal getMaxAngularVelocity () const =0
 Retrieves the maximum angular velocity permitted for this actor. More...
 
virtual void setMaxLinearVelocity (PxReal maxLinVel)=0
 Lets you set the maximum linear velocity permitted for this actor. More...
 
virtual PxReal getMaxLinearVelocity () const =0
 Retrieves the maximum angular velocity permitted for this actor. More...
 
virtual void addForce (const PxVec3 &force, PxForceMode::Enum mode=PxForceMode::eFORCE, bool autowake=true)=0
 Applies a force (or impulse) defined in the global coordinate frame to the actor at its center of mass. More...
 
virtual void addTorque (const PxVec3 &torque, PxForceMode::Enum mode=PxForceMode::eFORCE, bool autowake=true)=0
 Applies an impulsive torque defined in the global coordinate frame to the actor. More...
 
virtual void clearForce (PxForceMode::Enum mode=PxForceMode::eFORCE)=0
 Clears the accumulated forces (sets the accumulated force back to zero). More...
 
virtual void clearTorque (PxForceMode::Enum mode=PxForceMode::eFORCE)=0
 Clears the impulsive torque defined in the global coordinate frame to the actor. More...
 
virtual void setForceAndTorque (const PxVec3 &force, const PxVec3 &torque, PxForceMode::Enum mode=PxForceMode::eFORCE)=0
 Sets the impulsive force and torque defined in the global coordinate frame to the actor. More...
 
virtual void setRigidBodyFlag (PxRigidBodyFlag::Enum flag, bool value)=0
 Raises or clears a particular rigid body flag. More...
 
virtual void setRigidBodyFlags (PxRigidBodyFlags inFlags)=0
 
virtual PxRigidBodyFlags getRigidBodyFlags () const =0
 Reads the PxRigidBody flags. More...
 
virtual void setMinCCDAdvanceCoefficient (PxReal advanceCoefficient)=0
 Sets the CCD minimum advance coefficient. More...
 
virtual PxReal getMinCCDAdvanceCoefficient () const =0
 Gets the CCD minimum advance coefficient. More...
 
virtual void setMaxDepenetrationVelocity (PxReal biasClamp)=0
 Sets the maximum depenetration velocity permitted to be introduced by the solver. This value controls how much velocity the solver can introduce to correct for penetrations in contacts. More...
 
virtual PxReal getMaxDepenetrationVelocity () const =0
 Returns the maximum depenetration velocity the solver is permitted to introduced. This value controls how much velocity the solver can introduce to correct for penetrations in contacts. More...
 
virtual void setMaxContactImpulse (PxReal maxImpulse)=0
 Sets a limit on the impulse that may be applied at a contact. The maximum impulse at a contact between two dynamic or kinematic bodies will be the minimum of the two limit values. For a collision between a static and a dynamic body, the impulse is limited by the value for the dynamic body. More...
 
virtual PxReal getMaxContactImpulse () const =0
 Returns the maximum impulse that may be applied at a contact. More...
 
virtual PxU32 getInternalIslandNodeIndex () const =0
 Returns the island node index that only for internal use only. More...
 
- Public Member Functions inherited from PxRigidActor
virtual PxTransform getGlobalPose () const =0
 Retrieves the actors world space transform. More...
 
virtual void setGlobalPose (const PxTransform &pose, bool autowake=true)=0
 Method for setting an actor's pose in the world. More...
 
virtual bool attachShape (PxShape &shape)=0
 
virtual void detachShape (PxShape &shape, bool wakeOnLostTouch=true)=0
 
virtual PxU32 getNbShapes () const =0
 Returns the number of shapes assigned to the actor. More...
 
virtual PxU32 getShapes (PxShape **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the shape pointers belonging to the actor. More...
 
virtual PxU32 getNbConstraints () const =0
 Returns the number of constraint shaders attached to the actor. More...
 
virtual PxU32 getConstraints (PxConstraint **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the constraint shader pointers belonging to the actor. More...
 
- Public Member Functions inherited from PxActor
virtual PxActorType::Enum getType () const =0
 Retrieves the type of actor. More...
 
virtual PxScenegetScene () const =0
 Retrieves the scene which this actor belongs to. 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 PxBounds3 getWorldBounds (float inflation=1.01f) const =0
 Retrieves the axis aligned bounding box enclosing the actor. More...
 
virtual void setActorFlag (PxActorFlag::Enum flag, bool value)=0
 Raises or clears a particular actor flag. More...
 
virtual void setActorFlags (PxActorFlags inFlags)=0
 sets the actor flags More...
 
virtual PxActorFlags getActorFlags () const =0
 Reads the PxActor flags. More...
 
virtual void setDominanceGroup (PxDominanceGroup dominanceGroup)=0
 Assigns dynamic actors a dominance group identifier. More...
 
virtual PxDominanceGroup getDominanceGroup () const =0
 Retrieves the value set with setDominanceGroup(). More...
 
virtual void setOwnerClient (PxClientID inClient)=0
 Sets the owner client of an actor. More...
 
virtual PxClientID getOwnerClient () const =0
 Returns the owner client that was specified with at creation time. More...
 
virtual PxAggregategetAggregate () const =0
 Retrieves the aggregate the actor might be a part of. More...
 
- Public Member Functions inherited from PxBase
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...
 

Protected Member Functions

PX_INLINE PxArticulationLink (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxArticulationLink (PxBaseFlags baseFlags)
 
virtual ~PxArticulationLink ()
 
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 PxRigidBody
PX_INLINE PxRigidBody (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxRigidBody (PxBaseFlags baseFlags)
 
virtual ~PxRigidBody ()
 
- Protected Member Functions inherited from PxRigidActor
PX_INLINE PxRigidActor (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxRigidActor (PxBaseFlags baseFlags)
 
virtual ~PxRigidActor ()
 
- Protected Member Functions inherited from PxActor
PX_INLINE PxActor (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxActor (PxBaseFlags baseFlags)
 
virtual ~PxActor ()
 
- 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

- Public Attributes inherited from PxActor
void * userData
 user can assign this to whatever, usually to create a 1:1 relationship with a user object. More...
 
- Protected Attributes inherited from PxBase
PxType mConcreteType
 
PxBaseFlags mBaseFlags
 

Detailed Description

a component of an articulation that represents a rigid body

A limited subset of the properties of PxRigidDynamic are supported. In particular, sleep properties are attributes of the articulation rather than each individual body, damping and velocity limits are not supported, and links may not be kinematic.

See also
PxArticulation PxArticulation.createLink PxArticulationJoint PxRigidBody

Constructor & Destructor Documentation

◆ PxArticulationLink() [1/2]

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

◆ PxArticulationLink() [2/2]

PX_INLINE PxArticulationLink::PxArticulationLink ( PxBaseFlags  baseFlags)
inlineprotected

◆ ~PxArticulationLink()

virtual PxArticulationLink::~PxArticulationLink ( )
inlineprotectedvirtual

Member Function Documentation

◆ getArticulation()

virtual PxArticulationBase& PxArticulationLink::getArticulation ( ) const
pure virtual

get the articulation to which this articulation link belongs. This returns the base class. The application should establish which articulation implementation this actually is and upcast to that type to access non-common functionality

Returns
the articulation to which this link belongs

◆ getChildren()

virtual PxU32 PxArticulationLink::getChildren ( PxArticulationLink **  userBuffer,
PxU32  bufferSize,
PxU32  startIndex = 0 
) const
pure virtual

Retrieve all the child links.

Parameters
[out]userBufferThe buffer to receive articulation link pointers.
[in]bufferSizeSize of provided user buffer.
Returns
Number of articulation links written to the buffer.
Parameters
[in]startIndexIndex of first child pointer to be retrieved
See also
getNbChildren()

◆ getConcreteTypeName()

virtual const char* PxArticulationLink::getConcreteTypeName ( ) const
inlinevirtual

Returns string name of dynamic type.

Returns
Class name of most derived type of this object.

Implements PxBase.

◆ getInboundJoint()

virtual PxArticulationJointBase* PxArticulationLink::getInboundJoint ( ) const
pure virtual

Get the joint which connects this link to its parent.

Returns
The joint connecting the link to the parent. NULL for the root link.
See also
PxArticulationJoint

◆ getInboundJointDof()

virtual PxU32 PxArticulationLink::getInboundJointDof ( ) const
pure virtual

Get the degree of freedom of the joint which connects this link to its parent.

Returns
The degree of freeedom of the joint connecting the link to the parent. 0xffffffff for the root link.
See also
PxArticulationJoint

◆ getLinkIndex()

virtual PxU32 PxArticulationLink::getLinkIndex ( ) const
pure virtual

Get low-level link index.

Returns
low-level index

◆ getNbChildren()

virtual PxU32 PxArticulationLink::getNbChildren ( ) const
pure virtual

Get number of child links.

Returns
the number of child links
See also
getChildren()

◆ isKindOf()

virtual bool PxArticulationLink::isKindOf ( const char *  superClass) const
inlineprotectedvirtual

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

Reimplemented from PxRigidBody.

References PxRigidBody::isKindOf().

◆ release()

virtual void PxArticulationLink::release ( )
pure virtual

Deletes the articulation link.

Note
Only a leaf articulation link can be released

Do not keep a reference to the deleted instance.

See also
PxArticulation::createLink()

Implements PxRigidActor.


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