[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Java3Djp:00516] Re: [Q]Transfom3Dの順番
/ 免疫機能研究会の3月のお知らせ /
/ ■ アガリクス活性化多糖体による免疫療法体験談 8編 /
/ ■ 「免疫機能研究」ニューズレター 7編 /
/ -------------------------- /
/ こちらで掲載中です。--->> http://www.meneki.com/ /
--------------------------------------------------------------
>myTransformGroup.addChild(t1);
>myTransformGroup.addChild(t2);
>myTransformGroup.addChild(t3);
>myTransformGroup(visualObject);
上記のようにぜんぶ myTransformGroup にaddChild()する場合、
下記のような構造になると思います。
myTransformGroup (T)
/|\\
/ | \ \
/ | \ \
(T) (T) (T) <S> visualObject
t1 t2 t3
もしこういう構造なら、
t1、t2、t3 への変換は、visualObject には作用しません。
>とした場合に、変換行列は
>t1*t2*t3*visualObject
>という順番で作用するのか、
>それとも
>t3*t2*t1*visualObject
>という順番になるのか。。。。
>
>多分Graphを考えると最初の順番だと思うのですが、今一つ確信がつかめません。
>どうも情けない質問ですがお願いいたします。。。
この場合の visualObect ですが、
直上のTransformGroupによる変換がまず適用されるはずです。
t3.addChild(visualObject);
t2.addChild(t3);
t1.addChild(t2);
myTransformGroup.addChild(t1);
このようなコードを書くと、下記のうような構造になります。
(T) myTransformGroup
|
(T) t1
|
(T) t2
|
(T) t3
|
<S> visaulObject
このとき、t3にスケーリング、t2に回転、t1に移動を適用したとします。
まず visualObject は t3 だけスケーリングされ、t2 だけ回転し、
t1 だけ移動するはずです。
(表示されるときは同時ですが)
--
えんどう やすゆき <yasuyuki@xxxxxxxxxx>
http://www.javaopen.org/jfriends/ (Java互助会ホームページ)