/**
* 判断由x3, y3定义的点是否在由x1, y1 和 x2, y2定义的直线上(不是线段)?
* @param x1 - 直线的第一个点的x坐标
* @param y1 - 直线的第一个点的y坐标
* @param x2 - 直线的第二个点的x坐标
* @param y2 - 直线的第二个点的y坐标
* @param x3 - 要判断的点的x坐标
* @param y3 - 要判断的点的y坐标
* @param delta - 误差范围
* @return true or false.
*/
ifPointOnLine(x1, y1, x2, y2, x3, y3, delta) {
var xa = x2 - x1;
var ya = y2 - y1;
var xb = x3 - x1;
var yb = y3 - y1;
return (
Math.abs(yb / xb - ya / xa) <= delta &&
Math.min(x1, x2) <= x3 &&
Math.max(x1, x2) >= x3 &&
Math.min(y1, y2) <= y3 &&
Math.max(y1, y2) >= y3
);
},
下一期更新内容:怎么判断一个点存在哪个多边形内。