PixelLightAPI
.
|
Abstract PL physics universal joint. More...
#include <JointUniversal.h>
Public Member Functions | |
virtual PLPHYSICS_API | ~JointUniversal () |
Destructor. | |
PLPHYSICS_API const PLMath::Vector3 & | GetPivotPoint () const |
Returns the origin of the universal in world space. | |
PLPHYSICS_API const PLMath::Vector3 & | GetPinDir1 () const |
Returns the first axis of rotation fixed on THIS body and perpendicular to 'PinDir2' in world space. | |
PLPHYSICS_API const PLMath::Vector3 & | GetPinDir2 () const |
Returns the second axis of rotation fixed on 'Parent' body and perpendicular to 'PinDir1' in world space. | |
PLPHYSICS_API float | GetLowRange1 () const |
Returns the low range of the first axis. | |
PLPHYSICS_API void | SetLowRange1 (float fLowRange=-180.0f) |
Sets the low range of the first axis. | |
PLPHYSICS_API float | GetHighRange1 () const |
Returns the high range of the first axis. | |
PLPHYSICS_API void | SetHighRange1 (float fHighRange=180.0f) |
Sets the high range of the first axis. | |
PLPHYSICS_API float | GetLowRange2 () const |
Returns the low range of the second axis. | |
PLPHYSICS_API void | SetLowRange2 (float fLowRange=-180.0f) |
Sets the low range of the second axis. | |
PLPHYSICS_API float | GetHighRange2 () const |
Returns the high range of the second axis. | |
PLPHYSICS_API void | SetHighRange2 (float fHighRange=180.0f) |
Sets the high range of the second axis. | |
virtual void | AddOmega (float fOmega1, float fOmega2)=0 |
Adds omega to the bodies assigned with this joint. | |
Protected Member Functions | |
PLPHYSICS_API | JointUniversal (World &cWorld, JointImpl &cJointImpl, Body *pParentBody, Body *pChildBody, const PLMath::Vector3 &vPivotPoint, const PLMath::Vector3 &vPinDir1, const PLMath::Vector3 &vPinDir2) |
Constructor. | |
Protected Attributes | |
PLMath::Vector3 | m_vPivotPoint |
PLMath::Vector3 | m_vPinDir1 |
PLMath::Vector3 | m_vPinDir2 |
Abstract PL physics universal joint.
DOFs removed: 2 DOFs remaining: 4
virtual PLPHYSICS_API PLPhysics::JointUniversal::~JointUniversal | ( | ) | [virtual] |
Destructor.
PLPHYSICS_API PLPhysics::JointUniversal::JointUniversal | ( | World & | cWorld, |
JointImpl & | cJointImpl, | ||
Body * | pParentBody, | ||
Body * | pChildBody, | ||
const PLMath::Vector3 & | vPivotPoint, | ||
const PLMath::Vector3 & | vPinDir1, | ||
const PLMath::Vector3 & | vPinDir2 | ||
) | [protected] |
Constructor.
[in] | cWorld | World this joint is in |
[in] | cJointImpl | Reference to the physics API specific joint implementation |
[in] | pParentBody | Pointer to the parent rigid body, can be a null pointer |
[in] | pChildBody | Pointer to the attached rigid body, can be a null pointer |
[in] | vPivotPoint | Origin of the universal in world space |
[in] | vPinDir1 | First axis of rotation fixed on THIS body and perpendicular to 'PinDir2' in world space |
[in] | vPinDir2 | Second axis of rotation fixed on 'Parent' body and perpendicular to 'PinDir1' in world space |
PLPHYSICS_API const PLMath::Vector3& PLPhysics::JointUniversal::GetPivotPoint | ( | ) | const |
Returns the origin of the universal in world space.
PLPHYSICS_API const PLMath::Vector3& PLPhysics::JointUniversal::GetPinDir1 | ( | ) | const |
Returns the first axis of rotation fixed on THIS body and perpendicular to 'PinDir2' in world space.
PLPHYSICS_API const PLMath::Vector3& PLPhysics::JointUniversal::GetPinDir2 | ( | ) | const |
Returns the second axis of rotation fixed on 'Parent' body and perpendicular to 'PinDir1' in world space.
PLPHYSICS_API float PLPhysics::JointUniversal::GetLowRange1 | ( | ) | const |
Returns the low range of the first axis.
PLPHYSICS_API void PLPhysics::JointUniversal::SetLowRange1 | ( | float | fLowRange = -180.0f | ) |
Sets the low range of the first axis.
[in] | fLowRange | New low range of the first axis in degree |
PLPHYSICS_API float PLPhysics::JointUniversal::GetHighRange1 | ( | ) | const |
Returns the high range of the first axis.
PLPHYSICS_API void PLPhysics::JointUniversal::SetHighRange1 | ( | float | fHighRange = 180.0f | ) |
Sets the high range of the first axis.
[in] | fHighRange | New high range of the first axis in degree |
PLPHYSICS_API float PLPhysics::JointUniversal::GetLowRange2 | ( | ) | const |
Returns the low range of the second axis.
PLPHYSICS_API void PLPhysics::JointUniversal::SetLowRange2 | ( | float | fLowRange = -180.0f | ) |
Sets the low range of the second axis.
[in] | fLowRange | New low range of the second axis in degree |
PLPHYSICS_API float PLPhysics::JointUniversal::GetHighRange2 | ( | ) | const |
Returns the high range of the second axis.
PLPHYSICS_API void PLPhysics::JointUniversal::SetHighRange2 | ( | float | fHighRange = 180.0f | ) |
Sets the high range of the second axis.
[in] | fHighRange | New high range of the second axis in degree |
virtual void PLPhysics::JointUniversal::AddOmega | ( | float | fOmega1, |
float | fOmega2 | ||
) | [pure virtual] |
Adds omega to the bodies assigned with this joint.
[in] | fOmega1 | Omega 1 to add |
[in] | fOmega2 | Omega 2 to add |
Origin of the universal in world space
PLMath::Vector3 PLPhysics::JointUniversal::m_vPinDir1 [protected] |
First axis of rotation fixed on THIS body and perpendicular to 'PinDir2' in world space
PLMath::Vector3 PLPhysics::JointUniversal::m_vPinDir2 [protected] |
Second axis of rotation fixed on 'Parent' body and perpendicular to 'PinDir1' in world space
|