【发布时间】:2012-08-08 03:02:18
【问题描述】:
我将如何编写这个函数?任何例子表示赞赏
function isPointBetweenPoints(currPoint, point1, point2):Boolean {
var currX = currPoint.x;
var currY = currPoint.y;
var p1X = point1.x;
var p1y = point1.y;
var p2X = point2.x;
var p2y = point2.y;
//here I'm stuck
}
【问题讨论】:
-
下面有一些很好的答案,但我想我会指出您应该注意浮点精度问题。无论您使用哪种方法,在测试两个不同的斜率是否相同时,您都可能需要允许少量错误。
-
@Adrian McCarthy:这是基于斜率的方法的主要问题。斜率随角度变化不均匀:线越接近垂直,斜率增长越快(更不用说垂直和几乎垂直线的特殊情况)。根本没有好的基于斜率的策略。我会不惜一切代价避免使用基于斜率的方法。