vector cracktransform(int trs, int xyz, int c, vector pivot, vector pivot_rotate, matrix xform)
vector cracktransform(int trs, int xyz, int c, vector pivot, matrix xform)
cの値に応じて、トランスフォーム(xform)の移動(c=0
)、回転(c=1
またはc=4
)、スケール(c=2
)、シアー(c=3
)のコンポーネントを返します。
この関数は、指定したトランスフォームと回転の順序(trsとxyz)とピボットポイント(pivot)を使って戻り値を計算します。
Note
回転角度(c=1
の時)は度で返されるのに対し、ほとんどの他のVEX関数はラジアンを使用します。
radians VEX関数を使用することで、度の角度ベクトルをラジアンの角度ベクトルに変換することができます。
例: vector angles = radians(cracktransform(XFORM_TRS, XFORM_XYZ, 1, {0,0,0}, M));
Note
回転角度(c=4
の時)はラジアンで返されます。
trs
以下に載せているトランスフォーム順序定数のどれか。
これらの定数は$HFS/houdini/vex/include/math.h
から取り込むことができます。
定数名 |
トランスフォーム順序 |
---|---|
XFORM_SRT |
Scale, Rotate, Translate |
XFORM_STR |
Scale, Translate, Rotate |
XFORM_RST |
Rotate, Scale, Translate |
XFORM_RTS |
Rotate, Translate, Scale |
XFORM_TSR |
Translate, Scale, Rotate |
XFORM_TRS |
Translate, Rotate, Scale |
xyz
以下に載せている回転順序定数のどれか。
これらの定数は$HFS/houdini/vex/include/math.h
から取り込むことができます。
定数名 |
回転順序 |
---|---|
XFORM_XYZ |
回転順序 X, Y, Z |
XFORM_XZY |
回転順序 X, Z, Y |
XFORM_YXZ |
回転順序 Y, X, Z |
XFORM_YZX |
回転順序 Y, Z, X |
XFORM_ZXY |
回転順序 Z, X, Y |
XFORM_ZYX |
回転順序 Z, Y, X |
void cracktransform(int trs, int xyz, vector pivot, vector pivot_rotate, matrix xform, vector &t, vector &r, vector &s, vector &shears)
トランスフォーム(xform)から移動(t)、回転(r)、スケール(s)、シアー(shears)のコンポーネントを返します。 2つ以上のコンポーネントが必要であれば、このオーバーロードを使用した方が、他の関数シグネチャを何回もコールするより効率が良いです。
void cracktransform(int trs, int xyz, vector pivot, matrix xform, vector &t, vector &r, vector &s)
トランスフォーム(xform)から移動(t)、回転(r)、スケール(s)のコンポーネントを返します。 このオーバーロードは、pivot_rotateまたはシアーに対応していません。 2つ以上のコンポーネントが必要であれば、このオーバーロードを使用した方が、他の関数シグネチャを何回もコールするより効率が良いです。
See also | |
math |
|
matrix |
|