BIGEMPA Js API示例中心
<!DOCTYPE html> <html> <head> <meta charset='UTF-8' /> <meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' /> <!-- 以下CSS地址请在安装软件了替换成本地的地址 CSS地址请使用: http://localhost:9000/bigemap.js/v2.1.0/bigemap.css 软件下载地址 http://www.bigemap.com/reader/download/detail201802017.html --> <link href='http://www.bigemap.com:9000/bigemap.js/v2.1.0/bigemap.css' rel='stylesheet' /> <!-- JS地址请使用: http://localhost:9000/bigemap.js/v2.1.0/bigemap.js --> <script src='http://www.bigemap.com:9000/bigemap.js/v2.1.0/bigemap.js'></script> <style> body { margin: 0; padding: 0; } #map { position: absolute; top: 0; bottom: 0; width: 100%; } </style> <title>Google Map Streets</title> </head> <body> <div id='map'></div> <script> // 软件配置信息地址,软件安装完成之后使用本地地址,如:http://localhost:9000 BM.Config.HTTP_URL = 'http://www.bigemap.com:9000'; // 在ID为map的元素中实例化一个地图,并设置地图的ID号为 bigemap.baidu-map,ID号程序自动生成,无需手动配置,并设置地图的投影为百度地图 ,中心点,默认的级别和显示级别控件 var map = BM.map('map', 'bigemap.zhongkexingtu', { center: [0, 0], zoom: 2, zoomControl: true,attributionControl:false }); var latlngs = [ [30, 102.68], [37, 108.43], [37.04, 118.2] ]; //创建多边形,并设置填充颜色 ,具体详细API请参见:http://www.bigemap.com/offlinemaps/api/#polygon var polygon = BM.polygon(latlngs, {color: '#369'}).addTo(map); // 让地图适配当前的线段 map.fitBounds(polygon.getBounds()); map.on('click',function(e){ var p=map.project([e.latlng.lat,e.latlng.lng]); var ps=latlngs.map(v=>{ return [map.project(v).x,map.project(v).y]; }); if(isIn([p.x,p.y],ps)){ alert('在内部'); }else{ alert('在外部'); } }); function isIn(a, b,c) { var d = a[0]; a = a[1]; var e = !1, f, h, k, l, m = b.length, n = 0; for (l = m - 1; n < m; l = n, n += 1) { var p = !1; f = b[n][0]; h = b[n][1]; k = b[l][0]; l = b[l][1]; if (f === d && h === a || k === d && l === a) return c ? !0 : !1; if (h < a === l >= a) { f = (k - f) * (a - h) / (l - h) + f; if (d === f) return c ? !0 : !1; p = d < f } p && (e = !e) } return e } </script> </body> </html>