JavaScript实现,判断一个点是否在多边形内
2009-08-31 15:30
561 查看
//定义点的结构体
function point(){
this.x=0;
this.y=0;
}
//计算一个点是否在多边形里,参数:点,多边形数组
function PointInPoly(pt, poly) {
for (var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i)
((poly[i].y <= pt.y && pt.y < poly[j].y) || (poly[j].y <= pt.y && pt.y < poly[i].y))
&& (pt.x < (poly[j].x - poly[i].x) * (pt.y - poly[i].y) / (poly[j].y - poly[i].y) + poly[i].x)
&& (c = !c);
return c;
}
//调用
var pt=new point();
pt.x=34.32812720562833;
pt.y=108.93115997314453;
var _poly=[{x:1.1,y:1.1},{x:3,y:1},{x:6,y:4},{x:2,y:10},{x:1.1,y:1.1}];
var xx=PointInPoly(pt,_poly);
alert(xx);
function point(){
this.x=0;
this.y=0;
}
//计算一个点是否在多边形里,参数:点,多边形数组
function PointInPoly(pt, poly) {
for (var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i)
((poly[i].y <= pt.y && pt.y < poly[j].y) || (poly[j].y <= pt.y && pt.y < poly[i].y))
&& (pt.x < (poly[j].x - poly[i].x) * (pt.y - poly[i].y) / (poly[j].y - poly[i].y) + poly[i].x)
&& (c = !c);
return c;
}
//调用
var pt=new point();
pt.x=34.32812720562833;
pt.y=108.93115997314453;
var _poly=[{x:1.1,y:1.1},{x:3,y:1},{x:6,y:4},{x:2,y:10},{x:1.1,y:1.1}];
var xx=PointInPoly(pt,_poly);
alert(xx);
相关文章推荐
- JavaScript实现,判断一个点是否在多边形内
- 判断一个点是否在多边形内部 [2] 射线法实现
- JavaScript判断一个URL链接是否有效的实现方法
- javascript 判断一个点是否在多边形内(向量的使用)
- javascript判断两个IP地址是否在同一个网段的实现思路
- JavaScript判断一个URL链接是否有效的实现方法
- javascript判断两个IP地址是否在同一个网段的实现思路
- 计算一个点是否在多边形里 JavaScript实现(未测试)
- 判断一个点是否在多边形内部,射线法思路,C#实现
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
- java实现判断一个经纬度坐标是否在一个多边形内(经自己亲测)
- 判断一个点是否在多边形内部 - 射线法Scala实现
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
- 判断一个点是否在多边形内部 [2] 射线法实现
- javascript 判断一个数字是否为质数实现方式若干 by FungLeo
- javascript 如何判断元素是否包含一个特定的类,hasClass函数的实现
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
- 点在多边形内算法,C#判断一个点是否在一个复杂多边形的内部
- 《剑指offer》-实现一个函数用来判断字符串是否表示数值(包括整数和小数)
- opencv中如何判断一个点是否在一个多边形中