Can Java3D do this?
Am completely new to Java3D. Wanted to know:
1. If Java3D provides API for calculating the intersections of
finite as well as infinite...
planes as well as lines and....
rendering of the 2D projections of these intersections
on to the viewing plane?
2. If yes, can someone kindly name one or two classes that I can use as leads for getting started? A sample would be *very* helpful.
3. If no, is anyone aware of any open-source package that lets you do the above?
Thanks.
PS: After quickly flipping thru the Java3D tutorial, doesn't look like it has what I need!
If Java3D provides API for calculating the intersections of finite as well as infinite...planes as well as linesWhat kind of result are you looking for?regards
> If Java3D provides API for calculating the
> intersections of finite as well as infinite...planes
> as well as lines
>
> What kind of result are you looking for?
Well something like the following:
1. Plane-Plane intersection
* ability to specify each of the 2 Planes in any of the various plane forms,
* if the above Planes are non-parallel, the returning of the 3D Line object, null otherwise,
* clipping of the above Line object via 2 Planes or via 2 Lines (or via 1 Plane and 1 Line) (provided, again, intersections occur) and the returning of the resulting 3D end-points
* etc
This is what I need in the context of my current problem. Thus, an API that supports the above and similar things in general. For example, each of the above entities could be infinite (as they are in typical math equations), or finite. That is, 2 infinite lines may intersect, but their respective segments may not. So... an API which lets you query/compute all of these things and throws the right exceptions, yields the right answers in the right forms.
Other examples, I can think of...
* testing if a point inside a 3D polygon
* testing if a point is inside a regular solid
* intersection of a line with a regular solid
* intersection of a plane with a regular solid
* intersection of a plane with a regular solid and the resulting cross-section
* etc
You might be looking for something like the TGS library, but I don`t nknow of a java implementation.
http://www.andrewaye.com/tgs_collision.html
there is a link farm at
http://www.realtimerendering.com/int/
that deals with 3D intersections if TGS doesn`t look likely.
regards
> 1. Plane-Plane intersection
you can code the math in java from the following web site:
http://local.wasp.uwa.edu.au/~pbourke/geometry/planeplane/
> Other examples, I can think of...
> * testing if a point inside a 3D polygon
> * testing if a point is inside a regular solid
> * intersection of a line with a regular solid
> * intersection of a plane with a regular solid
> * intersection of a plane with a regular solid and
> the resulting cross-section
> * etc
depending on your definition of "regular" you can have many solutions such as do you allow concave edges, inside holes, through holes etc.
but, these things are well studied and you can even find java codes for these from Geometric Tools for Comp Graphics by Philip Schneider and Dave Eberly.
it seems that you need more than what Java3D offers. i dont think that Java3D does spatial analysis like point in polygon/solid etc. you may think about using a database that supports geometric operations.
hope these help,
best regards,
baris
Baris and 'messengers' -- your replies were very helpful. Thank you both!Having gone thru the online contents of 'Geometric Tools', looks like this is the one book I should have bought long time back!
> Baris and 'messengers' -- your replies were
> very helpful. Thank you both!
>
> Having gone thru the online contents of 'Geometric
> Tools', looks like this is the one book I should have
> bought long time back!
you are most welcome.
it is a very helpful book.
Thanks to Dave and Philip.
best
baris