#include "MePrecision.h"
#include "MdtTypes.h"
Functions | |
| MdtBSJointID | MdtBSJointCreate (const MdtWorldID w, const MdtBodyID b1, const MdtBodyID b2) |
| Creates a new ball and socket joint with default parameters. More... | |
| void | MdtBSJointReset (const MdtBSJointID j) |
| Sets a ball and socket joint to its default values. More... | |
| void | MdtBSJointDestroy (const MdtBSJointID j) |
| Destroys a ball and socket joint. More... | |
| void | MdtBSJointLog (const MdtBSJointID j) |
| Debug function - output constraint using MeMessage. More... | |
| MdtConstraintID | MdtBSJointQuaConstraint (const MdtBSJointID j) |
| Gets an MdtConstraintID from a specific constraint for performing functions common to all constraints. More... | |
| void | MdtBSJointGetPosition (const MdtBSJointID j, MeVector3 v) |
| The ball and socket joint's position vector is returned in v. More... | |
| void | MdtBSJointGetPrimaryAxis (const MdtBSJointID j, MeVector3 axis, const unsigned int bodyindex) |
| Returns the primary axis vector of the body given by bodyindex (0 or 1). More... | |
| void | MdtBSJointGetOrthogonalAxis (const MdtBSJointID j, MeVector3 axis, const unsigned int bodyindex) |
| Returns the orthogonal axis vector of the body given by bodyindex (0 or 1). More... | |
| MdtLimitID | MdtBSJointGetLimit (const MdtBSJointID j, const unsigned int LimitID) |
| Provides read/write access to the constraint limits. More... | |
| void | MdtBSJointSetPosition (const MdtBSJointID j, const MeReal x, const MeReal y, const MeReal z) |
| Sets the joint position in world coordinates. More... | |
| void | MdtBSJointSetPrimaryAxis (const MdtBSJointID j, const MeReal x, const MeReal y, const MeReal z, const unsigned int bodyindex) |
| Sets the primary axis vector of the body given by bodyindex (0 or 1). More... | |
| int | MdtBSJointSetOrthogonalAxis (const MdtBSJointID j, const MeReal x, const MeReal y, const MeReal z, const unsigned int bodyindex) |
| Attempts to set an axis vector of the body given by bodyindex (0 or 1) which is the orthogonal to the body's primary axis. More... | |
| void | MdtBSJointSetLimit (const MdtBSJointID j, const MdtLimitID NewLimit, const unsigned int LimitID) |
| Resets the joint limit and then copies the public attributes of NewLimit. More... | |
|
Initializer:
|
Initializer:
|
Initializer:
\
MdtConstraintGetBody(MdtBSJointQuaConstraint(j), bodyindex)
|
Initializer:
\
MdtConstraintGetForce(MdtBSJointQuaConstraint(j), bodyindex, f)
|
Initializer:
\
MdtConstraintGetTorque(MdtBSJointQuaConstraint(j), bodyindex, t)
|
Initializer:
|
Initializer:
|
Initializer:
|
Initializer:
\
MdtConstraintSetBodies(MdtBSJointQuaConstraint(j), b1, b2)
|
Initializer:
|
|
Destroys a ball and socket joint.
|
Provides read/write access to the constraint limits.
LimitID values correspond to the following rotational degrees of freedom:
0 - rho (twist angle) 1 - theta (cone, or polar, angle) 2 - phi (segment, or longitudinal, angle).
|
Returns the orthogonal axis vector of the body given by bodyindex (0 or 1).
The returned vector is in the inertial reference frame.
|
The ball and socket joint's position vector is returned in v.
The position is returned in the world reference frame.
|
Returns the primary axis vector of the body given by bodyindex (0 or 1).
The returned vector is in the inertial reference frame.
|
Debug function - output constraint using MeMessage.
|
Gets an MdtConstraintID from a specific constraint for performing functions common to all constraints.
|
Sets a ball and socket joint to its default values.
Note that the joint's bodies are not reset.
A default ball and socket joint has the following characteristics:
| j | ball and socket joint ID |
|
Resets the joint limit and then copies the public attributes of NewLimit.
LimitID values correspond to the following rotational degrees of freedom:
0 - rho (twist angle) 1 - theta (cone, or polar, angle) 2 - phi (segment, or longitudinal, angle).
|
Attempts to set an axis vector of the body given by bodyindex (0 or 1) which is the orthogonal to the body's primary axis.
The vector is set in the inertial reference frame. This service returns a non-zero value if it succeeds. If the input axis is not orthogonal to the primary axis, the service fails: it returns zero without changing the hinge in any way.
|
Sets the joint position in world coordinates.
|
Sets the primary axis vector of the body given by bodyindex (0 or 1).
The vector is set in the inertial reference frame.
Copyright MathEngine PLC 2000, all rights reserved.