Go to: Attributes.

transform nodes are dagNodes that are used to group and transform other dagNodes. All dagNodes that are not transform nodes in Maya must exist as a child of some transform node.

Transformation Matrix (DAG)

transform nodes have many attributes that make up the final transformation matrix as represented by the matrix attribute. This breakdown provides animators fine control over the animation of these parameters. Therefore, it is necessary to describe the order in which these attributes are applied to build the final matrix attribute. Note: matrices are post-multiplied in Maya. For example, to transform a point p from object-space to world-space you would need to post-multiply by the worldMatrix. (p' = p * wm)
              -1                      -1
   matrix = SP * S * SH * SP * ST * RP * RA * R * RP * RT * T
 
(where '*' denotes matrix multiplication and '-1' denotes matrix inversion'
   SP = |  1    0    0    0 |     ST = |  1    0    0    0 |
        |  0    1    0    0 |          |  0    1    0    0 |
        |  0    0    1    0 |          |  0    0    1    0 |
        | spx  spy  spz   1 |          | sptx spty sptz  1 |

   S  = |  sx   0    0    0 |     SH = |  1    0    0    0 |
        |  0    sy   0    0 |          | shxy  1    0    0 |
        |  0    0    sz   0 |          | shxz shyz  1    0 |
        |  0    0    0    1 |          |  0    0    0    1 |

   RP = |  1    0    0    0 |     RT = |  1    0    0    0 |
        |  0    1    0    0 |          |  0    1    0    0 |
        |  0    0    1    0 |          |  0    0    1    0 |
        | rpx  rpy  rpz   1 |          | rptx rpty rptz  1 |

   RA = AX * AY * AZ

   AX = |  1    0    0    0 |     AY = |  cy   0   -sy   0 |
        |  0    cx   sx   0 |          |  0    1    0    0 |
        |  0   -sx   cx   0 |          |  sy   0    cy   0 |
        |  0    0    0    1 |          |  0    0    0    1 |

   AZ = |  cz   sz   0    0 |     sx = sin(rax), cx = cos(rax)
        | -sz   cz   0    0 |     sy = sin(ray), cx = cos(ray)
        |  0    0    1    0 |     sz = sin(raz), cz = cos(raz)
        |  0    0    0    1 |

   Rotate:
                If the rotationInterpolation attribute specifies quaternion
                interpolation, use the following OpenMaya API calls to construct
                the matrix:
                        Mquaternion q( rx, ry, rz, rw )
                        R  = q.asMatrix()

                Otherwise, for Euler-angle rotation use:
                        R  = RX * RY * RZ  (Note: order is determined by rotateOrder)

                        RX = |  1    0    0    0 |     RY = |  cy   0   -sy   0 |
                                 |  0    cx   sx   0 |          |  0    1    0    0 |
                                 |  0   -sx   cx   0 |          |  sy   0    cy   0 |
                                 |  0    0    0    1 |          |  0    0    0    1 |

                        RZ = |  cz   sz   0    0 |     sx = sin(rx), cx = cos(rx)
                                 | -sz   cz   0    0 |     sy = sin(ry), cx = cos(ry)
                                 |  0    0    1    0 |     sz = sin(rz), cz = cos(rz)
                                 |  0    0    0    1 |

   T  = |  1    0    0    0 |
        |  0    1    0    0 |
        |  0    0    1    0 |
        |  tx   ty   tz   1 |
 
Node name Parents Classification MFn type Compatible function sets
transform dagNode drawdb/geometry/transform kTransform kBase
kNamedObject
kDependencyNode
kDagNode
kTransform

Attributes (109)

The following quick index only shows top-level attributes (too many attributes to show them all): displayHandle, displayLocalAxis, displayRotatePivot, displayScalePivot, dynamics, geometry, inheritsTransform, maxRotLimit (3), maxRotLimitEnable (3), maxScaleLimit (3), maxScaleLimitEnable (3), maxTransLimit (3), maxTransLimitEnable (3), minRotLimit (3), minRotLimitEnable (3), minScaleLimit (3), minScaleLimitEnable (3), minTransLimit (3), minTransLimitEnable (3), rotate (3), rotateAxis (3), rotateOrder, rotatePivot (3), rotatePivotTranslate (3), rotateQuaternion (4), rotationInterpolation, scale (3), scalePivot (3), scalePivotTranslate (3), selectHandle (3), shear (3), showManipDefault, specifiedManipLocation, transMinusRotatePivot (3), translate (3), xformMatrix

Long name (short name) Type Default Flags
translate (t) double3 outputinputconnectablestorable
Translation.
translateX (tx) distance (double) 0.0cm outputinputconnectablestorablekeyable
Translate X.
translateY (ty) distance (double) 0.0cm outputinputconnectablestorablekeyable
Translate Y.
translateZ (tz) distance (double) 0.0cm outputinputconnectablestorablekeyable
Translate Z.
rotate (r) double3 outputinputconnectablestorable
Rotation.
rotateX (rx) angle (double) 0.0deg outputinputconnectablestorablekeyable
Rotate X.
rotateY (ry) angle (double) 0.0deg outputinputconnectablestorablekeyable
Rotate Y.
rotateZ (rz) angle (double) 0.0deg outputinputconnectablestorablekeyable
Rotate Z.
rotateOrder (ro) enum 0 outputinputconnectablestorable
This attribute controls the order in which rx, ry, rz are applied in the transformation matrix. Valid values for this attribute are 0=xyz, 1=yzx, 2=zxy, 3=xzy, 4=yxz, 5=zyx.
scale (s) double3 outputinputconnectablestorable
Scale.
scaleX (sx) double 1.0 outputinputconnectablestorablekeyable
Scale X.
scaleY (sy) double 1.0 outputinputconnectablestorablekeyable
Scale Y.
scaleZ (sz) double 1.0 outputinputconnectablestorablekeyable
Scale Z.
shear (sh) double3 outputinputconnectablestorable
Shear.
shearXY (shxy) double 0.0 outputinputconnectablestorable
Shear XY.
shearXZ (shxz) double 0.0 outputinputconnectablestorable
Shear XZ.
shearYZ (shyz) double 0.0 outputinputconnectablestorable
Shear YZ.
rotatePivot (rp) double3 outputinputconnectablestorable
Point about which to rotate.
rotatePivotX (rpx) distance (double) 0.0cm outputinputconnectablestorable
Rotate pivot X.
rotatePivotY (rpy) distance (double) 0.0cm outputinputconnectablestorable
Rotate pivot Y.
rotatePivotZ (rpz) distance (double) 0.0cm outputinputconnectablestorable
Rotate pivot Z.
rotatePivotTranslate (rpt) double3 outputinputconnectablestorable
Rotate pivot correction. Used when moving the rotate pivot point without affecting the overall transformation matrix.
rotatePivotTranslateX (rptx) distance (double) 0.0cm outputinputconnectablestorable
Rotate translation X.
rotatePivotTranslateY (rpty) distance (double) 0.0cm outputinputconnectablestorable
Rotate translation Y.
rotatePivotTranslateZ (rptz) distance (double) 0.0cm outputinputconnectablestorable
Rotate translation Z.
scalePivot (sp) double3 outputinputconnectablestorable
Point around which to scale.
scalePivotX (spx) distance (double) 0.0cm outputinputconnectablestorable
Scale pivot X.
scalePivotY (spy) distance (double) 0.0cm outputinputconnectablestorable
Scale pivot Y.
scalePivotZ (spz) distance (double) 0.0cm outputinputconnectablestorable
Scale pivot Z.
scalePivotTranslate (spt) double3 outputinputconnectablestorable
Scale pivot correction. Used to moving the scale pivot point without affecting the overall transformation matrix.
scalePivotTranslateX (sptx) distance (double) 0.0cm outputinputconnectablestorable
Scale translation X.
scalePivotTranslateY (spty) distance (double) 0.0cm outputinputconnectablestorable
Scale translation Y.
scalePivotTranslateZ (sptz) distance (double) 0.0cm outputinputconnectablestorable
Scale translation Z.
rotateAxis (ra) double3 outputinputconnectablestorable
Extra rotation to adjust the local axis prior to applying the rotate attribute.
rotateAxisX (rax) angle (double) 0.0deg outputinputconnectablestorable
Rotate axis X.
rotateAxisY (ray) angle (double) 0.0deg outputinputconnectablestorable
Rotate axis Y.
rotateAxisZ (raz) angle (double) 0.0deg outputinputconnectablestorable
Rotate axis Z.
transMinusRotatePivot (tmrp) double3 outputconnectable
Attribute to extract the offset of the translation from the rotate pivot. The offset is in the same transformation space as the translate attribute which is parent-space. This value is typically used in expressions where it is subtracted from a position before setting the translation attribute. This causes the object to move so that the rotate pivot point is positioned at the desired position.
transMinusRotatePivotX (tmrx) distance (double) 0.0cm outputconnectable
Translation minus rotate pivot X.
transMinusRotatePivotY (tmry) distance (double) 0.0cm outputconnectable
Translation minus rotate pivot Y.
transMinusRotatePivotZ (tmrz) distance (double) 0.0cm outputconnectable
Translation minus rotate pivot Z.
minTransLimit (mntl) double3 outputinputconnectablestorable
Translate minimum. Translation values less than this value will be clamped to this value.
minTransXLimit (mtxl) distance (double) -1cm outputinputconnectablestorable
Minimum translation X.
minTransYLimit (mtyl) distance (double) -1cm outputinputconnectablestorable
Minimum translation Y.
minTransZLimit (mtzl) distance (double) -1cm outputinputconnectablestorable
Minimum translation Z.
maxTransLimit (mxtl) double3 outputinputconnectablestorable
Translate maximum. Translation values greater than this value will be clamped to this value.
maxTransXLimit (xtxl) distance (double) 1cm outputinputconnectablestorable
Maximum translation X.
maxTransYLimit (xtyl) distance (double) 1cm outputinputconnectablestorable
Maximum translation Y.
maxTransZLimit (xtzl) distance (double) 1cm outputinputconnectablestorable
Maximum translation Z.
minTransLimitEnable (mtle) compound n/a outputinputconnectablestorable
Enable translate minimum.
minTransXLimitEnable (mtxe) bool false outputinputconnectablestorable
Enable translate minimum X.
minTransYLimitEnable (mtye) bool false outputinputconnectablestorable
Enable translate minimum Y.
minTransZLimitEnable (mtze) bool false outputinputconnectablestorable
Enable translate minimum Z.
maxTransLimitEnable (xtle) compound n/a outputinputconnectablestorable
Enable translate maximum.
maxTransXLimitEnable (xtxe) bool false outputinputconnectablestorable
Enable translate maximum X.
maxTransYLimitEnable (xtye) bool false outputinputconnectablestorable
Enable translate maximum Y.
maxTransZLimitEnable (xtze) bool false outputinputconnectablestorable
Enable translate maximum Z.
minRotLimit (mnrl) double3 outputinputconnectablestorable
Rotate minimum. Rotation values less than this value will be clamped to this value.
minRotXLimit (mrxl) angle (double) -45deg outputinputconnectablestorable
Minimum rotation X.
minRotYLimit (mryl) angle (double) -45deg outputinputconnectablestorable
Minimum rotation Y.
minRotZLimit (mrzl) angle (double) -45deg outputinputconnectablestorable
Minimum rotation Z.
maxRotLimit (mxrl) double3 outputinputconnectablestorable
Rotate maximum. Rotation values greater than this value will be clamped to this value.
maxRotXLimit (xrxl) angle (double) 45deg outputinputconnectablestorable
Maximum rotation X.
maxRotYLimit (xryl) angle (double) 45deg outputinputconnectablestorable
Maximum rotation Y.
maxRotZLimit (xrzl) angle (double) 45deg outputinputconnectablestorable
Maximum rotation Z.
minRotLimitEnable (mrle) compound n/a outputinputconnectablestorable
Enable rotate minimum.
minRotXLimitEnable (mrxe) bool false outputinputconnectablestorable
Enable rotate minimum X.
minRotYLimitEnable (mrye) bool false outputinputconnectablestorable
Enable rotate minimum Y.
minRotZLimitEnable (mrze) bool false outputinputconnectablestorable
Enable rotate minimum Z.
maxRotLimitEnable (xrle) compound n/a outputinputconnectablestorable
Enable rotate maximum.
maxRotXLimitEnable (xrxe) bool false outputinputconnectablestorable
Enable rotate maximum X.
maxRotYLimitEnable (xrye) bool false outputinputconnectablestorable
Enable rotate maximum Y.
maxRotZLimitEnable (xrze) bool false outputinputconnectablestorable
Enable rotate maximum Z.
minScaleLimit (mnsl) double3 outputinputconnectablestorable
Scale minimum. Scale values less than this value will be clamped to this value.
minScaleXLimit (msxl) double -1 outputinputconnectablestorable
Scale minimum X.
minScaleYLimit (msyl) double -1 outputinputconnectablestorable
Scale minimum Y.
minScaleZLimit (mszl) double -1 outputinputconnectablestorable
Scale minimum Z.
maxScaleLimit (mxsl) double3 outputinputconnectablestorable
Scale maximum. Scale values greater than this value will be clamped to this value.
maxScaleXLimit (xsxl) double 1 outputinputconnectablestorable
Scale maximum X.
maxScaleYLimit (xsyl) double 1 outputinputconnectablestorable
Scale maximum Y.
maxScaleZLimit (xszl) double 1 outputinputconnectablestorable
Scale maximum Z.
minScaleLimitEnable (msle) compound n/a outputinputconnectablestorable
Enable scale minimum.
minScaleXLimitEnable (msxe) bool false outputinputconnectablestorable
Enable scale minimum X.
minScaleYLimitEnable (msye) bool false outputinputconnectablestorable
Enable scale minimum Y.
minScaleZLimitEnable (msze) bool false outputinputconnectablestorable
Enable scale minimum Z.
maxScaleLimitEnable (xsle) compound n/a outputinputconnectablestorable
Enable scale maximum.
maxScaleXLimitEnable (xsxe) bool false outputinputconnectablestorable
Enable scale maximum X.
maxScaleYLimitEnable (xsye) bool false outputinputconnectablestorable
Enable scale maximum Y.
maxScaleZLimitEnable (xsze) bool false outputinputconnectablestorable
Enable scale maximum Z.
geometry (g) Generic n/a inputconnectable
Geometry attribute used for positional constraints.
xformMatrix (xm) matrix identity outputconnectable
Local transformation matrix. Contains the same information as the matrix attribute on dagNode but it is stored in a format that can be interpolated easily.
selectHandle (hdl) double3 outputinputconnectablestorable
Selection handle position for this node in object-space coordinates.
selectHandleX (hdlx) distance (double) 0.0cm outputinputconnectablestorable
Selection handle X.
selectHandleY (hdly) distance (double) 0.0cm outputinputconnectablestorable
Selection handle X.
selectHandleZ (hdlz) distance (double) 0.0cm outputinputconnectablestorable
Selection handle Z.
inheritsTransform (it) bool true outputinputconnectablestorable
Attribute that controls whether this transform inherits transformations from its parent transform. If this value is false then the transform will act as though it is in world-space. In other words, transformations to its parent will not affect the world-space position of this transform and the parentMatrix attribute on this transform will return the identity matrix. This is primarily used when grouping objects with their construction history to prevent double transformations on the output object.
displayHandle (dh) bool false outputinputconnectablestorable
Boolean indicating whether the selection handle for this transform should be displayed.
displayScalePivot (dsp) bool false outputinputconnectablestorable
Boolean indicating whether the scale pivot point for this transform should be displayed.
displayRotatePivot (drp) bool false outputinputconnectablestorable
Boolean indicating whether the rotate pivot point for this transform should be displayed.
displayLocalAxis (dla) bool false outputinputconnectablestorable
Boolean indicating whether the local rotation axis for this transform should be displayed.
dynamics (dyn) bool false inputconnectable
When connected, this attribute indicates that this transform is part of a dynamics simulation.
showManipDefault (smd) enum 0 outputinputconnectablestorable
This attribute indicates the default manipulator that should be shown when this object is selected and the show manipulator tool is active. Valid values are 0=no default manipulator, 1=translation, 2=rotation, 3=scale. 4=transform, 5=global default, 6=smart, 7=specified
specifiedManipLocation (sml) generic typed data NULL inputconnectablehidden
When showManipDefault is set to specified, the node that is connected to this attribute will be used to determine the type of manipulator to show
rotateQuaternion (rq) double4 outputinputconnectablestorable
Quaternion-based rotation (q=Xi+Yj+Zk+W).
rotateQuaternionX (rqx) double 0.0 outputinputconnectablestorable
X channel of quaternion-based rotation (q=Xi+Yj+Zk+W). This attribute is only valid if the object is driven by quaternion animation curves. It is not used to control the object's rotation, but can be used to query the rotation in quaternion space. To use this attribute, connect it to rotateX's associated paramCurve's ".rawValue" attribute.
rotateQuaternionY (rqy) double 0.0 outputinputconnectablestorable
Y channel of quaternion-based rotation (q=Xi+Yj+Zk+W). This attribute is only valid if the object is driven by quaternion animation curves. It is not used to control the object's rotation, but can be used to query the rotation in quaternion space. To use this attribute, connect it to rotateY's associated paramCurve's ".rawValue" attribute.
rotateQuaternionZ (rqz) double 0.0 outputinputconnectablestorable
Z channel of quaternion-based rotation (q=Xi+Yj+Zk+W). This attribute is only valid if the object is driven by quaternion animation curves. It is not used to control the object's rotation, but can be used to query the rotation in quaternion space. To use this attribute, connect it to rotateZ's associated paramCurves ".rawValue" attribute.
rotateQuaternionW (rqw) double 0.0 outputinputconnectablestorable
W channel of quaternion-based rotation (q=Xi+Yj+Zk+W). This attribute is only valid if the object is driven by quaternion animation curves. To use this attribute, connect it to one is the rotation animCurve's ".quaternionW" attributes.
rotationInterpolation (roi) enum 1 outputconnectable
This attribute is deprecated and not being used at all.