PxArticulationJoint Class Referenceabstract

a joint between two links in an articulation. More...

#include <PxArticulationJoint.h>

Inheritance diagram for PxArticulationJoint:
Collaboration diagram for PxArticulationJoint:

Public Member Functions

virtual void setTargetOrientation (const PxQuat &orientation)=0
 set the target drive More...
 
virtual PxQuat getTargetOrientation () const =0
 get the target drive position More...
 
virtual void setTargetVelocity (const PxVec3 &velocity)=0
 set the target drive velocity More...
 
virtual PxVec3 getTargetVelocity () const =0
 get the target drive velocity More...
 
virtual void setDriveType (PxArticulationJointDriveType::Enum driveType)=0
 set the drive type More...
 
virtual PxArticulationJointDriveType::Enum getDriveType () const =0
 get the drive type More...
 
virtual void setStiffness (PxReal spring)=0
 set the drive strength of the joint acceleration spring. More...
 
virtual PxReal getStiffness () const =0
 get the drive strength of the joint acceleration spring More...
 
virtual void setDamping (PxReal damping)=0
 set the damping of the joint acceleration spring More...
 
virtual PxReal getDamping () const =0
 get the damping of the joint acceleration spring More...
 
virtual void setInternalCompliance (PxReal compliance)=0
 set the internal compliance More...
 
virtual PxReal getInternalCompliance () const =0
 get the internal compliance More...
 
virtual void setExternalCompliance (PxReal compliance)=0
 get the drive external compliance More...
 
virtual PxReal getExternalCompliance () const =0
 get the drive external compliance More...
 
virtual void setSwingLimit (PxReal zLimit, PxReal yLimit)=0
 set the extents of the cone limit. The extents are measured in the frame of the parent. More...
 
virtual void getSwingLimit (PxReal &zLimit, PxReal &yLimit) const =0
 get the extents for the swing limit cone More...
 
virtual void setTangentialStiffness (PxReal spring)=0
 set the tangential spring for the limit cone Range: ([0, PX_MAX_F32), [0, PX_MAX_F32)) Default: (0.0, 0.0) More...
 
virtual PxReal getTangentialStiffness () const =0
 get the tangential spring for the swing limit cone More...
 
virtual void setTangentialDamping (PxReal damping)=0
 set the tangential damping for the limit cone Range: ([0, PX_MAX_F32), [0, PX_MAX_F32)) Default: (0.0, 0.0) More...
 
virtual PxReal getTangentialDamping () const =0
 get the tangential damping for the swing limit cone More...
 
virtual void setSwingLimitContactDistance (PxReal contactDistance)=0
 set the contact distance for the swing limit More...
 
virtual PxReal getSwingLimitContactDistance () const =0
 get the contact distance for the swing limit More...
 
virtual void setSwingLimitEnabled (bool enabled)=0
 set the flag which enables the swing limit More...
 
virtual bool getSwingLimitEnabled () const =0
 get the flag which enables the swing limit More...
 
virtual void setTwistLimit (PxReal lower, PxReal upper)=0
 set the bounds of the twistLimit More...
 
virtual void getTwistLimit (PxReal &lower, PxReal &upper) const =0
 get the bounds of the twistLimit More...
 
virtual void setTwistLimitEnabled (bool enabled)=0
 set the flag which enables the twist limit More...
 
virtual bool getTwistLimitEnabled () const =0
 get the twistLimitEnabled flag More...
 
virtual void setTwistLimitContactDistance (PxReal contactDistance)=0
 set the contact distance for the swing limit More...
 
virtual PxReal getTwistLimitContactDistance () const =0
 get the contact distance for the swing limit More...
 
virtual const char * getConcreteTypeName () const
 Returns string name of dynamic type. More...
 
- Public Member Functions inherited from PxArticulationJointBase
virtual PxArticulationLinkgetParentArticulationLink () const =0
 get the parent articulation link to which this articulation joint belongs More...
 
virtual void setParentPose (const PxTransform &pose)=0
 set the joint pose in the parent frame More...
 
virtual PxTransform getParentPose () const =0
 get the joint pose in the parent frame More...
 
virtual PxArticulationLinkgetChildArticulationLink () const =0
 get the child articulation link to which this articulation joint belongs More...
 
virtual void setChildPose (const PxTransform &pose)=0
 set the joint pose in the child frame More...
 
virtual PxTransform getChildPose () const =0
 get the joint pose in the child frame More...
 
virtual PxArticulationJointImpl * getImpl ()=0
 
virtual const PxArticulationJointImpl * getImpl () const =0
 
virtual ~PxArticulationJointBase ()
 
- Public Member Functions inherited from PxBase
virtual void release ()=0
 Releases the PxBase instance, please check documentation of release in derived class. 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...
 

Protected Member Functions

PX_INLINE PxArticulationJoint (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxArticulationJoint (PxBaseFlags baseFlags)
 
virtual ~PxArticulationJoint ()
 
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 PxArticulationJointBase
PX_INLINE PxArticulationJointBase (PxType concreteType, PxBaseFlags baseFlags)
 
PX_INLINE PxArticulationJointBase (PxBaseFlags baseFlags)
 
- 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 joint between two links in an articulation.

The joint model is very similar to a PxSphericalJoint with swing and twist limits, and an implicit drive model.

See also
PxArticulation PxArticulationLink

Constructor & Destructor Documentation

◆ PxArticulationJoint() [1/2]

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

◆ PxArticulationJoint() [2/2]

PX_INLINE PxArticulationJoint::PxArticulationJoint ( PxBaseFlags  baseFlags)
inlineprotected

◆ ~PxArticulationJoint()

virtual PxArticulationJoint::~PxArticulationJoint ( )
inlineprotectedvirtual

Member Function Documentation

◆ getConcreteTypeName()

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

Returns string name of dynamic type.

Returns
Class name of most derived type of this object.

Implements PxBase.

◆ getDamping()

virtual PxReal PxArticulationJoint::getDamping ( ) const
pure virtual

get the damping of the joint acceleration spring

See also
setDamping()

◆ getDriveType()

virtual PxArticulationJointDriveType::Enum PxArticulationJoint::getDriveType ( ) const
pure virtual

get the drive type

Returns
the drive type
See also
setDriveType()

◆ getExternalCompliance()

virtual PxReal PxArticulationJoint::getExternalCompliance ( ) const
pure virtual

get the drive external compliance

Returns
the compliance to external forces
See also
setExternalCompliance()

◆ getInternalCompliance()

virtual PxReal PxArticulationJoint::getInternalCompliance ( ) const
pure virtual

get the internal compliance

Returns
the compliance to internal forces
See also
setInternalCompliance()

◆ getStiffness()

virtual PxReal PxArticulationJoint::getStiffness ( ) const
pure virtual

get the drive strength of the joint acceleration spring

Returns
the spring strength of the joint
See also
setStiffness()

◆ getSwingLimit()

virtual void PxArticulationJoint::getSwingLimit ( PxReal &  zLimit,
PxReal &  yLimit 
) const
pure virtual

get the extents for the swing limit cone

Parameters
[out]zLimitthe allowed extent of rotation around the z-axis
[out]yLimitthe allowed extent of rotation around the y-axis
Note
Please note the order of zLimit and yLimit.
See also
setSwingLimit()

◆ getSwingLimitContactDistance()

virtual PxReal PxArticulationJoint::getSwingLimitContactDistance ( ) const
pure virtual

get the contact distance for the swing limit

Returns
the contact distance for the swing limit cone
See also
setSwingLimitContactDistance()

◆ getSwingLimitEnabled()

virtual bool PxArticulationJoint::getSwingLimitEnabled ( ) const
pure virtual

get the flag which enables the swing limit

Returns
whether the swing limit is enabled
See also
setSwingLimitEnabled()

◆ getTangentialDamping()

virtual PxReal PxArticulationJoint::getTangentialDamping ( ) const
pure virtual

get the tangential damping for the swing limit cone

Returns
the tangential damping
See also
setTangentialDamping()

◆ getTangentialStiffness()

virtual PxReal PxArticulationJoint::getTangentialStiffness ( ) const
pure virtual

get the tangential spring for the swing limit cone

Returns
the tangential spring
See also
setTangentialStiffness()

◆ getTargetOrientation()

virtual PxQuat PxArticulationJoint::getTargetOrientation ( ) const
pure virtual

get the target drive position

Returns
the joint drive target position
See also
setTargetOrientation()

◆ getTargetVelocity()

virtual PxVec3 PxArticulationJoint::getTargetVelocity ( ) const
pure virtual

get the target drive velocity

Returns
the target velocity for the joint
See also
setTargetVelocity()

◆ getTwistLimit()

virtual void PxArticulationJoint::getTwistLimit ( PxReal &  lower,
PxReal &  upper 
) const
pure virtual

get the bounds of the twistLimit

Parameters
[out]lowerthe lower extent of the twist limit
[out]upperthe upper extent of the twist limit
See also
setTwistLimit()

◆ getTwistLimitContactDistance()

virtual PxReal PxArticulationJoint::getTwistLimitContactDistance ( ) const
pure virtual

get the contact distance for the swing limit

Returns
the contact distance for the twist limit
See also
setTwistLimitContactDistance()

◆ getTwistLimitEnabled()

virtual bool PxArticulationJoint::getTwistLimitEnabled ( ) const
pure virtual

get the twistLimitEnabled flag

Returns
whether the twist limit is enabled
See also
setTwistLimitEnabled()

◆ isKindOf()

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

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

Reimplemented from PxArticulationJointBase.

References PxArticulationJointBase::isKindOf().

◆ setDamping()

virtual void PxArticulationJoint::setDamping ( PxReal  damping)
pure virtual

set the damping of the joint acceleration spring

The acceleration generated by the spring drive is proportional to this value and the difference between the angular velocity of the joint and the target drive velocity.

Parameters
[in]dampingthe damping of the joint drive Range: [0, PX_MAX_F32)
Default: 0.0
See also
getDamping()

◆ setDriveType()

virtual void PxArticulationJoint::setDriveType ( PxArticulationJointDriveType::Enum  driveType)
pure virtual

set the drive type

Parameters
[in]driveTypethe drive type for the joint Default: PxArticulationJointDriveType::eTARGET
See also
getDriveType()

◆ setExternalCompliance()

virtual void PxArticulationJoint::setExternalCompliance ( PxReal  compliance)
pure virtual

get the drive external compliance

Compliance determines the extent to which the joint resists acceleration.

There are separate values for resistance to accelerations caused by external forces such as gravity and contact forces, and internal forces generated from other joints.

A low compliance means that forces have little effect, a compliance of 1 means the joint does not resist such forces at all.

Parameters
[in]compliancethe compliance to external forces Range: (0, 1] Default: 0.0
See also
getExternalCompliance()

◆ setInternalCompliance()

virtual void PxArticulationJoint::setInternalCompliance ( PxReal  compliance)
pure virtual

set the internal compliance

Compliance determines the extent to which the joint resists acceleration.

There are separate values for resistance to accelerations caused by external forces such as gravity and contact forces, and internal forces generated from other joints.

A low compliance means that forces have little effect, a compliance of 1 means the joint does not resist such forces at all.

Parameters
[in]compliancethe compliance to internal forces Range: (0, 1] Default: 0.0
See also
getInternalCompliance()

◆ setStiffness()

virtual void PxArticulationJoint::setStiffness ( PxReal  spring)
pure virtual

set the drive strength of the joint acceleration spring.

The acceleration generated by the spring drive is proportional to this value and the angle between the drive target position and the current position.

Parameters
[in]springthe spring strength of the joint Range: [0, PX_MAX_F32)
Default: 0.0
See also
getStiffness()

◆ setSwingLimit()

virtual void PxArticulationJoint::setSwingLimit ( PxReal  zLimit,
PxReal  yLimit 
)
pure virtual

set the extents of the cone limit. The extents are measured in the frame of the parent.

Note that very small or highly elliptical limit cones may result in jitter.

Parameters
[in]zLimitthe allowed extent of rotation around the z-axis
[in]yLimitthe allowed extent of rotation around the y-axis Range: ( (0, Pi), (0, Pi) ) Default: (Pi/4, Pi/4)
Note
Please note the order of zLimit and yLimit.

◆ setSwingLimitContactDistance()

virtual void PxArticulationJoint::setSwingLimitContactDistance ( PxReal  contactDistance)
pure virtual

set the contact distance for the swing limit

The contact distance should be less than either limit angle.

Range: [0, Pi] Default: 0.05 radians

See also
getSwingLimitContactDistance()

◆ setSwingLimitEnabled()

virtual void PxArticulationJoint::setSwingLimitEnabled ( bool  enabled)
pure virtual

set the flag which enables the swing limit

Parameters
[in]enabledwhether the limit is enabled Default: false
See also
getSwingLimitEnabled()

◆ setTangentialDamping()

virtual void PxArticulationJoint::setTangentialDamping ( PxReal  damping)
pure virtual

set the tangential damping for the limit cone Range: ([0, PX_MAX_F32), [0, PX_MAX_F32)) Default: (0.0, 0.0)

◆ setTangentialStiffness()

virtual void PxArticulationJoint::setTangentialStiffness ( PxReal  spring)
pure virtual

set the tangential spring for the limit cone Range: ([0, PX_MAX_F32), [0, PX_MAX_F32)) Default: (0.0, 0.0)

◆ setTargetOrientation()

virtual void PxArticulationJoint::setTargetOrientation ( const PxQuat orientation)
pure virtual

set the target drive

This is the target position for the joint drive, measured in the parent constraint frame.

Parameters
[in]orientationthe target orientation for the joint Range: a unit quaternion Default: the identity quaternion
See also
getTargetOrientation()

◆ setTargetVelocity()

virtual void PxArticulationJoint::setTargetVelocity ( const PxVec3 velocity)
pure virtual

set the target drive velocity

This is the target velocity for the joint drive, measured in the parent constraint frame

Parameters
[in]velocitythe target velocity for the joint Default: the zero vector
See also
getTargetVelocity()

◆ setTwistLimit()

virtual void PxArticulationJoint::setTwistLimit ( PxReal  lower,
PxReal  upper 
)
pure virtual

set the bounds of the twistLimit

Parameters
[in]lowerthe lower extent of the twist limit
[in]upperthe upper extent of the twist limit Range: (-Pi, Pi) Default: (-Pi/4, Pi/4)

The lower limit value must be less than the upper limit if the limit is enabled

See also
getTwistLimit()

◆ setTwistLimitContactDistance()

virtual void PxArticulationJoint::setTwistLimitContactDistance ( PxReal  contactDistance)
pure virtual

set the contact distance for the swing limit

The contact distance should be less than half the distance between the upper and lower limits.

Range: [0, Pi) Default: 0.05 radians

See also
getTwistLimitContactDistance()

◆ setTwistLimitEnabled()

virtual void PxArticulationJoint::setTwistLimitEnabled ( bool  enabled)
pure virtual

set the flag which enables the twist limit

Parameters
[in]enabledwhether the twist limit is enabled Default: false
See also
getTwistLimitEnabled()

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