网站域名攻击,上海opencart网站建设,扬州工程信息网,北京做网站开发的公司百度地图JavaScript开源库#xff0c;是一套基于百度地图API二次开发的开源的代码库。目前提供多个lib库#xff0c;帮助开发者快速实现在地图上添加Marker、自定义信息窗口、标注相关开发、区域限制设置、几何运算、实时交通、检索与公交驾车查询、鼠标绘制工具等功能。
判… 百度地图JavaScript开源库是一套基于百度地图API二次开发的开源的代码库。目前提供多个lib库帮助开发者快速实现在地图上添加Marker、自定义信息窗口、标注相关开发、区域限制设置、几何运算、实时交通、检索与公交驾车查询、鼠标绘制工具等功能。
判断点是否在多边形内主要使用的GeoUtils类。它提供若干几何算法用来帮助用户判断点与矩形、 圆形、多边形线、多边形面的关系,并提供计算折线长度和多边形的面积的公式。 主入口类是GeoUtils。
引入JS封装库 script typetext/javascript src//api.map.baidu.com/api?v3.0ak3HGqGo***/scriptscript typetext/javascript src//api.map.baidu.com/library/GeoUtils/1.2/src/GeoUtils_min.js/script
构建HTML地图容器
div stylefloat:left;width:600px;height:500px;padding: 15px; idcontainer/div核心代码
var map new BMap.Map(container);var pt new BMap.Point(116.404, 39.915);map.centerAndZoom(pt, 16);map.enableScrollWheelZoom();//开启滚动缩放//电子围栏var pts [];var pt1 new BMap.Point(116.395, 39.910);var pt2 new BMap.Point(116.394, 39.914);var pt3 new BMap.Point(116.403, 39.920);var pt4 new BMap.Point(116.402, 39.914);pts.push(pt1);pts.push(pt2);pts.push(pt3);pts.push(pt4);var opts {fillColor: blue,fillOpacity: 0.3,strokeColor: blue,strokeStyle: dashed,strokeWeight: 1,strokeOpacity: 0.5}var ply new BMap.Polygon(pts, opts);map.addOverlay(ply);//地图监听事件map.addEventListener(click, function (e) {var x e.point.lng;var y e.point.lat;var newPoint new BMap.Point(x, y);var mkr new BMap.Marker(newPoint);map.addOverlay(mkr);//判断时间ptInPolygon(newPoint, ply);})var allOverlay map.getOverlays();console.log(allOverlay[0]);//点在多边形内function ptInPolygon(pt, ply) {var result BMapLib.GeoUtils.isPointInPolygon(pt, ply);if (result true) {$(#control).append(操作在电子围栏内br);} else {$(#control).append(超出电子围栏br);}}封装函数及优化 漏刻有时