ジャンプ先: 概要. 注記.
戻り値. 関連項目. フラグ. Python 例.
xform( [objects...] , [absolute=boolean], [boundingBox=boolean], [boundingBoxInvisible=boolean],
[centerPivots=boolean],
[euler=boolean], [matrix=[float, float, float, float, float,
float, float, float, float, float, float, float, float, float,
float, float]], [objectSpace=boolean], [pivots=[linear, linear, linear]],
[preserve=boolean], [relative=boolean], [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=boolean], [worldSpaceDistance=boolean],
[zeroTransformPivots=boolean])
注意:
オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
xform は 「元に戻す」が可能、「照会」が可能、「編集」が不可能 です。
このコマンドは、変換ノードにおける、あらゆる要素の 照会/設定に使用できます。また、変換行列や バウンディング
ボックスのような、直接設定できない値を 照会することもできます。ピボット ポイントを設定することもできます。 すべての値は、変換の座標
(アトリビュート - スペース)で指定します。 また、アトリビュートは「フラグ」セクションに記述された順番に
適用され、値を返します。(この順番は下記の変換行列に表示されている順序に 対応しています。) 関連項目:
move、rotate、scale
ノードに対する変換行列は、指定した順序で 次のマトリックスを後で掛け合わせて構築されます(注:
回転は回転順序パラメータに従って適用されます。以下にはこの 6 種類の回転は示されていません)
-1                       -1
[M]  = [sp]x[s]x[sh]x[sp]x[st]x[rp]x[ar]x[ro]x[rp]x[rt]x[t]
ここで、
[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 | = シア行列
|  xy     1        0       0 |
|  xz     yz       1       0 |
|  0      0        0       1 |
-1
[sp] = |  1       0       0       0 | = スケール ピボット逆行列
|  0       1       0       0 |
|  0       0       1       0 |
|  spx     spy     spz     1 |
[st] = |  1       0       0       0 | = スケール移動行列
|  0       1       0       0 |
|  0       0       1       0 |
|  stx     sty     stz     1 |
[rp] = |  1       0       0       0 | = 回転ピボット行列
|  0       1       0       0 |
|  0       0       1       0 |
| -rpx    -rpy    -rpz     1 |
[ar] = |  *       *       *       0 | = 軸回転行列
|  *       *       *       0 |   (合成回転、
|  *       *       *       0 |    詳細は以下の [rx], [ry], [rz]
|  0       0       0       1 |    を参照)
[rx] = |  1       0       0       0 | = 回転 X 行列
|  0       cos(x)  sin(x)  0 |
|  0      -sin(x)  cos(x)  0 |
|  0       0       0       1 |
[ry] = |  cos(y)  0      -sin(y)  0 | = 回転 Y 行列
|  0       1       0       0 |
|  sin(y)  0       cos(y)  0 |
|  0       0       0       1 |
[rz] = |  cos(z)  sin(z)  0       0 | = 回転 Z 行列
| -sin(z)  cos(z)  0       0 |
|  0       0       1       0 |
|  0       0       0       1 |
-1
[rp] = |  1       0       0       0 | = 回転ピボット行列
|  0       1       0       0 |
|  0       0       1       0 |
|  rpx     rpy     rpz     1 |
[rt] = |  1       0       0       0 | = 回転移動行列
|  0       1       0       0 |
|  0       0       1       0 |
|  rtx     rty     rtz     1 |
[t]  = |  1       0       0       0 | = 移動行列
|  0       1       0       0 |
|  0       0       1       0 |
|  tx      ty      tz      1 |
なし
戻り値の型は照会モードでは照会フラグが基になります。
move, rotate,
scale
absolute, boundingBox, boundingBoxInvisible, centerPivots, euler, matrix, objectSpace, pivots, preserve,
relative, rotateAxis, rotateOrder, rotatePivot, rotateTranslation, rotation, scale,
scalePivot, scaleTranslation, shear, translation,
worldSpace, worldSpaceDistance, zeroTransformPivots
| ロング ネーム(ショート ネーム) | 引数型 | プロパティ | 
| absolute(a) | boolean |  | 
|  | 
| relative(r) | boolean |  | 
|  | 
| euler(eu) | boolean |  | 
| 
|  | 回転値を指定する -relative フラグの修飾子で、 現在の XYZ 回転値に加算されます。 |  | 
| objectSpace(os) | boolean |   | 
| 
|  | (ピボット、移動、回転、回転軸、マトリックス、 バウンディング ボックス、フラグのみに有効な)
オブジェクト空間の変換値として値を扱います。 |  | 
| worldSpace(ws) | boolean |   | 
| 
|  | (ピボット、移動、回転、回転軸、マトリックス、 バウンディング ボックス、フラグのみに有効な)
ワールド空間の変換値として値を扱います。 |  | 
| worldSpaceDistance(wd) | boolean |   | 
| 
|  | -sp、-rp、-st、-rt、-t、-piv フラグの値は、 ローカル軸に沿って動くワールド空間の
距離として扱われます。ローカル軸は、コマンドがローカル空間、または オブジェクト空間で機能しているかどうかによって異なります。
このフラグは、ワールド空間では効果がありません。 |  | 
| preserve(p) | boolean |  | 
| 
|  | 変換全体を保持します。またピボットや回転順序の変更時に、 オブジェクトが「ジャンプ」するのを防ぐために使用されます。
デフォルト値は true です( -sp、-rp、-roo、-cp、-ra フラグとともに使用)。 |  | 
| scalePivot(sp) | [linear, linear, linear] |   | 
| 
|  | ピボット ポイントでスケール変換します (-p フラグとともに使用する場合は、トランスフォーム全体の
スケール変換に変更が加えられるのを防ぎます)。 |  | 
| scale(s) | [float, float, float] |   | 
|  | 
| shear(sh) | [float, float, float] |   | 
| 
|  | シア変換します。 値はシアの <xy,xz,yz> を表します。 |  | 
| scaleTranslation(st) | [linear, linear, linear] |   | 
|  | 
| rotatePivot(rp) | [linear, linear, linear] |   | 
| 
|  | ピボット ポイントで回転変換します (-p フラグとともに使用する場合は、変換全体の回転変換に
変更が加えられるのを防ぎます)。 |  | 
| rotateOrder(roo) | string |   | 
| 
|  | 回転の順番です(-p フラグとともに使用する場合は、 ローカル回転にオリジナルのものと同等になるよう修正を加え、
変換全体を保持します)。 このフラグに対する有効な値は、 <xyz | yzx | zxy | xzy | yxz |
zyx> です。 |  | 
| rotateAxis(ra) | [angle, angle, angle] |   | 
| 
|  | 回転軸の方向です(-p フラグとともに使用する場合は、 回転全体における、軸回転の補正のために回転に
変更が加えられるのを防ぎます)。 |  | 
| 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] |   | 
| 
|  | 変換行列を作成または返します。 *注* 行列は、列の順番で指定される 16 個の double
型の引数で表されます。 |  | 
| boundingBox(bb) | boolean |  | 
| 
|  | オブジェクトのバウンディング ボックスを返します。戻り値は次の順序で戻されます: x の最小値、y の最小値、z の最小値、x
の最大値、y の最大値、z の最大値 |  | 
| boundingBoxInvisible(bbi) | boolean |  | 
| 
|  | オブジェクトのバウンディング ボックスを返します。boundingBox フラグを使用した場合は、
含まれないすべての非表示の子の バウンディング ボックスも含まれます。戻り値は次の順序で返されます。x の最小値、y の最小値、z
の最小値、x の最大値、y の最大値、z の最大値 |  | 
| pivots(piv) | [linear, linear, linear] |   | 
| 
|  | 回転とピボットのスケールを同時に変更する 便利な方法です(詳細は -rp -sp フラグを参照)。 |  | 
| centerPivots(cp) | boolean |  | 
| 
|  | ピボット ポイントを、オブジェクトのバウンディング ボックスの 中心に設定します(-p フラグを参照)。 |  | 
| zeroTransformPivots(ztp) | boolean |  | 
| 
|  | 移動チャンネルにこれらの値を適用することにより、 行列全体を変更せずに ピボット
ポイントとピボットの移動をリセットします。 |  | 
|  : コマンドの作成モードで使用可能なフラグ |  : コマンドの編集モードで使用可能なフラグ | 
|  : コマンドの照会モードで使用可能なフラグ |  : タプルまたはリストとして渡された複数の引数を持てるフラグ | 
import maya.cmds as cmds
# create object to manipulate
cmds.sphere( n='sphere1' )
# set rotation of sphere
cmds.xform( r=True, ro=(0, 90, 0) )
# change the rotate order but preserve the overall transformation
cmds.xform( p=True, roo='yzx' )