2009-08-19 6 views
2

Comment puis-je définir les limites d'une instance de SimpleUnivers créée avec un objet canvas3d? J'ai essayé le code ci-dessous, mais je reçois soit un "Capability not set exception" si j'essaie de définir les limites et une "exception d'accès restreint" si j'essaie de définir la capacité d'écrire des limites.Comment définir les capacités d'un univers en Java 3d?

Voici mon code:

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); 

S'il vous plaît aider!

Répondre

3

Je l'ai compris. Plutôt que de mettre en place l'univers comme celui-ci:

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

SimpleUniverse universe = new SimpleUniverse(canvas3d); 

Je mis la ViewingPlatform par lui-même, puis a créé l'univers avec elle:

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); 
Questions connexes