A prismatic joint permits relative translational movement between two bodies along an axis, but no relative rotational movement. More...
#include <PxPrismaticJoint.h>
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 PxConstraint * | getConstraint () 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 PxScene * | getScene () 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 |
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
|
inlineprotected |
Constructor.
|
inlineprotected |
Deserialization constructor.
|
inlinevirtual |
Returns string name of PxPrismaticJoint, used for serialization.
Implements PxBase.
|
pure virtual |
gets the joint limit parameters.
|
pure virtual |
returns the displacement of the joint along its axis.
|
pure virtual |
Get the flags specific to the Prismatic Joint.
|
pure virtual |
Get the angular tolerance threshold for projection.
|
pure virtual |
Get the linear tolerance threshold for projection.
|
pure virtual |
returns the velocity of the joint along its axis
|
inlineprotectedvirtual |
Returns whether a given type name matches with the type of this instance.
Reimplemented from PxJoint.
References PxJoint::isKindOf().
|
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.
|
pure virtual |
Set a single flag specific to a Prismatic Joint to true or false.
[in] | flag | The flag to set or clear. |
[in] | value | The value to which to set the flag |
|
pure virtual |
Set the flags specific to the Prismatic Joint.
Default PxPrismaticJointFlags(0)
[in] | flags | The joint flags. |
|
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
[in] | tolerance | the linear tolerance threshold |
|
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
[in] | tolerance | the linear tolerance threshold |