views:

496

answers:

3

Hi,

Now i m Working on 3d . In that I need to find intersection of triangle with other triangle. How to find it. Please Help.

+2  A: 

Googling revelead this. I think it explains this in detail!

Aviator
+2  A: 

This paper describes one implementation:

http://knight.temple.edu/~lakaemper/courses/cis350%5F2004/etc/moeller%5Ftriangle.pdf

Note that there are different techniques depending on whether you want to know the point/segment where the intersection occurred, or just tell whether an intersect happened. This paper will give you the line segment representing the intersection.

MichaelM
+2  A: 

There's a good paper by Devillers et al -- (yes, did a google search, but the search keywords are important...)

Anyway, their point (compared to the Moeller paper in MichaelM's answer) is that you really should get your combinatorial information by doing determinants of selected groups of 4 points (the paper describes how). This avoids computing intermediate values that can be problematically inconsistent, and which probably won't actually be any faster...

You can look at these determinants as figuring out whether the tetrahedron formed by the 4 points is right-handed, left-handed, or degenerate (i.e., planar). This value also determines whether any one of the 4 points is on one side or the other of the plane formed by the other three, and whether the (directed) line formed by any two of the 4 is on one side or the other of the line formed by the other two.

To make a long story short, doing the determinant thing makes your math more robust, and if you pay attention, you can usually convert algorithms that didn't initially do the determinant thing into ones that do. Or, you could just read the paper.

comingstorm