Also... does balls3d work fine for you, including when they change colors? Sean On Sep 6, 2009, at 9:59 PM, Joerg Hoehne wrote: > Hi Sean, > for me the code for 3d display is not working anymore. Before the > update I was able to display a > scene but was not able to change colors. > After the update I get the exception: > > Exception in thread "AWT-EventQueue-0" > javax.media.j3d.RestrictedAccessException: Cannot > modify capability bits on a live or compiled object > at > javax.media.j3d.SceneGraphObject.setCapability(SceneGraphObject.java: > 101) > at > sim > .portrayal3d > .SimplePortrayal3D.setPickableFlags(SimplePortrayal3D.java:235) > at > sim > .portrayal3d > .SimplePortrayal3D.setPickableFlags(SimplePortrayal3D.java:227) > at > sim > .portrayal3d > .simple.PrimitivePortrayal3D.getModel(PrimitivePortrayal3D.java:167) > at > sim > .portrayal3d > .SparseFieldPortrayal3D > .wrapModelForNewObject(SparseFieldPortrayal3D.java:77) > at > sim > .portrayal3d > .SparseFieldPortrayal3D.updateModel(SparseFieldPortrayal3D.java:157) > at sim.portrayal3d.FieldPortrayal3D.getModel(FieldPortrayal3D.java: > 182) > at sim.display3d.Display3D.updateSceneGraph(Display3D.java:1209) > at sim.display3d.Display3D$12.run(Display3D.java:1152) > at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) > at java.awt.EventQueue.dispatchEvent(EventQueue.java:633) > at > java > .awt > .EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java: > 296) > at > java > .awt > .EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211) > at > java > .awt > .EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java: > 201) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: > 196) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: > 188) > at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) > > > After having a look inside the source code it looks like there some > slight differences between the > various XXXPortrayal3D classes that might not be intended, like the > missing call of > setShape3DFlags(Shape3D shape) where I guess (really a wild guess) > the problem might be > located. > > For a quick fix (it's late in my time zone) I rely only on > CubePortrayal3D and the code does not > throw any exception at the moment. Using the SpherePortrayal3D class > does crash the > application. I don't have the time to explore on this subject today > and tomorrow so you or Gabriel > may have a quick fix available. > > Regards, > Jörg