PxPrismaticJoint Class Referenceabstract

A prismatic joint permits relative translational movement between two bodies along an axis, but no relative rotational movement. More...

#include <PxPrismaticJoint.h>

Inheritance diagram for PxPrismaticJoint:
Collaboration diagram for PxPrismaticJoint:

Public Member Functions

virtual PxReal getPosition () const =0
 returns the displacement of the joint along its axis. More...
 
virtual PxReal getVelocity () const =0
 returns the velocity of the joint along its axis More...
 
virtual void setLimit (const PxJointLinearLimitPair &)=0
 sets the joint limit parameters. More...
 
virtual PxJointLinearLimitPair getLimit () const =0
 gets the joint limit parameters. More...
 
virtual void setPrismaticJointFlags (PxPrismaticJointFlags flags)=0
 Set the flags specific to the Prismatic Joint. More...
 
virtual void setPrismaticJointFlag (PxPrismaticJointFlag::Enum flag, bool value)=0
 Set a single flag specific to a Prismatic Joint to true or false. More...
 
virtual PxPrismaticJointFlags getPrismaticJointFlags () const =0
 Get the flags specific to the Prismatic Joint. More...
 
virtual void setProjectionLinearTolerance (PxReal tolerance)=0
 Set the linear tolerance threshold for projection. More...
 
virtual PxReal getProjectionLinearTolerance () const =0
 Get the linear tolerance threshold for projection. More...
 
virtual void setProjectionAngularTolerance (PxReal tolerance)=0
 Set the angular tolerance threshold for projection. Projection is enabled if PxConstraintFlag::ePROJECTION is set for the joint. More...
 
virtual PxReal getProjectionAngularTolerance () const =0
 Get the angular tolerance threshold for projection. More...
 
virtual const char * getConcreteTypeName () const
 Returns string name of PxPrismaticJoint, used for serialization. More...
 
- Public Member Functions inherited from PxJoint
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
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 PxPrismaticJoint (PxType concreteType, PxBaseFlags baseFlags)
 Constructor. More...
 
PX_INLINE PxPrismaticJoint (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 PxJoint
virtual ~PxJoint ()
 
PX_INLINE PxJoint (PxType concreteType, PxBaseFlags baseFlags)
 Constructor. More...
 
PX_INLINE PxJoint (PxBaseFlags baseFlags)
 Deserialization constructor. 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

- Static Public Member Functions inherited from PxJoint
static void getBinaryMetaData (PxOutputStream &stream)
 Put class meta data in stream, used for serialization. More...
 
- Public Attributes inherited from PxJoint
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 prismatic joint permits relative translational movement between two bodies along an axis, but no relative rotational movement.

the axis on each body is defined as the line containing the origin of the joint frame and extending along the x-axis of that frame

prismJoint.png
See also
PxPrismaticJointCreate() PxJoint

Constructor & Destructor Documentation

◆ PxPrismaticJoint() [1/2]

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

Constructor.

◆ PxPrismaticJoint() [2/2]

PX_INLINE PxPrismaticJoint::PxPrismaticJoint ( PxBaseFlags  baseFlags)
inlineprotected

Deserialization constructor.

Member Function Documentation

◆ getConcreteTypeName()

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

Returns string name of PxPrismaticJoint, used for serialization.

Implements PxBase.

◆ getLimit()

virtual PxJointLinearLimitPair PxPrismaticJoint::getLimit ( ) const
pure virtual

gets the joint limit parameters.

See also
PxJointLinearLimit getLimit()

◆ getPosition()

virtual PxReal PxPrismaticJoint::getPosition ( ) const
pure virtual

returns the displacement of the joint along its axis.

◆ getPrismaticJointFlags()

virtual PxPrismaticJointFlags PxPrismaticJoint::getPrismaticJointFlags ( ) const
pure virtual

Get the flags specific to the Prismatic Joint.

Returns
the joint flags
See also
PxPrismaticJoint::flags, PxPrismaticJointFlag setFlag() setFlags()

◆ getProjectionAngularTolerance()

virtual PxReal PxPrismaticJoint::getProjectionAngularTolerance ( ) const
pure virtual

Get the angular tolerance threshold for projection.

See also
getProjectionAngularTolerance()

◆ getProjectionLinearTolerance()

virtual PxReal PxPrismaticJoint::getProjectionLinearTolerance ( ) const
pure virtual

Get the linear tolerance threshold for projection.

Returns
the linear tolerance threshold in radians
See also
setProjectionLinearTolerance()

◆ getVelocity()

virtual PxReal PxPrismaticJoint::getVelocity ( ) const
pure virtual

returns the velocity of the joint along its axis

◆ isKindOf()

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

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

Reimplemented from PxJoint.

References PxJoint::isKindOf().

◆ setLimit()

virtual void PxPrismaticJoint::setLimit ( const PxJointLinearLimitPair )
pure virtual

sets the joint limit parameters.

The limit range is [-PX_MAX_F32, PX_MAX_F32], but note that the width of the limit (upper-lower) must also be a valid float.

See also
PxJointLinearLimitPair getLimit()

◆ setPrismaticJointFlag()

virtual void PxPrismaticJoint::setPrismaticJointFlag ( PxPrismaticJointFlag::Enum  flag,
bool  value 
)
pure virtual

Set a single flag specific to a Prismatic Joint to true or false.

Parameters
[in]flagThe flag to set or clear.
[in]valueThe value to which to set the flag
See also
PxPrismaticJointFlag, getFlags() setFlags()

◆ setPrismaticJointFlags()

virtual void PxPrismaticJoint::setPrismaticJointFlags ( PxPrismaticJointFlags  flags)
pure virtual

Set the flags specific to the Prismatic Joint.

Default PxPrismaticJointFlags(0)

Parameters
[in]flagsThe joint flags.
See also
PxPrismaticJointFlag setFlag() getFlags()

◆ setProjectionAngularTolerance()

virtual void PxPrismaticJoint::setProjectionAngularTolerance ( PxReal  tolerance)
pure virtual

Set the angular tolerance threshold for projection. Projection is enabled if PxConstraintFlag::ePROJECTION is set for the joint.

If the joint separates by more than this distance along its locked degrees of freedom, the solver will move the bodies to close the distance.

Setting a very small tolerance may result in simulation jitter or other artifacts.

Sometimes it is not possible to project (for example when the joints form a cycle).

Range: [0, PX_MAX_F32)
Default: Pi

Parameters
[in]tolerancethe linear tolerance threshold
See also
getProjectionLinearTolerance() PxJoint::setConstraintFlags()

◆ setProjectionLinearTolerance()

virtual void PxPrismaticJoint::setProjectionLinearTolerance ( PxReal  tolerance)
pure virtual

Set the linear tolerance threshold for projection.

If the joint separates by more than this distance along its locked degrees of freedom, the solver will move the bodies to close the distance.

Setting a very small tolerance may result in simulation jitter or other artifacts.

Sometimes it is not possible to project (for example when the joints form a cycle).

This value must be nonnegative.

Range: [0, PX_MAX_F32)
Default: 1e10f

Parameters
[in]tolerancethe linear tolerance threshold
See also
getProjectionLinearTolerance()

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