PhysX SDK 3.2 API Reference: PxSphericalJoint Class Reference

PhysX SDK 3.2 API

PxSphericalJoint Class Reference
[Extensions]

A joint which behaves in a similar way to a ball and socket. More...

#include <PxSphericalJoint.h>

Inheritance diagram for PxSphericalJoint:
Collaboration diagram for PxSphericalJoint:

List of all members.


Public Member Functions

virtual PxJointLimitCone getLimitCone () const =0
 Set the limit cone.
virtual void setLimitCone (const PxJointLimitCone &limit)=0
 Get the limit cone.
virtual void setSphericalJointFlags (PxSphericalJointFlags flags)=0
 Set the flags specific to the Spherical Joint.
virtual void setSphericalJointFlag (PxSphericalJointFlag::Enum flag, bool value)=0
 Set a single flag specific to a Spherical Joint to true or false.
virtual PxSphericalJointFlags getSphericalJointFlags (void) const =0
 Get the flags specific to the Spherical Joint.
virtual void setProjectionLinearTolerance (PxReal tolerance)=0
 Set the linear tolerance threshold for projection. Projection is enabled if PxConstraintFlag::ePROJECTION is set for the joint.
virtual PxReal getProjectionLinearTolerance () const =0
 Get the linear tolerance threshold for projection.
virtual const char * getConcreteTypeName () const
 returns string name of dynamic type.

Static Public Attributes

static const PxJointType::Enum Type = PxJointType::eSPHERICAL

Protected Member Functions

 PxSphericalJoint (PxRefResolver &v)
 PxSphericalJoint ()
virtual bool isKindOf (const char *name) const

Detailed Description

A joint which behaves in a similar way to a ball and socket.

A spherical joint removes all linear degrees of freedom from two objects.

The position of the joint on each actor is specified by the origin of the body's joint frame.

A spherical joint may have a cone limit, to restrict the motion to within a certain range. In addition, the bodies may be projected together if the distance between them exceeds a given threshold.

Projection, drive and limits are activated by setting the appropriate flags on the joint.

See also:
PxRevoluteJointCreate() PxJoint

Constructor & Destructor Documentation

PxSphericalJoint::PxSphericalJoint ( PxRefResolver v  )  [inline, protected]

PxSphericalJoint::PxSphericalJoint (  )  [inline, protected]


Member Function Documentation

virtual const char* PxSphericalJoint::getConcreteTypeName (  )  const [inline, virtual]

returns string name of dynamic type.

Returns:
class name of most derived type of this object.

Reimplemented from PxSerializable.

virtual PxJointLimitCone PxSphericalJoint::getLimitCone (  )  const [pure virtual]

Set the limit cone.

If enabled, the limit cone will constrain the angular movement of the joint to lie within an elliptical cone.

Returns:
the limit cone
See also:
PxJointLimitCone setLimit()

virtual PxReal PxSphericalJoint::getProjectionLinearTolerance (  )  const [pure virtual]

Get the linear tolerance threshold for projection.

Returns:
the linear tolerance threshold
See also:
setProjectionLinearTolerance()

virtual PxSphericalJointFlags PxSphericalJoint::getSphericalJointFlags ( void   )  const [pure virtual]

Get the flags specific to the Spherical Joint.

Returns:
the joint flags
See also:
PxSphericalJoint::flags, PxSphericalJointFlag setFlag() setFlags()

virtual bool PxSphericalJoint::isKindOf ( const char *  name  )  const [inline, protected, virtual]

Reimplemented from PxJoint.

References PxJoint::isKindOf().

virtual void PxSphericalJoint::setLimitCone ( const PxJointLimitCone limit  )  [pure virtual]

Get the limit cone.

Parameters:
[in] limit the limit cone
See also:
PxJointLimitCone getLimit()

virtual void PxSphericalJoint::setProjectionLinearTolerance ( PxReal  tolerance  )  [pure virtual]

Set the linear 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,inf)
Default: 1e10f

Parameters:
[in] tolerance the linear tolerance threshold
See also:
getProjectionLinearTolerance() PxJoint::setConstraintFlags() PxConstraintFlag::ePROJECTION

virtual void PxSphericalJoint::setSphericalJointFlag ( PxSphericalJointFlag::Enum  flag,
bool  value 
) [pure virtual]

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

Parameters:
[in] flag The flag to set or clear.
[in] value the value to which to set the flag
See also:
PxSphericalJointFlag, getFlags() setFlags()

virtual void PxSphericalJoint::setSphericalJointFlags ( PxSphericalJointFlags  flags  )  [pure virtual]

Set the flags specific to the Spherical Joint.

Default PxSphericalJointFlags(0)

Parameters:
[in] flags The joint flags.
See also:
PxSphericalJointFlag setFlag() getFlags()


Member Data Documentation

const PxJointType::Enum PxSphericalJoint::Type = PxJointType::eSPHERICAL [static]


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



Copyright © 2008-2012 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com