I'm not sure if this is the intended behavior, but I can't see why it would
be designed that way.

The problem is this:

If I "pick" a quad primitive from a QuadArray geometry using the following
code, it calculates the vertices normally and the values are correct (I
checked several times).

Point3d[] vertices = pickIntersection.getPrimitiveCoordinates();

If I only need the closest vertex, however, and use :

Point3d closest = pickIntersection.getClosestVertexCoordinates();

it will not return the correct value. It appears to use the indices of the
intersected quad (0 - 3) to identify the closest vertex. The trouble is that
the getClosestVertexCoordinates method then returns the coordinates of the
point that occupies index i in the entire GeometryArray, not the coordinates
of the point occupying index i in the primitive quad that was picked.
Therefore the closest vertex identified will ALWAYS be in the first quad of
the geometry.

I believe the getClosestVertexIndex() will also only return a value between
0 and 3 for quads.  Is this also expected behavior??


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