[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Java3Djp:01165] 回転移動情報の反映方法



■ DNSの一行広告 ■ =========================
♪♪ 最高級ホテルの宿泊券を多数プレゼント→ http://www.eac.ne.jp/    ♪♪
〜〜 すべての女性がサンタクロースを待っている〜 http://pearl.ne.jp/
♪♪ 女性インナーの★直輸入特価★セール→ http://www.rakuten.co.jp/pon/
★★ パソコンバイト全国で募集! http://www.threepro.co.jp/ ★ ThreePro ★
◆ =================================  ◆

こんにちは、つきやまです。

MouseTranslate(1),MouseZoom(2),MouseRotate(3)で
変更されたTransform情報をある点(Point3d)に反映させたいのですが、

(1),(2),(3)に設定したTransformGroupのTransform3Dを取得し、
次のように処理をすると(1)(2)は反映されます。

//MouseBehaviorに設定したTransformGroupのTransform3D
MouseTranslate(trans);
MouseZoom(trans);
MouseRotate(trans);
Transform3D trans_behav = new Transform3D();
trans.getTransform( trans_behav );

//点に相当するTransform3Dを変換
trans_point.mulInverse( trans_behav ); ← trans_point=点のTransform3D

//変換後の座標
Vector3d v = new Vector3d();
trans_point.get(v);

//新しく値を設定
point.x=v.x;
point.y=v.y;
point.z=v.z;

Rotate(3)の変更も反映させたいのですが、どのような方法があるのでしょうか?
(上記の処理では反映されない事はわかるのですが、どのような処理を追加すれば
 良いのかがわかりません)

実際のプログラムは、ある平面にマウスドラッグで線を書くのですが、
平面をMouseBehaviorで動かした後に、その平面上に線を描くというものです。

処理自体が見当はずれだ、などアドバイスを頂けると助かります。
よろしくお願いします。

--
Mitsuru Tsukiyama