#include <MFnIkJoint.h>
This is the function set for joints.
The transformation matrix for a joint node is below.
These matrices are defined as follows:
Public Member Functions | |
virtual MFn::Type | type () const |
Function set type. | |
virtual | ~MFnIkJoint () |
Destructor. | |
MFnIkJoint () | |
Default constructor. | |
MFnIkJoint (MObject &object, MStatus *ReturnStatus=NULL) | |
Constructor. | |
MFnIkJoint (const MDagPath &object, MStatus *ret=NULL) | |
Constructor. | |
MObject | create (MObject parent=MObject::kNullObj, MStatus *ReturnStatus=NULL) |
MStatus | getOrientation (MQuaternion &quaternion) const |
MStatus | setOrientation (const MQuaternion &quaternion) |
MStatus | getOrientation (MEulerRotation &rotation) const |
MStatus | setOrientation (const MEulerRotation &rotation) |
MStatus | getOrientation (double rotation[3], MTransformationMatrix::RotationOrder &order) const |
MStatus | setOrientation (const double rotation[3], MTransformationMatrix::RotationOrder order) |
MStatus | getScaleOrientation (MQuaternion &quaternion) const |
MStatus | setScaleOrientation (const MQuaternion &quaternion) |
MStatus | getScaleOrientation (double rotation[3], MTransformationMatrix::RotationOrder &order) const |
MStatus | setScaleOrientation (const double rotation[3], MTransformationMatrix::RotationOrder order) |
MStatus | getSegmentScale (double scale[3]) const |
MStatus | setSegmentScale (const double scale[3]) |
MStatus | getStiffness (double stiffness[3]) const |
MStatus | setStiffness (const double stiffness[3]) |
MStatus | getPreferedAngle (double rotation[3]) const |
MStatus | setPreferedAngle (const double rotation[3]) |
MStatus | getDegreesOfFreedom (bool &freeInX, bool &freeInY, bool &freeInZ) const |
MStatus | setDegreesOfFreedom (bool freeInX, bool freeInY, bool freeInZ) |
double | minRotateDampXRange (MStatus *ReturnStatus=NULL) const |
double | minRotateDampYRange (MStatus *ReturnStatus=NULL) const |
double | minRotateDampZRange (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampXRange (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampYRange (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampZRange (MStatus *ReturnStatus=NULL) const |
MStatus | setMinRotateDampXRange (double angle) |
MStatus | setMinRotateDampYRange (double angle) |
MStatus | setMinRotateDampZRange (double angle) |
MStatus | setMaxRotateDampXRange (double angle) |
MStatus | setMaxRotateDampYRange (double angle) |
MStatus | setMaxRotateDampZRange (double angle) |
double | minRotateDampXStrength (MStatus *ReturnStatus=NULL) const |
double | minRotateDampYStrength (MStatus *ReturnStatus=NULL) const |
double | minRotateDampZStrength (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampXStrength (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampYStrength (MStatus *ReturnStatus=NULL) const |
double | maxRotateDampZStrength (MStatus *ReturnStatus=NULL) const |
MStatus | setMinRotateDampXStrength (double angle) |
MStatus | setMinRotateDampYStrength (double angle) |
MStatus | setMinRotateDampZStrength (double angle) |
MStatus | setMaxRotateDampXStrength (double angle) |
MStatus | setMaxRotateDampYStrength (double angle) |
MStatus | setMaxRotateDampZStrength (double angle) |
MString | hikJointName (MStatus *ReturnStatus=NULL) const |
MFnIkJoint (const MObject &object, MStatus *ret=NULL) | |
Constructor. | |
MStatus | getHikJointName (MString &name) const |
NO SCRIPT SUPPORT. | |
Protected Member Functions | |
virtual const char * | className () const |
Class name. |
MFnIkJoint::~MFnIkJoint | ( | ) | [virtual] |
Destructor.
Class destructor.
Constructor.
Class constructor that initializes the function set to the given MObject.
[in] | object | The MObject to attach the function set to |
[out] | ReturnStatus | the return status |
Constructor.
Class constructor that initializes the function set to the given constant MDagPath object.
[in] | object | The const MDagPath to attach the function set to |
[out] | ReturnStatus | The return status |
Constructor.
Class constructor that initializes the function set to the given MObject.
[in] | object | The MObject to attach the function set to |
[out] | ReturnStatus | the return status |
MFn::Type MFnIkJoint::type | ( | ) | const [virtual] |
const char * MFnIkJoint::className | ( | ) | const [protected, virtual] |
MObject MFnIkJoint::create | ( | MObject | parent = MObject::kNullObj , |
|
MStatus * | ReturnStatus = NULL | |||
) |
Create a new joint in a skeleton. In maya, skeletons are defined entirely by DAG hierarchy. So, giving the joint you want to attach to as a parent will add this joint to that skeleton.
[in] | parent | the parent object for this in the dag. A value of NULL specifies the world dag node as parent. |
[out] | ReturnStatus | Status Code (see below) |
Reimplemented from MFnTransform.
MStatus MFnIkJoint::getOrientation | ( | MQuaternion & | quaternion | ) | const |
Get the joint orientation. This corresponds to the jointOrient attribute on the joint, which is stored internally as a quaternion. It is different from the rotation orientation defined in the transform node. Modifying the jointOrient changes the coordinate axes, which affects how scaling a joint behaves.
The matrix equations used to combine the jointOrient with the other transformation attributes of the joint are described in the description for the MFnIkJoint class.
[out] | quaternion | the quaternion representing the jointOrient |
MStatus MFnIkJoint::setOrientation | ( | const MQuaternion & | quaternion | ) |
Set the jointOrient value. This corresponds to the jointOrient attribute on the joint, which is stored internally as a quaternion. It is different from the rotation orientation defined in the transform node. Modifying the jointOrient changes the coordinate axes, which affects how scaling a joint behaves.
The matrix equations used to combine the jointOrient with the other transformation attributes of the joint are described in the description for the MFnIkJoint class.
[in] | quaternion | the joint orientation |
MStatus MFnIkJoint::getOrientation | ( | MEulerRotation & | rotation | ) | const |
Get the orientation of the coordinate axes.
[out] | rotation | the euler rotation into which we will store the orientation |
MStatus MFnIkJoint::setOrientation | ( | const MEulerRotation & | rotation | ) |
Set the orientation of the coordinate axes.
[in] | rotation | the orientation |
MStatus MFnIkJoint::getOrientation | ( | double | rotation[3], | |
MTransformationMatrix::RotationOrder & | order | |||
) | const |
Get the orientation of the coordinate axes.
[out] | rotation | the array into which we will store the angles |
[out] | order | storage for the order to do the rotation in |
MStatus MFnIkJoint::setOrientation | ( | const double | rotation[3], | |
MTransformationMatrix::RotationOrder | order | |||
) |
Set the orientation of the coordinate axes.
[in] | rotation | the orientation |
[in] | order | the order to do the rotation in |
MStatus MFnIkJoint::getScaleOrientation | ( | MQuaternion & | quaternion | ) | const |
Get the orientation of the coordinate axes for rotation. This is equivalent to calling the MFnTransform::rotateOrientation method, and corresponds to the rotateAxis attribute on the joint node.
[out] | quaternion | the quaternion into which we will store the rotate orientation |
MStatus MFnIkJoint::setScaleOrientation | ( | const MQuaternion & | quaternion | ) |
Set the orientation of the coordinate axes for rotation. This is equivalent to calling the MFnTransform::setRotateOrientation method, and corresponds to the rotateAxis attribute on the joint node. The matrix equations used to combine the rotateAxis with the other transformation attributes of the joint are described in the description for the MFnIkJoint class.
[out] | quaternion | the rotate orientation |
MStatus MFnIkJoint::getScaleOrientation | ( | double | rotation[3], | |
MTransformationMatrix::RotationOrder & | order | |||
) | const |
Get the orientation of the coordinate axes for rotation. This is equivalent to calling the MFnTransform::rotateOrientation method but returns the Euler rotation rather than the quaternion rotation. The matrix equations used to combine the rotateAxis with the other transformation attributes of the joint are described in the description for the MFnIkJoint class.
[out] | rotation | the array into which we will store the angles |
[out] | order | storage for the order to do the rotation in |
MStatus MFnIkJoint::setScaleOrientation | ( | const double | rotation[3], | |
MTransformationMatrix::RotationOrder | order | |||
) |
Set the orientation of the coordinate axes for rotation. This is equivalent to calling the MFnTransform::setRotateOrientation method, and corresponds to the rotateAxis attribute on the joint node. The matrix equations used to combine the rotateAxis with the other transformation attributes of the joint are described in the description for the MFnIkJoint class.
[in] | rotation | the rotate orientation |
[in] | order | the order to do the rotation in |
MStatus MFnIkJoint::getSegmentScale | ( | double | scale[3] | ) | const |
Get the local space scale values for the joint segment (bone). This is equivalent to calling MFnTransform::getScale.
[out] | scale | Storage for the scale values |
MStatus MFnIkJoint::setSegmentScale | ( | const double | scale[3] | ) |
Set the local space scale values for the joint segment (bone). This is equivalent to calling Ttransform::setScale.
[in] | scale | the new scale values to set |
MStatus MFnIkJoint::getStiffness | ( | double | stiffness[3] | ) | const |
Get the stiffness (from 0 to 100.0) for the joint. The stiffness attribute is used by ik solvers to generate a resistance to a joint motion. The higher the stiffness the less it will rotate. Stiffness works in relative sense: it determines the willingness of this joint to rotate with respect to the other joint in the ik chain.
[out] | stiffness | storage for the stiffness values |
MStatus MFnIkJoint::setStiffness | ( | const double | stiffness[3] | ) |
Set the stiffness (from 0 to 100.0) for the joint. The stiffness attribute is used by ik solvers to generate a resistance to a joint motion. The higher the stiffness the less it will rotate. Stiffness works in relative sense: it determines the willingness of this joint to rotate with respect to the other joint in the ik chain.
[in] | stiffness | the X, Y, and Z stiffness values |
MStatus MFnIkJoint::getPreferedAngle | ( | double | rotation[3] | ) | const |
Get the preferred orientation for this joint (in XYZ order)
[out] | rotation | the array into which we will store the angles |
MStatus MFnIkJoint::setPreferedAngle | ( | const double | rotation[3] | ) |
Set the preferred orientation for this joint (in XYZ order)
[in] | rotation | the array into which we will store the angles |
MStatus MFnIkJoint::getDegreesOfFreedom | ( | bool & | freeInX, | |
bool & | freeInY, | |||
bool & | freeInZ | |||
) | const |
Get degrees of freedom of this joint
[out] | freeInX | the first degree of freedom |
[out] | freeInY | the second degree of freedom |
[out] | freeInZ | the third degree of freedom |
MStatus MFnIkJoint::setDegreesOfFreedom | ( | bool | freeInX, | |
bool | freeInY, | |||
bool | freeInZ | |||
) |
Set the degrees of freedom of this joint by specifying which axes are allowed to rotate.
[in] | freeInX | the first degree of freedom |
[in] | freeInY | the second degree of freedom |
[in] | freeInZ | the third degree of freedom |
double MFnIkJoint::minRotateDampXRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping range in X. This corresponds to the minRotateDampXRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the lower boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The minRotateDampRange specifies when the deceleration should start, and the minRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::minRotateDampYRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping range in Y. This corresponds to the minRotateDampYRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the lower boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The minRotateDampRange specifies when the deceleration should start, and the minRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::minRotateDampZRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping range in Z. This corresponds to the minRotateDampZRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the lower boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The minRotateDampRange specifies when the deceleration should start, and the minRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampXRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the maximum of the damping range in X. This corresponds to the maxRotateDampXRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the upper boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The maxRotateDampRange specifies when the deceleration should start, and the maxRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampYRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the maximum of the damping range in Y. This corresponds to the maxRotateDampYRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the upper boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The maxRotateDampRange specifies when the deceleration should start, and the maxRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampZRange | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the maximum of the damping range in Z. This corresponds to the maxRotateDampZRange attribute on the joint.
The minRotateDampRange and minRotateDampStrength are attributes used by ik to apply resistance to a joint rotation as it approaches the upper boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The maxRotateDampRange specifies when the deceleration should start, and the maxRotateDampStrength defines the rate of deceleration.
[out] | ReturnStatus | Status Code (see below) |
MStatus MFnIkJoint::setMinRotateDampXRange | ( | double | angle | ) |
Set the minimum of the damping range in X
[in] | angle | The damping range to set |
MStatus MFnIkJoint::setMinRotateDampYRange | ( | double | angle | ) |
Set the minimum of the damping range in Y
[in] | angle | the damping range to set |
MStatus MFnIkJoint::setMinRotateDampZRange | ( | double | angle | ) |
Set the minimum of the damping range in Z
[in] | angle | the damping range to set |
MStatus MFnIkJoint::setMaxRotateDampXRange | ( | double | angle | ) |
Set the maximum of the damping range in X
[in] | angle | the damping range to set |
MStatus MFnIkJoint::setMaxRotateDampYRange | ( | double | angle | ) |
Set the maximum of the damping range in Y
[in] | angle | the damping range to set |
MStatus MFnIkJoint::setMaxRotateDampZRange | ( | double | angle | ) |
Set the maximum of the damping range in Z
[in] | angle | the damping range to set |
double MFnIkJoint::minRotateDampXStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::minRotateDampYStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::minRotateDampZStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampXStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampYStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
double MFnIkJoint::maxRotateDampZStrength | ( | MStatus * | ReturnStatus = NULL |
) | const |
Get the minimum of the damping strength in X.
[out] | ReturnStatus | Status Code (see below) |
MStatus MFnIkJoint::setMinRotateDampXStrength | ( | double | angle | ) |
Set the maximum of the damping strength in Z.
[in] | angle | The new damping strength value |
MStatus MFnIkJoint::setMinRotateDampYStrength | ( | double | angle | ) |
Set the maximum of the damping strength in Y.
[in] | angle | The new damping strength value |
MStatus MFnIkJoint::setMinRotateDampZStrength | ( | double | angle | ) |
Set the minimum of the damping strength in Z.
[in] | angle | The new damping strength value |
MStatus MFnIkJoint::setMaxRotateDampXStrength | ( | double | angle | ) |
Set the maximum of the damping strength in X.
[in] | angle | The new damping strength value |
MStatus MFnIkJoint::setMaxRotateDampYStrength | ( | double | angle | ) |
Set the maximum of the damping strength in Y.
[in] | angle | The new damping strength value |
MStatus MFnIkJoint::setMaxRotateDampZStrength | ( | double | angle | ) |
Set the maximum of the damping strength in Z.
[in] | angle | The new damping strength value |
Get the name that the HumanIK solver uses to identify this joint.
[out] | ReturnStatus | Status code (see below) |
NO SCRIPT SUPPORT.
Get the name that the HumanIK solver uses to identify this joint.
Python Notes
This method is not supported in Python. See the version which returns a string.
[out] | name | The name used to identify this joint for HumanIK |
Autodesk® Maya® 2009 © 1997-2008 Autodesk, Inc. All rights reserved. | Generated with 1.5.6 |