Go to: Related nodes. Attributes.
This node implements an orientConstraint. Each constraint has a set
of targets that are connected under the target attribute, a single
constrained object that is connected to the constraint* attributes,
and possibly other information to help compute the correct results.
In the case of the orientConstraint, there is no other
information.
The orientConstraint node can have any number of target inputs.
Each target is connected to attributes inside a single element of
the target attribute. For example, the first target object would be
connected elements of target[0], the second target object would be
connected to elements of target[1], etc. The elements of each
target are: targetRotate, targetRotateOrder, targetParentMatrix,
and targetWeight.The elements of each target are normally connected
to the target objects as follows:
orientConstraint attribute |
connected to |
targetRotate |
rotate |
targetRotateOrder |
rotateOrder |
targetJointOrient |
jointOrient (joints only) |
targetParentMatrix |
parentMatrix[i] |
targetWeight |
set to 1.0 |
The targetWeight attribute is not generally connected to the target
object. Instead, it may be animated by other means to adjust the
weighted average computation for the target orientation.The
orientConstraint node uses these inputs to compute the world space
orientation of each target object. It then computes a weighted
average of the these orientations in quaternion space. This
weighted average is called the target orientation.The constrained
object is connected to the constraint* attributes. For an
orientConstraint, the attributes constraintRotateOrder,
constraintJointOrient, and constraintParentInverseMatrix are inputs
to the orientConstraint. The attribute constraintRotate is the only
output.The orientConstraint node computes an output rotation value
such that the orientation of the constrained object matches the
target orientation.Although the all the constraint nodes inherit
from transform, they do not actively use any of the attributes from
transform.
Node name |
Parents |
MFn type |
Compatible function sets |
orientConstraint |
constraint |
kOrientConstraint |
kBase
kNamedObject
kDependencyNode
kDagNode
kTransform
kConstraint
kOrientConstraint |
Related nodes
aimConstraint, geometryConstraint, normalConstraint, parentConstraint, pointConstraint, poleVectorConstraint, scaleConstraint, tangentConstraint, lookAt
Attributes (41)
constraintJointOrient,
constraintJointOrientX,
constraintJointOrientY,
constraintJointOrientZ,
constraintParentInverseMatrix,
constraintRotate, constraintRotateOrder, constraintRotateX, constraintRotateY, constraintRotateZ, interpCache, interpType, lastTargetRotate, lastTargetRotateX, lastTargetRotateY, lastTargetRotateZ, offset, offsetX,
offsetY, offsetZ, restRotate, restRotateX, restRotateY, restRotateZ, target, targetJointOrient, targetJointOrientX, targetJointOrientY, targetJointOrientZ, targetParentMatrix, targetRotate, targetRotateCached, targetRotateCachedX, targetRotateCachedY, targetRotateCachedZ, targetRotateOrder, targetRotateX, targetRotateY, targetRotateZ, targetWeight, useOldOffsetCalculation
Long name (short name) |
Type |
Default |
Flags |
|
target
(tg ) |
compound |
n/a |
|
|
targetRotate
(tr ) |
double3 |
|
|
|
targetRotateX
(trx ) |
angle (double) |
0.0deg |
|
|
|
targetRotateY
(try ) |
angle (double) |
0.0deg |
|
|
|
targetRotateZ
(trz ) |
angle (double) |
0.0deg |
|
|
|
|
targetRotateOrder
(tro ) |
enum |
0 |
|
|
|
targetJointOrient
(tjo ) |
double3 |
|
|
|
targetJointOrientX
(tjox ) |
angle (double) |
0.0deg |
|
|
|
targetJointOrientY
(tjoy ) |
angle (double) |
0.0deg |
|
|
|
targetJointOrientZ
(tjoz ) |
angle (double) |
0.0deg |
|
|
|
|
targetParentMatrix
(tpm ) |
matrix |
identity |
|
|
|
targetWeight
(tw ) |
double |
1.0 |
|
|
|
targetRotateCached
(ctr ) |
double3 |
|
|
|
targetRotateCachedX
(ctrx ) |
angle (double) |
0.0deg |
|
|
|
targetRotateCachedY
(ctry ) |
angle (double) |
0.0deg |
|
|
|
targetRotateCachedZ
(ctrz ) |
angle (double) |
0.0deg |
|
|
|
|
lastTargetRotate
(lr ) |
double3 |
|
|
|
lastTargetRotateX
(lrx ) |
angle (double) |
0.0deg |
|
|
|
lastTargetRotateY
(lry ) |
angle (double) |
0.0deg |
|
|
|
lastTargetRotateZ
(lrz ) |
angle (double) |
0.0deg |
|
|
|
constraintParentInverseMatrix
(cpim ) |
matrix |
identity |
|
|
constraintRotateOrder
(cro ) |
enum |
0 |
|
|
constraintJointOrient
(cjo ) |
double3 |
|
|
|
constraintJointOrientX
(cjox ) |
angle (double) |
0.0deg |
|
|
|
constraintJointOrientY
(cjoy ) |
angle (double) |
0.0deg |
|
|
|
constraintJointOrientZ
(cjoz ) |
angle (double) |
0.0deg |
|
|
|
constraintRotate
(cr ) |
double3 |
|
|
|
constraintRotateX
(crx ) |
angle (double) |
0.0deg |
|
|
|
constraintRotateY
(cry ) |
angle (double) |
0.0deg |
|
|
|
constraintRotateZ
(crz ) |
angle (double) |
0.0deg |
|
|
|
offset
(o ) |
double3 |
|
|
|
offsetX
(ox ) |
angle (double) |
0.0deg |
|
|
|
offsetY
(oy ) |
angle (double) |
0.0deg |
|
|
|
offsetZ
(oz ) |
angle (double) |
0.0deg |
|
|
|
restRotate
(rsrr ) |
double3 |
|
|
|
restRotateX
(rrx ) |
angle (double) |
0.0deg |
|
|
|
restRotateY
(rry ) |
angle (double) |
0.0deg |
|
|
|
restRotateZ
(rrz ) |
angle (double) |
0.0deg |
|
|
|
interpType
(int ) |
enum |
1 |
|
|
interpCache
(inc ) |
integer |
0 |
|
|
useOldOffsetCalculation
(uooc ) |
bool |
false |
|