测试一条线是否在三角形内部含有一个点

3
如何测试一条线是否有一个点在三角形内(不在边缘上)?(全部在2D平面内)
目前我考虑这样做:
1. 将该线和三角形的每条边定义为Ax + By + C = 0,并设置x范围。
2. 检查该线是否与三角形中的任何一条边相交。
3. 如果是,则检查该交点是否不在该线的末端。
有更好的方法吗?
1个回答

9
  1. 将三个点代入直线方程中,例如,如果直线方程为4x − 3y + 2 = 0,三角形的顶点分别为(2, 1)、(4, 3)和(0, 5),我们得到的值分别是7、9和-13。

  2. 检查所有的值是否同号。如果是,则直线不与三角形相交。在上面的例子中,直线与三角形相交。

    http://www.imgftw.net/img/743059947.png


@thomas:是的。举个例子,想象一下表面 z = 4x - 3y + 2... 有关详细信息,请尝试在 http://math.stackexchange.com/ 上提问。 - kennytm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接