class MFnIkJoint

Jump to documentation

: public MFnTransform Function set for joints (OpenMayaAnim) (OpenMayaAnim.py)

Inheritance:

MFnIkJoint < MFnTransform < MFnDagNode < MFnDependencyNode < MFnBase

public members:

MFnIkJoint ( const MObject & object, MStatus * ReturnStatus = NULL )
enum Axis
kXAxis
kYAxis
kZAxis
kNone
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
MStatus getHikJointName ( MString & name ) const
NO SCRIPT SUPPORT

Inherited from MFnTransform:

public members:

MObject create ( MObject parent = MObject::kNullObj , MStatus * ReturnStatus = NULL )
MTransformationMatrix transformation ( MStatus * ReturnStatus = NULL ) const
MStatus set ( const MTransformationMatrix & transform )
MStatus getScale ( double scale[3] ) const
MStatus setScale ( const double scale[3] )
MStatus scaleBy ( const double scale[3] )
MStatus getShear ( double scale[3] ) const
MStatus setShear ( const double shear[3] )
MStatus shearBy ( const double shear[3] )
MStatus getRotation ( MQuaternion &quaternion, MSpace::Space = MSpace::kTransform ) const
MStatus setRotation ( const MQuaternion &quaternion, MSpace::Space = MSpace::kTransform )
MStatus rotateBy ( const MQuaternion &quaternion, MSpace::Space = MSpace::kTransform )
MStatus getRotation ( MEulerRotation &rotation ) const
MStatus setRotation ( const MEulerRotation &rotation )
MStatus rotateBy ( const MEulerRotation &rotation, MSpace::Space = MSpace::kTransform )
MStatus getRotationQuaternion ( double &x, double &y, double &z, double &w, MSpace::Space = MSpace::kTransform ) const
MStatus setRotationQuaternion ( double x, double y, double z, double w, MSpace::Space = MSpace::kTransform )
MStatus rotateByQuaternion ( double x, double y, double z, double w, MSpace::Space = MSpace::kTransform )
MStatus getRotation ( double rotation[3], MTransformationMatrix::RotationOrder & order ) const
MStatus setRotation ( const double rotation[3], MTransformationMatrix::RotationOrder order )
MStatus rotateBy ( const double rotation[3], MTransformationMatrix::RotationOrder order, MSpace::Space = MSpace::kTransform )
MVector getTranslation ( MSpace::Space space, MStatus * ReturnStatus = NULL ) const
MStatus setTranslation ( const MVector & vec, MSpace::Space space )
MStatus translateBy ( const MVector & vec, MSpace::Space space )
MPoint scalePivot ( MSpace::Space space, MStatus * ReturnStatus = NULL ) const
MStatus setScalePivot ( const MPoint & point, MSpace::Space space, bool balance )
MVector scalePivotTranslation ( MSpace::Space space , MStatus * ReturnStatus = NULL ) const
MStatus setScalePivotTranslation ( const MVector & vec, MSpace::Space space )
MPoint rotatePivot ( MSpace::Space space , MStatus * ReturnStatus = NULL ) const
MStatus setRotatePivot ( const MPoint & point, MSpace::Space space, bool balance )
MVector rotatePivotTranslation ( MSpace::Space space, MStatus * ReturnStatus = NULL ) const
MStatus setRotatePivotTranslation ( const MVector & vec, MSpace::Space space )
MQuaternion rotateOrientation ( MSpace::Space space , MStatus * ReturnStatus = NULL ) const
MStatus setRotateOrientation ( const MQuaternion & quat, MSpace::Space space, bool balance )
MTransformationMatrix::RotationOrder rotationOrder ( MStatus * ReturnStatus = NULL ) const
MStatus setRotationOrder ( MTransformationMatrix::RotationOrder order, bool reorder )
MTransformationMatrix restPosition ( MStatus * ReturnStatus) const
MStatus setRestPosition ( const MTransformationMatrix & matrix )
MStatus resetFromRestPosition ()
MStatus clearRestPosition ()
MStatus getRotation ( double rotation[3], MTransformationMatrix::RotationOrder & order, MSpace::Space ) const
MStatus setRotation (const double rotation[3], MTransformationMatrix::RotationOrder order, MSpace::Space )
MVector translation ( MSpace::Space space, MStatus * ReturnStatus = NULL ) const
enum LimitType
kScaleMinX
kScaleMaxX
kScaleMinY
kScaleMaxY
kScaleMinZ
kScaleMaxZ
kShearMinXY
kShearMaxXY
kShearMinXZ
kShearMaxXZ
kShearMinYZ
kShearMaxYZ
kRotateMinX
kRotateMaxX
kRotateMinY
kRotateMaxY
kRotateMinZ
kRotateMaxZ
kTranslateMinX
kTranslateMaxX
kTranslateMinY
kTranslateMaxY
kTranslateMinZ
kTranslateMaxZ
bool isLimited ( MFnTransform::LimitType type , MStatus * ReturnStatus = NULL ) const
double limitValue ( MFnTransform::LimitType type , MStatus * ReturnStatus = NULL ) const
MStatus setLimit ( MFnTransform::LimitType type , double value)
MStatus enableLimit ( MFnTransform::LimitType type , bool flag)

Inherited from MFnDagNode:

public members:

kNextPos
MObject create ( const MTypeId &typeId, MObject & parent = MObject::kNullObj , MStatus * ReturnStatus = NULL )
MObject create ( const MTypeId &typeId, const MString &name, MObject & parent = MObject::kNullObj , MStatus * ReturnStatus = NULL )
MObject create ( const MString &type, MObject & parent = MObject::kNullObj , MStatus * ReturnStatus = NULL )
MObject create ( const MString &type, const MString &name, MObject & parent = MObject::kNullObj , MStatus * ReturnStatus = NULL )
unsigned int parentCount ( MStatus * ReturnStatus = NULL ) const
MObject parent ( unsigned int i, MStatus * ReturnStatus = NULL ) const
MStatus addChild ( MObject & child , unsigned int index = kNextPos , bool keepExistingParents = false )
MStatus removeChild ( MObject & child )
MStatus removeChildAt ( unsigned int index )
unsigned int childCount ( MStatus * ReturnStatus = NULL ) const
MObject child ( unsigned int i, MStatus * ReturnStatus = NULL ) const
MObject dagRoot ( MStatus * ReturnStatus = NULL )
bool hasParent ( const MObject & node, MStatus * ReturnStatus = NULL ) const
bool hasChild (const MObject & node, MStatus * ReturnStatus = NULL ) const
bool isChildOf (const MObject & node, MStatus * ReturnStatus = NULL ) const
bool isParentOf (const MObject & node, MStatus * ReturnStatus = NULL ) const
bool inUnderWorld ( MStatus * ReturnStatus = NULL ) const
bool inModel ( MStatus * ReturnStatus = NULL ) const
bool isInstanceable ( MStatus * ReturnStatus=NULL ) const
MStatus setInstanceable ( const bool how )
bool isInstanced ( bool indirect = true, MStatus * ReturnStatus = NULL ) const
bool isInstancedAttribute ( const MObject & attr, MStatus * ReturnStatus = NULL ) const
unsigned int instanceCount ( bool total, MStatus * ReturnStatus = NULL ) const
MObject duplicate ( bool instance = false, bool instanceLeaf = false, MStatus * ReturnStatus = NULL ) const
MStatus getPath ( MDagPath & path )
MStatus getAllPaths ( MDagPathArray & paths )
MString fullPathName ( MStatus *ReturnStatus = NULL)
MString partialPathName ( MStatus *ReturnStatus = NULL)
MMatrix transformationMatrix ( MStatus * ReturnStatus = NULL ) const
bool isIntermediateObject ( MStatus * ReturnStatus = NULL ) const
MStatus setIntermediateObject ( bool isIntermediate )
int objectColor ( MStatus * ReturnStatus = NULL ) const
MStatus setObjectColor ( int color )
bool usingObjectColor ( MStatus * ReturnStatus = NULL ) const
MStatus setUseObjectColor ( bool useObjectColor )
MBoundingBox boundingBox ( MStatus * ReturnStatus = NULL ) const
MDagPath dagPath ( MStatus * ReturnStatus = NULL ) const
virtual MStatus setObject ( const MDagPath & path )
virtual MStatus setObject ( MObject & object )
MObject model ( MStatus * ReturnStatus = NULL ) const
virtual MStatus setObject ( const MObject & object )

Inherited from MFnDependencyNode:

public members:

virtual MFn::Type type () const
enum MAttrClass
kGlobalDynamicAttr
kLocalDynamicAttr
MObject create ( const MTypeId & typeId , MStatus * ReturnStatus = NULL )
MObject create ( const MTypeId & typeId , const MString & name , MStatus * ReturnStatus = NULL )
MObject create ( const MString & type , MStatus * ReturnStatus = NULL )
MObject create ( const MString & type , const MString & name , MStatus * ReturnStatus = NULL )
MTypeId typeId ( MStatus * ReturnStatus = NULL ) const
MString typeName ( MStatus * ReturnStatus = NULL ) const
MString name ( MStatus * ReturnStatus = NULL ) const
MString setName ( const MString & name , MStatus * ReturnStatus = NULL )
MStatus getConnections ( MPlugArray & array ) const
unsigned int attributeCount ( MStatus * ReturnStatus=NULL) const
MObject attribute ( unsigned int index, MStatus * ReturnStatus=NULL) const
MObject reorderedAttribute ( unsigned int index, MStatus * ReturnStatus=NULL) const
MObject attribute ( const MString & attrName, MStatus * ReturnStatus=NULL) const
MAttrClass attributeClass ( const MObject & attr, MStatus * ReturnStatus=NULL) const
MStatus getAffectedAttributes ( const MObject & attr, MObjectArray & affectedAttributes ) const
MStatus getAffectedByAttributes ( const MObject & attr, MObjectArray & affectedByAttributes ) const
MPlug findPlug ( const MObject & attr, bool wantNetworkedPlug, MStatus * ReturnStatus=NULL) const
MPlug findPlug ( const MString & attrName, bool wantNetworkedPlug, MStatus * ReturnStatus=NULL) const
MPlug findPlug ( const MObject & attr, MStatus * ReturnStatus=NULL) const
MPlug findPlug ( const MString & attrName, MStatus * ReturnStatus=NULL) const
MStatus addAttribute ( const MObject & attr, MAttrClass type = kLocalDynamicAttr )
MStatus removeAttribute ( const MObject & attr, MAttrClass type = kLocalDynamicAttr )
MPxNode * userNode ( MStatus * ReturnStatus=NULL ) const
bool isFromReferencedFile ( MStatus * ReturnStatus=NULL) const
bool isShared ( MStatus * ReturnStatus=NULL) const
bool hasUniqueName ( MStatus * ReturnStatus=NULL) const
MString parentNamespace ( MStatus * ReturnStatus=NULL) const
bool isLocked ( MStatus * ReturnStatus=NULL) const
MStatus setLocked ( bool locked )
static MString classification ( const MString & nodeTypeName )
bool isNewAttribute ( const MObject & attr, MStatus * ReturnStatus=NULL) const
static unsigned int allocateFlag ( const MString pluginName, MStatus * ReturnStatus=NULL )
static MStatus deallocateFlag (const MString pluginName, unsigned int flag)
static MStatus deallocateAllFlags (const MString pluginName)
MStatus setFlag (unsigned int flag, bool state)
bool isFlagSet (unsigned int flag, MStatus * ReturnStatus=NULL) const
bool isDefaultNode ( MStatus * ReturnStatus=NULL) const
MStatus setDoNotWrite ( bool flag )
bool canBeWritten ( MStatus * ReturnStatus=NULL) const
bool hasAttribute (const MString & name , MStatus * ReturnStatus=NULL) const
MObject getAliasAttr (bool force, MStatus * ReturnStatus=NULL)
bool setAlias (const MString & alias,const MString & name , const MPlug & plug, bool add=true, MStatus * ReturnStatus=NULL)
bool findAlias (const MString & alias, MObject & attrObj, MStatus * ReturnStatus=NULL) const
bool getAliasList ( MStringArray & strArray, MStatus * ReturnStatus=NULL)
MString plugsAlias (const MPlug & plug, MStatus * ReturnStatus=NULL)
public
bool getPlugsAlias (const MPlug & plug, MString & aliasName, MStatus * ReturnStatus=NULL)

Inherited from MFnBase:

public members:

virtual MFn::Type type () const
bool hasObj ( MFn::Type ) const
bool hasObj ( const MObject & ) const
MObject object ( MStatus * ReturnStatus = NULL ) const
virtual MStatus setObject ( MObject & object )
virtual MStatus setObject ( const MObject & object )

Documentation

Description

This is the function set for joints.

The transformation matrix for a joint node is below.

(where '*' denotes matrix multiplication).

These matrices are defined as follows:

The methods to get the value of these matrices are:

Functions

MFnIkJoint:: MFnIkJoint ()

Description

Default class constructor. The function set is not attached to an MObject.

MFnIkJoint:: MFnIkJoint ( MObject & object, MStatus * ReturnStatus )

Description

Class constructor that initializes the function set to the given MObject.

Arguments

  • object the MObject to attach the function set to
  • ReturnStatus the return status
    • MS::kSuccess if the function set is successfully attached
    • MS::kInvalidParameter if the MObject does not represent a valid Maya object or if the function set is not allowed to attach to this MObject

MFnIkJoint:: MFnIkJoint ( const MObject & object, MStatus * ReturnStatus )

Description

Class constructor that initializes the function set to the given constant MObject.

Arguments

  • object the const MObject to attach the function set to
  • ReturnStatus the return status
    • MS::kSuccess if the function set is successfully attached
    • MS::kInvalidParameter if the MObject does not represent a valid Maya object or if the function set is not allowed to attach to this MObject

MFnIkJoint:: MFnIkJoint ( const MDagPath & object, MStatus * ReturnStatus )

Description

Class constructor that initializes the function set to the given constant MDagPath object.

Arguments

  • object the const MDagPath to attach the function set to
  • ReturnStatus the return status
    • MS::kSuccess if the function set is successfully attached
    • MS::kInvalidParameter if the MObject does not represent a valid Maya object or if the function set is not allowed to attach to this MObject

MFn::Type MFnIkJoint:: type () const

Description

Return the type of this function set.

Return Value

  • the constant MFn::kJoint

MFnIkJoint:: ~MFnIkJoint ()

Description

Class destructor.

MObject MFnIkJoint:: create ( MObject parent, MStatus * ReturnStatus )

Description

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.

Arguments

  • parent the parent object for this in the dag. A value of NULL specifies the world dag node as parent.
  • ReturnStatus Status Code (see below)

Return status

  • The parent transform of the new joint

Status Codes

  • MS::kSuccess The joint was successfully created and added to the DAG
  • MS::kInsufficientMemory Not enough memory available to create the new joint
  • MS::kLicenseFailure Application not licensed for attempted operation
  • MS::kFailure An error occurred adding the new joint to the DAG.

MStatus MFnIkJoint:: getOrientation ( MQuaternion &quaternion ) const

Description

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.

Arguments

  • quaternion the quaternion representing the jointOrient

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The orientation was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setOrientation ( const MQuaternion &quaternion )

Description

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.

Arguments

  • quaternion the joint orientation

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The jointOrient was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getOrientation ( MEulerRotation &rotation ) const

Description

Get the orientation of the coordinate axes.

Arguments

  • rotation the euler rotation into which we will store the orientation

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The orientation was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setOrientation ( const MEulerRotation &rotation )

Description

Set the orientation of the coordinate axes.

Arguments

  • rotation the orientation

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The orientation was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getOrientation ( double rotation[3], MTransformationMatrix::RotationOrder &order ) const

Description

Get the orientation of the coordinate axes.

Arguments

  • rotation the array into which we will store the angles
  • order storage for the order to do the rotation in

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The orientation was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setOrientation ( const double rotation[3], MTransformationMatrix::RotationOrder order )

Description

Set the orientation of the coordinate axes.

Arguments

  • rotation the orientation
  • order the order to do the rotation in

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The orientation was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getScaleOrientation ( MQuaternion &quaternion ) const

Description

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.

Arguments

  • rotation the quaternion into which we will store the rotate orientation

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The rotate orientation was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setScaleOrientation ( const MQuaternion &quaternion )

Description

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.

Arguments

  • quaternion the rotate orientation

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The scale orientation was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getScaleOrientation ( double rotation[3], MTransformationMatrix::RotationOrder &order ) const

Description

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.

Arguments

  • rotation the array into which we will store the angles
  • order storage for the order to do the rotation in

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The rotate orientation was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setScaleOrientation ( const double rotation[3], MTransformationMatrix::RotationOrder order )

Description

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.

Arguments

  • rotation the rotate orientation
  • order the order to do the rotation in

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The rotate orientation was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getSegmentScale ( double scale[3] ) const

Description

Get the local space scale values for the joint segment (bone). This is equivalent to calling MFnTransform::getScale.

Arguments

  • scale Storage for the scale values

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The scale values were successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setSegmentScale ( const double scale[3] )

Description

Set the local space scale values for the joint segment (bone). This is equivalent to calling Ttransform::setScale.

Arguments

  • scale the new scale values to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The scale values were successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getStiffness ( double stiffness[3] ) const

Description

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.

Arguments

  • stiffness storage for the stiffness values

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The stiffness was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setStiffness ( const double stiffness[3] )

Description

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.

Arguments

  • stiffness the X, Y, and Z stiffness values

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The stiffness was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getPreferedAngle ( double rotation[3] ) const

Description

Get the preferred orientation for this joint (in XYZ order)

Arguments

  • rotation the array into which we will store the angles

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The preferred angles were returned successfully
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setPreferedAngle ( const double rotation[3] )

Description

Set the preferred orientation for this joint (in XYZ order)

Arguments

  • rotation the array into which we will store the angles

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The preferred angles were successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getDegreesOfFreedom ( bool &freeInX, bool &freeInY, bool &freeInZ ) const

Description

Get degrees of freedom of this joint

Arguments

  • axis1 the first degree of freedom
  • axis2 the second degree of freedom
  • axis3 the third degree of freedom

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The degrees of freedom values were successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setDegreesOfFreedom ( bool freeInX, bool freeInY, bool freeInZ )

Description

Set the degrees of freedom of this joint by specifying which axes are allowed to rotate.

Arguments

  • axis1 the first degree of freedom
  • axis2 the second degree of freedom
  • axis3 the third degree of freedom

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The degrees of freedom were successfully set
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampXRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The minimum damping range in X

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampYRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The minimum damping range in Y

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampZRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The minimum damping range in Z

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampXRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The maximum of the damping range in X

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampYRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The maximum of the damping range in Y

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampZRange ( MStatus * ReturnStatus ) const

Description

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.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • The maximum of the damping range in Z

Status Codes

  • MS::kSuccess The damping range was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampXRange ( double angle )

Description

Set the minimum of the damping range in X

Arguments

  • angle The damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampYRange ( double angle )

Description

Set the minimum of the damping range in Y

Arguments

  • angle the damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampZRange ( double angle )

Description

Set the minimum of the damping range in Z

Arguments

  • angle the damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampXRange ( double angle )

Description

Set the maximum of the damping range in X

Arguments

  • angle the damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampYRange ( double angle )

Description

Set the maximum of the damping range in Y

Arguments

  • angle the damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampZRange ( double angle )

Description

Set the maximum of the damping range in Z

Arguments

  • angle the damping range to set

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping range was successfully set
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampXStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampYStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: minRotateDampZStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampXStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampYStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

double MFnIkJoint:: maxRotateDampZStrength ( MStatus * ReturnStatus ) const

Description

Get the minimum of the damping strength in X.

Arguments

  • ReturnStatus Status Code (see below)

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully returned
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampXStrength ( double angle )

Description

Set the maximum of the damping strength in Z.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampYStrength ( double angle )

Description

Set the maximum of the damping strength in Y.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMinRotateDampZStrength ( double angle )

Description

Set the minimum of the damping strength in Z.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampXStrength ( double angle )

Description

Set the maximum of the damping strength in X.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampYStrength ( double angle )

Description

Set the maximum of the damping strength in Y.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: setMaxRotateDampZStrength ( double angle )

Description

Set the maximum of the damping strength in Z.

Arguments

  • angle The new damping strength value

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The damping strength value was successfully set
  • MS::kFailure This function set has not been attached to a valid object

MStatus MFnIkJoint:: getHikJointName ( MString & name ) const

Description

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.

Arguments

  • name The name used to identify this joint for HumanIK

Return status

  • Status code (see below)

Status Codes

  • MS::kSuccess The name was successfully found
  • MS::kFailure The joint is not part of a humanIK handle

MString MFnIkJoint:: hikJointName ( MStatus * ReturnStatus ) const

Description

Get the name that the HumanIK solver uses to identify this joint.

Arguments

  • status Status code (see below)

Return Value

  • The name used to identify this joint for HumanIK

Status Codes

  • MS::kSuccess The name was successfully found
  • MS::kFailure The joint is not part of a humanIK handle

This class has no child classes.


Autodesk® Maya® 2008 © 1997-2007 Autodesk, Inc. All rights reserved. doc++ Copyright