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

[Java3Djp:01674] BoundingBox について



 〜 12月1日新しいビジネスが始まる!ビジネスも楽天、楽天ビジネス誕生 〜
         ●●●●●●●●●●●●●●●●●●●●●●●●●●●
         ● サービスリリース第一弾!ビジネスサービス商談市場 ●
         ●●●●●●●●●●●●●●●●●●●●●●●●●●●
〜〜〜〜〜 今すぐアクセス! http://business.rakuten.co.jp 〜〜〜〜〜
----------------------------------------------------------------------

〜 12月1日新しいビジネスが始まる!ビジネスも楽天、楽天ビジネス誕生 〜
●●●●●●●●●●●●●●●●●●●●●●●●●●●
● サービスリリース第一弾!ビジネスサービス商談市場 ●
●●●●●●●●●●●●●●●●●●●●●●●●●●●
〜〜〜〜〜 今すぐアクセス! http://business.rakuten.co.jp 〜〜〜〜〜
----------------------------------------------------------------------

はじめて投稿します。八嶋といいます。
基本的な質問だと思うのですが、聞きたいことがあります。

java3dの空間内に存在するオブジェクトの中心座標を
得るために、そのオブジェクトを囲む最小の直方体を BoundingBoxとして得て、そのBoxの中心をオブジェクトの
中心座標に指定しようとしています。
Shape3D、あるいはGeometryのクラスのオブジェクトから
自動的にBoundingBoxを得るようなメソッドはあるのでしょうか。 Bounds#getBounds や BoundingBox#BoundingBox(Bounds boundsObject)
などが使えるのかと思ったのですが、実際の使い方が解りません。
もし自動的にBoundingBoxが得られるとしたら、どのような
データ形式で帰って来るのでしょうか。 BoundingBoxが得られたら、その頂点座標を用いて
オブジェクトの中心座標を得たいと思っています。

それに関連してなのですが、オブジェクトから
それを構成しているポリゴンの頂点座標を得るには
どうすればよいでしょうか。
GeometryArray#getCoordRef3d()を使えば良いんじゃないかと
考えたのですが、実際の書き方が解りません。

Shape3D objs =(Shape3D)namedobjs.get(objskeyArray[i]);
Geometry geom = objs.getGeometry();
objsCoordArray[j] = geom.getCoordRef3f();

と記述したのですが、geomのクラスと getCoordRef3d
で使えるクラスが違うので、エラーが出ます。

java3d初心者なので基本的な質問かも知れませんが、
分かる方がいらっしゃいましたら回答をお願いします。

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
八嶋 栄美子

東京工業大学 情報理工学研究科
計算工学専攻 中嶋研 修士1年

Email:yassie@xxxxxxxxxxxxxxxxxxx
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-