Hi,
the following capabilities have to be set, if
- PickTool.GEOMETRY_INTERSECT_INFO -
intersection tests are applied:
geometry_array.setCapability(GeometryArray.ALLOW_FORMAT_READ);
geometry_array.setCapability(GeometryArray.ALLOW_COUNT_READ);
geometry_array.setCapability(GeometryArray.ALLOW_COORDINATE_READ);
geometry_array.setCapability(GeometryArray.ALLOW_NORMAL_READ); (?)
Just try,
Marc
Desiree Hilbring schrieb:
>
> Hi,
> I managed to get the Java3D 1.2 Pick funktionaliy to work, but it is still
> not working with Polygons I create with the help of GeometryInfo-Objects.
> I get the following capability set exception:
>
> javax.media.j3d.CapabilityNotSetException: Shape3D: no capability to allow
> inter
> sect
> at javax.media.j3d.Shape3D.intersect(Shape3D.java:434)
> at
> com.sun.j3d.utils.picking.PickTool.pickGeomAllSorted(PickTool.java:67
> 2)
> at
> com.sun.j3d.utils.picking.PickTool.pickGeomClosest(PickTool.java:736)
>
> at
> com.sun.j3d.utils.picking.PickTool.pickClosest(PickTool.java:512)
> at
> app.gis3D.PickObjectBehavior.updateScene(PickObjectBehavior.java:115)
>
> at
> com.sun.j3d.utils.picking.behaviors.PickMouseBehavior.processStimulus
> (PickMouseBehavior.java:153)
> at
> javax.media.j3d.BehaviorScheduler.doWork(BehaviorScheduler.java:167)
> at javax.media.j3d.J3dThread.run(J3dThread.java:256)
>
> I tried to set the capabilites with the following:
>
> ginfo.setCoordinates(coordsccw);
> ginfo.setStripCounts(stripCounts);
>
> Triangulator tr = new Triangulator();
> tr.triangulate(ginfo);
>
> NormalGenerator ng = new NormalGenerator();
> ng.generateNormals(ginfo);
>
> Stripifier st = new Stripifier();
> st.stripify(ginfo);
>
> // Set Appearance
> Appearance app = createAppearance();
> PolygonAttributes polyAppear = new PolygonAttributes();
> polyAppear.setCullFace(PolygonAttributes.CULL_NONE);
> app.setPolygonAttributes(polyAppear);
>
> -? ginfo.getGeometryArray().setCapability(Geometry.ALLOW_INTERSECT);
>
> // Create Shape3D
> Shape3D shape = new Shape3D();
> shape.setAppearance(app);
> shape.setGeometry(ginfo.getGeometryArray());
> shape.setCapability(Shape3D.ALLOW_APPEARANCE_READ);
> shape.setCapability(Shape3D.ALLOW_APPEARANCE_WRITE);
> -? shape.setCapability(Geometry.ALLOW_INTERSECT);
>
> sf3d.addChild(shape);
>
> But it is not working. So what now?
> I really appreciate your help, thanks Desiree
>
> o------------------------------------------------------------------------o
> | Desiree Hilbring Institut fuer Photogrammetrie und Fernerkundung |
> | Universitaet Karlsruhe, Germany |
> | |
> | email: [EMAIL PROTECTED] |
> | # 0721 6083676 |
> o------------------------------------------------------------------------o
>
> ===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
> of the message "signoff JAVA3D-INTEREST". For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
--
Marc Nienhaus
Software Engineer (Computer Graphics)
echtzeit AG. Reality Business.
Gottfried-von-Cramm Weg 35-37
14193 Berlin
fon 49 30 884 586 162
fax 49 30 884 586 22
www.echtzeit.de
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".