Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Point in triangle testing

  1. Jul 8, 2006 #1

    eXt

    User Avatar

    Hi, how do I test if a point is inside a triangle? The point is assumed to be in the triangle's plane.
     
  2. jcsd
  3. Jul 8, 2006 #2

    HallsofIvy

    User Avatar
    Staff Emeritus
    Science Advisor

    How are you given the triangle? If you are given the lines that form the sides of the triangle and the vertices, determine if the point lies on the same side of the line as the opposite vertex.

    For example, it the three sides of the triangle lie on x+ y= 4, x= 0, and y= 0. Then the three vertices (solving each pair of equations) are (0,0), (4,0) and (0,4). Is (3,2) inside the triangle? If we substitute the point (0,0) into x+ y= 4 we get 0+ 0= 0< 4 but if we substitute (3,2) we get 3+ 2= 5> 4. No, (3,2) is not on the same side of x+y= 4 as (0,0) and so cannot be inside the triangle.

    Is (1,1) inside that triangle? 1+ 1= 2< 4 so (1,1) is on the same side of x+y= 4 as (0,0). The vertex "opposite" y= 0 is (0,4) which has y= 4> 0.
    (1,1) has y= 1> 0 so (1,1) is on the same side of y=0 as (0,4). The vertex "opposite" x= 0 is (4, 0) which has x= 4> 0. (1,1) has x= 1> 0 so (1,1) is on the same side of x=0 as (4,0). Since (1,1) is on the same side of each line as the opposite vertex. Yes, (1,1) is inside the triangle.

    This isn't really linear or abstract algebra so I am moving it to General Math.
     
    Last edited: Jul 8, 2006
  4. Jul 8, 2006 #3

    learningphysics

    User Avatar
    Homework Helper

    I think it could be mentioned as a linear algebra question. If the coordinates of 3 points are given... then you can give the coordinates of an arbitrary point in the plane using one of these points and a linear combination of the 2 vectors from this point to the other 2 points. Use this to determine whether the point is inside the triangle. What linear combinations occur for points inside the triangle?
     
  5. Jul 8, 2006 #4

    eXt

    User Avatar

    What I'm trying to accomplish is to find if a point is within a geometric room consisting of several triangles. I am going to use Jordans curve theorem to find if it is so what I do is the following:
    1) Cast a ray from the point (in an arbitrary direction) agains each plane the triangles are in.
    2) If the ray intersects with the plane I calculate the point in the plane.
    3) Now I need to figure out if this point is within the triangle or just in the plane.
    4) And last, count each time the ray intersects with a triangle.

    So, what I know about each triangle is it's 3 coordinates.

    I've read about the following method but I'm not sure if its good or not:
    Calculate a vector from the point to each corner of the triangle, if the sum of the angles between this vectors equals 360 degrees the point is inside.
     
  6. Jul 8, 2006 #5

    learningphysics

    User Avatar
    Homework Helper

    What do you think of the method I posted?
     
  7. Jul 9, 2006 #6

    eXt

    User Avatar

    I'm not exactly sure I understand it, could you draw a nice little image to visualize it?
     
  8. Jul 9, 2006 #7

    0rthodontist

    User Avatar
    Science Advisor

  9. Jul 9, 2006 #8

    eXt

    User Avatar

    The sum of a and b shoud not exceed 1?
     
  10. Jul 10, 2006 #9

    0rthodontist

    User Avatar
    Science Advisor

    Yes, and also they must both be greater than 0.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?



Similar Discussions: Point in triangle testing
  1. Point of triangle (Replies: 11)

  2. Point In Triangle (Replies: 3)

  3. Excenter of triangle (Replies: 1)

Loading...