ソフトウェア開発したい日記

「面白い!」と思った頭の体操や、数学の問題を載せていきます
その他ロードバイクででかけた先の写真や、ソフト開発のメモ等

Java3DのCanvas3Dを、NetBeans上でラベルの上に乗っけたい

2011年01月31日 23時56分26秒 | ソフト開発日記
プラットフォームに依存しない3Dソフトを作るお仕事が来そうなので、
以前挫折したJava3Dをまたいじってみることに。

Canvas3DをNetBeansのGUIデザイナ上になんとか乗っけてそこで表示させたい。
(インターフェース作りで楽をしたいから。)

とりあえずこちらのサイト様で、NetBeansにJava3Dライブラリをインストール。
ttp://feather.cocolog-nifty.com/weblog/2008/02/netbeansguimati_f3a3.html

そして試行錯誤の末、
なんとかNetBeansのJFrameフォーム上にCanvas3Dを乗っけて描画を行うことに成功。

JFrameフォーム上に、lblDrawという名前のラベルを配置。
そしてJFrameフォームのコンストラクタに、以下のコードを書き足し。
忘れてしまったとき用のメモソース。

public MainFrame() {
initComponents();

GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
Canvas3D canvas = new Canvas3D(config);
lblDraw.setLayout(new BorderLayout());
lblDraw.add("Center", canvas);

SimpleUniverse universe = new SimpleUniverse(canvas);
universe.getViewingPlatform().setNominalViewingTransform();
BranchGroup root = new BranchGroup();
root.addChild(new ColorCube(0.3f));

universe.addBranchGraph(root);
}

これでなんとか、lblDrawという名前のラベル上にCanvas3Dを乗っけることができた。
意外としんどかった。