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

[Java3Djp:01581] Re: Re: 2 つの Transforam3D の距離をリアルタイムで表示するには?



-- 創業130余年  未来志向の瓦ファクトリー ・株式会社 藭清です。 ----
 ■■“瓦屋さんって、ガーデニングポットなんかも創ってくれるの?”■■
 ■■■ “台風の季節。うちの瓦屋根、雨もり大丈夫かな・・?” ■■■
 ■■  鬼瓦って、意外といいインテリア・オブジェかもしれない・・ ■■
 ---思わぬ発見、あります。→ http://www.easyml.com/880.php3/ ---------
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−


お世話になっております。

> えんどうです。
> 
>> 記述はこうです。
>>     public PickingCallback pickingCallback = new PickingCallback() {
>>       public void transformChanged(int flag, TransformGroup
>> transPick) {
>
> 引数で渡って来た transPick を全く使っていないようなのですが...
> transPickは変化しているはずです。

transPickを使用する必要はないと考えたのですが、私が何か勘違いをしてい
るのかも知れません。
常にAの平面に対するBの点の最短距離を算出したいので、AがPickされたのか、
BがPickされたのか判定する必要は無くて、A or BどちらかがPickされたら、
一律
disp_t3d0.transform(dataVec3d, tranVec3d);
としてAのt3dでBのベクタを変換すれば良いと考えています。


数値を見ていて、やはりどうも解せないのが、
平面を正面から横向きに回転してから、左右(つまり表示物体的にはZ方向に
振っていることになります)に振って平面のベクタ(ctVec3d)を表示させても、
Xの値しか変化しません。念のため、同時にtransPickから取り出したVector3d
をモニタしていても、全く同じ値が表示されるだけです。もし、座標系全体が
回転しているのであれば、本来ここでZの値が変わるのではないかと思うので
すが....
もしかして表示されている数値はローカルな値ではなくてグローバルな値なの
でしょうか?



---
はま
E-Mail Address:h-hama@xxxxxxxxxxxxxxx