Since | 18.0 |
int usd_addrotate(int stagehandle, string primpath, string suffix, int axis, float angle)
int usd_addrotate(int stagehandle, string primpath, string suffix, int xyz, vector angles)
この関数は、Primに回転を適用します。 これは、回転を定義したトランスフォームオペレーションアトリビュートを作成して値を設定し、それをPrimのトランスフォーム順序に追加します。
stagehandle
書き出し先のステージのハンドル。
現在のところ、唯一有効な値は0
のみです。
この値は、ノード内の現在のステージを意味します(今後は、この引数を使用することで他のステージへの書き出しが可能になります)。
primpath
Primのパス。
suffix
トランスフォーム処理接尾辞。
xformOpOrder
アトリビュートに順々にリストされているフル名の一連のトランスフォーム処理によって、USD Primが空間内でトランスフォームされます。
フル名にはネームスペースが付けられ、トランスフォーム処理タイプ(例えば、移動や回転)がエンコードされ、さらに接尾辞を含めることができます。
Primに同じタイプの処理がいくつか含まれている場合、それらの処理を区別するために接尾辞を指定する必要があります。
このパラメータには、そのような接尾辞を指定します。
axis
回転軸の数値コード。回転軸の定義に関しては、usd.h VEXヘッダを参照してください。
angle
単一主軸を基準に回転させる時の回転角度(単位は度)。
axis
軸回転順の数値コード。回転順の定義に関しては、usd.h VEXヘッダを参照してください。
angles
主軸の各軸を基準に順々に回転させる時の回転の3つの角度(単位は度)。
Returns
成功するとstagehandle
の値、失敗すると-1
。
Examples ¶
// 回転の軸定数と順序定数を定義した"usd.h"をincludeします。 #include <usd.h> // cubeをZ軸を基準に30度回転させます。 usd_addrotate(0, "/geo/cube", "", USD_AXIS_Z, 30); // meshをY軸を基準に反時計回りに45度回転させます。 usd_addrotate(0, "/geo/mesh", "geo_rotation", USD_AXIS_Y, -45); // オイラー回転でconeを回転させます。 usd_addrotate(0, "/geo/cone", "cone_rotation", USD_ROTATE_XYZ, {0, 30, 45});
See also | |
usd | |
usd_transform |