i can't reproduce the bug with the
examples/PickTest/IntersectTest
i can only reproduce the bug with more complex
geometry :
GeometryInfo.POLYGON_ARRAY + triangulator +
recomputeIndice
the tesselation made by the triangulator generate some
flat triangles ("sliver triangles")and very small
triangles (maybe null triangle ?)
the bug occur when i pick this kind of triangle, or
near a vertex witch have a lot of edges
see the attached file.
thanks in advance for your help
regards
Renaud
--- Kelvin Chung <[EMAIL PROTECTED]> a �crit : > Hi
Renaud,
>
> The original bug is reproducible by
>
> examples/PickTest/IntersectTest
>
> and is fixed in v1.3 release so you should
> not able to reproduce this using the test.
>
> Although the stack trace is the same,
> the problem that you encounter is different.
> As you can see from the utility source code
> of PickIntersection,it did throws
> RuntimeException at
> double[] getInterpWeights()
>
> in
> case 3: // triangle
> if (!interpTriangle(0, 1, 2,
> coordinates, pt)) {
> throw new RuntimeException ("Interp
> point outside triangle");
> }
> break;
>
> which I think is
> pointCoordinatesVW;
>
> not initialize properly before
> pickIntersection.getPointCoordinates();
> invoke.
>
> Please send us a complete test case to take a look.
>
> Thanks.
>
> - Kelvin
> -----------------
> Java 3D Team
> Sun Microsystems Inc.
>
>
> R CM wrote:
> > Hi,
> > in the mailingListArchive( 07/02/2002) i've find a
> > mail post by Kelvin Chung
> > bug 4516752 - IntersectTest throws runtime
> exceptions
> > is fixed in the next v1.3 beta2 release.
> >
> > But I'm getting this error with J3d 1.3 (with jdk
> > 1.4.1)
> > I am getting the error "interp point outside
> > triangle" when I do a pick.
> > see my code and the output bellow.
> > it's not fixed or i'm doing some think wrong?
> >
> > thanks in advance.
> > Regards
> > Renaud
> >
> >
> > The code I am using to pick is this:
> >
> > x = event.getX();
> > y = event.getY();
> >
> > // Pick the closest node
> > pickCanvas.setShapeLocation(x, y);
> > Point3d eyePos =
> pickCanvas.getStartPosition();
> > PickResult pickResult = pickCanvas.pickClosest();
> >
> > if (pickResult != null){
> > PickIntersection pickIntersection =
> > pickResult.getClosestIntersection(eyePos);
> > Point3d intersectPt =
> > pickIntersection.getPointCoordinates();
> > .....
> > }
> >
> > the output :
> >
> > Exception occurred during Behavior execution:
> > java.lang.RuntimeException: Interp point outside
> > triangle
> > at
> >
>
com.sun.j3d.utils.picking.PickIntersection.getInterpWeights(PickIntersection.java:1467)
> > at
> >
>
com.sun.j3d.utils.picking.PickIntersection.getPointCoordinates(PickIntersection.java:1115)
> >
> >
> >
> >
>
___________________________________________________________
> > Do You Yahoo!? -- Une adresse @yahoo.fr gratuite
> et en fran�ais !
> > Yahoo! Mail : http://fr.mail.yahoo.com
> >
> >
>
===========================================================================
> > 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".
>
>
===========================================================================
> 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".
___________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en fran�ais !
Yahoo! Mail : http://fr.mail.yahoo.com
<<inline: Surf.jpg>>
