2009-08-19 12 views
2

canvas3dオブジェクトで作成されたSimpleUniverseインスタンスで境界を設定するにはどうすればよいですか?Javaでユニバースの機能を設定する方法3D?

以下のコードを試しましたが、境界を設定しようとすると "Capability not set exception"が発生し、境界を書き込む機能を設定しようとすると "Restricted access exception"になります。ここで

は私のコードです:

GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); 
Canvas3D canvas3d = new Canvas3D(config); 
SimpleUniverse universe = new SimpleUniverse(canvas3d); 
ViewingPlatform viewPlatform = universe.getViewingPlatform(); 

// Below line throws RestricedAccessException 
viewPlatform.setCapability(ViewingPlatform.ALLOW_BOUNDS_WRITE); 
// I want to set the bounds, thus the need for the capability above 
viewPlatform.setBounds(bounds); 

助けてください!

答えて

3

私はそれを理解しました。のではなく、このように宇宙を設定します。

GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); 
Canvas3D canvas3d = new Canvas3D(config); 

SimpleUniverse universe = new SimpleUniverse(canvas3d); 

私はそれで宇宙を作成し、その後、それ自体でViewingPlatformを設定します。

GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration(); 
Canvas3D canvas3d = new Canvas3D(config); 

ViewingPlatform viewingPlatform = new ViewingPlatform(); 
viewingPlatform.setCapability(ViewingPlatform.ALLOW_BOUNDS_WRITE); 
viewingPlatform.setBounds(bounds); 
Viewer viewer = new Viewer(canvas3d);  

SimpleUniverse universe = new SimpleUniverse(viewingPlatform, viewer); 
関連する問題