Go to: Synopsis. Notes. Return value. Related. Flags. MEL examples.
xform [-absolute] [-boundingBox] [-boundingBoxInvisible] [-centerPivots] [-euler] [-matrix float float float float float float float float float float float float float float float float] [-objectSpace] [-pivots linear linear linear] [-preserve boolean] [-relative] [-rotateAxis angle angle angle] [-rotateOrder string] [-rotatePivot linear linear linear] [-rotateTranslation linear linear linear] [-rotation angle angle angle] [-scale float float float] [-scalePivot linear linear linear] [-scaleTranslation linear linear linear] [-shear float float float] [-translation linear linear linear] [-worldSpace] [-worldSpaceDistance] [-zeroTransformPivots]
[objects...]
xform is undoable, queryable, and NOT editable.
This command can be used query/set any element in a transformation node. It can also be used to query some values that cannot be set directly such as the transformation matrix or the bounding box. It can also set both pivot points to convenient values.
All values are specified in transformation coordinates. (attribute-space)
In addition, the attributes are applied/returned in the order in which they appear in the flags section. (which corresponds to the order they appear in the transformation matrix as given below)
See also: move, rotate, scale
-1 -1 [M] = [sp]x[s]x[sh]x[sp]x[st]x[rp]x[ar]x[ro]x[rp]x[rt]x[t]where:
[sp] = | 1 0 0 0 | = scale pivot matrix | 0 1 0 0 | | 0 0 1 0 | | -spx -spy -spz 1 |
[s] = | sx 0 0 0 | = scale matrix | 0 sy 0 0 | | 0 0 sz 0 | | 0 0 0 1 |
[sh] = | 1 0 0 0 | = shear matrix | xy 1 0 0 | | xz yz 1 0 | | 0 0 0 1 |
-1 [sp] = | 1 0 0 0 | = scale pivot inverse matrix | 0 1 0 0 | | 0 0 1 0 | | spx spy spz 1 |
[st] = | 1 0 0 0 | = scale translate matrix | 0 1 0 0 | | 0 0 1 0 | | stx sty stz 1 |
[rp] = | 1 0 0 0 | = rotate pivot matrix | 0 1 0 0 | | 0 0 1 0 | | -rpx -rpy -rpz 1 |
[ar] = | * * * 0 | = axis rotation matrix | * * * 0 | (composite rotation, | * * * 0 | see [rx], [ry], [rz] | 0 0 0 1 | below for details)
[rx] = | 1 0 0 0 | = rotate X matrix | 0 cos(x) sin(x) 0 | | 0 -sin(x) cos(x) 0 | | 0 0 0 1 |
[ry] = | cos(y) 0 -sin(y) 0 | = rotate Y matrix | 0 1 0 0 | | sin(y) 0 cos(y) 0 | | 0 0 0 1 |
[rz] = | cos(z) sin(z) 0 0 | = rotate Z matrix | -sin(z) cos(z) 0 0 | | 0 0 1 0 | | 0 0 0 1 |
-1 [rp] = | 1 0 0 0 | = rotate pivot matrix | 0 1 0 0 | | 0 0 1 0 | | rpx rpy rpz 1 |
[rt] = | 1 0 0 0 | = rotate translate matrix | 0 1 0 0 | | 0 0 1 0 | | rtx rty rtz 1 |
[t] = | 1 0 0 0 | = translation matrix | 0 1 0 0 | | 0 0 1 0 | | tx ty tz 1 |
None
In query mode, return type is based on queried flag.
Long name (short name) | Argument types | Properties | ||
---|---|---|---|---|
-absolute(-a)
|
|
![]() |
||
|
||||
-relative(-r)
|
|
![]() |
||
|
||||
-euler(-eu)
|
|
![]() |
||
|
||||
-objectSpace(-os)
|
|
![]() ![]() |
||
|
||||
-worldSpace(-ws)
|
|
![]() ![]() |
||
|
||||
-worldSpaceDistance(-wd)
|
|
![]() ![]() |
||
|
||||
-preserve(-p)
|
boolean
|
![]() |
||
|
||||
-scalePivot(-sp)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-scale(-s)
|
float float float
|
![]() ![]() |
||
|
||||
-shear(-sh)
|
float float float
|
![]() ![]() |
||
|
||||
-scaleTranslation(-st)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-rotatePivot(-rp)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-rotateOrder(-roo)
|
string
|
![]() ![]() |
||
|
||||
-rotateAxis(-ra)
|
angle angle angle
|
![]() ![]() |
||
|
||||
-rotation(-ro)
|
angle angle angle
|
![]() ![]() |
||
|
||||
-rotateTranslation(-rt)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-translation(-t)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-matrix(-m)
|
float float float float float float float float float float float float float float float float
|
![]() ![]() |
||
|
||||
-boundingBox(-bb)
|
|
![]() |
||
|
||||
-boundingBoxInvisible(-bbi)
|
|
![]() |
||
|
||||
-pivots(-piv)
|
linear linear linear
|
![]() ![]() |
||
|
||||
-centerPivots(-cp)
|
|
![]() |
||
|
||||
-zeroTransformPivots(-ztp)
|
|
![]() |
||
|
![]() |
![]() |
![]() |
![]() |
// create object to manipulate sphere -n sphere1; // set rotation of sphere xform -r -ro 0 90 0; // change the rotate order but preserve the overall transformation xform -p true -roo yzx;