可能重复:
如何判断一个点是否靠近某条线?
//Returns the point on the line traced from start to end which
//comes nearest to 500,000, 500,000. The points are scaled between
//1,000,000 and 0 from their original fp types.
Point closestToCentre(Point start, Point end);
有没有比逐个像素单步执行更快的方法?
能否有比我更敏捷的人展示他们的数学和几何才能呢?
_______编辑___________
谢谢Kris,这让我感到困惑:
[x; -a/bx-c/b]=[0; -c/b]-1/b[-b; a]x.
现在我明白了,它只是将向量(主要是y分量)分成两部分,这两部分组合起来得到相同的结果。然后我的旧部分分数脑细胞就兴奋了一分钟 :)
_______编辑_________
Jason Moore,感谢你的启发,以下是我正在做的事情,以图形方式呈现:
我希望您能更清楚地理解。____编辑______
因此,我可以合理地期望从中心垂直于我的样本线取一条线,并将其延伸,但如何确定它们何时相交? 我认为Kris的方程页面是正确的选择。如果你们都告诉我这是一个两步过程。现在只需要两个同时方程,所以我可能不需要Kris的推导。
____编辑____
无论好坏,我不知道,但作为搜索引擎的stackoverflow的优点已经向我展示了几种研究途径。主要是我喜欢这里的第一个解决方案: 点和线段之间的最短距离。
但为了自己证明这一点,我需要来自matti解决方案底部(但是倒数第二个)的链接:
http://www.topcoder.com/tc?d1=tutorials&d2=geometry1&module=Static
这个推导非常简单优雅,即使我也能够理解!
鉴于http://mathworld.wolfram.com/Point-LineDistance2-Dimensional.html。