【问题标题】:Fast way to get relative position of point and line获取点和线相对位置的快速方法
【发布时间】:2015-05-26 17:46:19
【问题描述】:

我有一条线和点 (2D)。

好的,使用 Paul Bourke 公式我可以得到点到直线的正交投影的距离。

(我也可以知道解决方案是否在线段内。)

好的,但我想知道该点相对于线方向是在右侧还是左侧。

我可以使用得到直线和正交直线之间的角度 Math.acos (crossproduct/moduleProduct) 但叉积为零,所以我不能使用它...

有什么想法吗?必须使用三角法,或者是否有使用矢量数据的技巧? 钍。提前,

【问题讨论】:

标签: math geometry


【解决方案1】:

您可以计算二维向量叉积并查看其符号。
给定两个向量 v1 和 v2,您可以将二维叉积计算为 (v1.X*v2.Y) - (v1.Y*v2.X)
如果您有点(x, y) 和线(x0, y0)-(x1, y1),那么((x-x0)*(y1-y0)) - ((y-y0)*(x1-x0)) 是二维向量叉积。如果该点在左半平面内,则为负数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 2016-04-30
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多