例1
ティーポット赤の動きを、
原点を基準にして、ティーポット青に付ける。
↓初期状態
t1 = $teapot01 --赤 t3 = $teapot03 --青 slidertime = 1 s_tra = t1.transform with animate on( for i=1 to 36 do( slidertime = i tra = t1.transform * inverse s_tra t3.transform = tra ) )
※アニメーションが始まる1フレーム目で、トランスフォームを取得しておく。
forループ内で自身の反転したトランスフォームを使うと、
処理のたびに原点に移動してしまう。
↓結果
—————————————————-
例2
原点を基準にして動くティーポット青を、
ティーポット緑のローカル座標を基準にして動くようにする。
↓初期状態
t2 = $teapot02 --緑 t3 = $teapot03 --青 with animate on( for i=1 to 36 do( slidertime = i tra = t3.transform * t2.transform t3.transform = tra ) )
ティーポット青のトランスフォームに、
ティーポット緑のトランスフォームを掛けているだけなので単純。
↓結果
—————————————————-
例3
例1と例2を一度に行うイメージ
ティーポット赤の動きを、
ティーポット緑のローカル座標に合わせ、
ティーポット青に付ける。
↓初期状態
t1 = $teapot01 --赤 t2 = $teapot02 --緑 t3 = $teapot03 --青 slidertime = 1 s_tra = t1.transform with animate on( for i=1 to 36 do( slidertime = i tra = t1.transform * inverse s_tra tra = tra * t2.transform t3.transform = tra ) )
↓結果
●Autodesk 3dsMax公式ヘルプへのリンク
Matrix3 値