如何判断一个点是在一直线的左还是右,急!!

解决方案 »

  1.   

    如果点的坐标是(x, y)根据点的y坐标在直线上求一点p(x1, y)
    比较x和x1,
    if (x > x1)
    {
      // 在右边
    }
    else if (x == x1) 
    {
      // 在直线上
    }
    else
    {
      // 在直线左边
    }
      

  2.   

    假设 你的点坐标为X Y
         你的线的两头坐标为 X1 Y1
                            X2 Y2
    if x-x1>(x2-x1)/2 //gight
    else //left== 就是在线中间 不能这么巧吧?呵呵
      

  3.   

    记你直线上两个固定点a和b
    空间点c
    abc组成一个三角形,
    利用三角形面积计算公式:
    .    1   | a.x b.x |    | b.x c.x |    | c.x a.x |
    .s = - *(|         | +  |         | +  |         |)
    .    2   | a.y b.y |    | b.y c.y |    | c.y a.y |这个表达式的正负数值,可以区分c位于ab直线的哪一侧
    如果abc是正的,表示三点逆时针排列,否则是顺时针排列,等于0是共线的通过这个原理可以判断位于哪一侧