When getting the PickIntersecetions from a PickResult returned from using a
PickBounds shape, the following exception is thrown:

java.lang.NullPointerException
        at
com.sun.j3d.utils.picking.PickIntersection.setPointCoordinatesVW(PickIntersection.java:367)
        at com.sun.j3d.utils.picking.PickResult.intersectTri(PickResult.java:966)
        at com.sun.j3d.utils.picking.PickResult.intersectTA(PickResult.java:1211)
        at com.sun.j3d.utils.picking.PickResult.intersect(PickResult.java:758)
        at
com.sun.j3d.utils.picking.PickResult.generateIntersections(PickResult.java:600)
        at
com.sun.j3d.utils.picking.PickResult.getClosestIntersection(PickResult.java:417)
        ...

This happens with any type of bounds object (BoundingSphere, BoundingBox,
or BoundingPolytope).

The following code should demonstrate this behavior:

public static void doPick(BranchGroup bg)
{
    PickTool picker =  new PickTool(bg);
    picker.setMode(PickTool.GEOMETRY_INTERSECT_INFO);
    PickBounds pickBounds = new PickBounds(new BoundingSphere(new
Point3d(),0.25f));
    picker.setShape(pickBounds,new Point3d());
    PickResult result = picker.pickClosest();
    if (result != null)
    {
       PickIntersection intersection = result.getClosestIntersection(new
Point3d()); // throws Exception here
    } // if
} // doPick()

The BranchGroup should, of course, have something in it to collide with.

===========================================================================
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".

Reply via email to