首页 > 代码库 > 百度地图 判断marker是否在多边形内
百度地图 判断marker是否在多边形内
昨天画了圆形,判marker是否存在圆形内。今天来画多边形,判断marker在多边形内。
百度地图API覆盖物多边形类
http://developer.baidu.com/map/reference/index.php?title=Class:%E8%A6%86%E7%9B%96%E7%89%A9%E7%B1%BB/Polygon
http://developer.baidu.com/map/reference/index.php?title=Class:%E8%A6%86%E7%9B%96%E7%89%A9%E7%B1%BB/PolygonOptions
和前一篇差不多的,改变的地方就是画矩形,判断点在矩形内的js;
// 画可编辑矩形 var mPoint=new BMap.Point(e.lng,e.lat);// 得到中心点坐标 var pStart = new BMap.Point(e.lng,e.lat); var pEnd = new BMap.Point((e.lng+0.1),(e.lat+0.1)); var polygon = new BMap.Polygon([ new BMap.Point(pStart.lng,pStart.lat), new BMap.Point(pEnd.lng,pStart.lat), new BMap.Point(pEnd.lng,pEnd.lat), new BMap.Point(pStart.lng,pEnd.lat) ], {strokeColor:"blue", strokeWeight:1, strokeOpacity:0.5}); map.addOverlay(polygon); polygon.enableEditing();
判断点在多边形内
for(var i=0;i<overlays.length;i++){ //判断 覆盖物为标注的并且是在圆形区域内部的 if(overlays[i].uQ == "Marker"){ //判断marker是否在多边形内 if(BMapLib.GeoUtils.isPointInPolygon(overlays[i].getPosition(), polygon)){ maker_arr.push(overlays[i]); maker_id.push(overlays[i].id); } } }
百度地图 判断marker是否在多边形内
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。