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.bt68f.cn/reader/download/detail201802017.html --> <link href='http://www.bt68f.cn:9000/bigemap.js/v2.1.0/bigemap.css' rel='stylesheet' /> <link href="http://www.bt68f.cn/Public/css/button.min.css" rel="stylesheet"> <!-- JS地址請使用: http://localhost:9000/bigemap.js/v2.1.0/bigemap.js --> <script src='http://www.bt68f.cn:9000/bigemap.js/v2.1.0/bigemap.js'></script> <!-- 引入加載KML的JS插件 --> <script type="text/javascript" src="http://www.bt68f.cn/mapoffline/js/togeojson.js"></script> <style> body { margin: 0; padding: 0; } #map { position: absolute; top: 0; bottom: 0; width: 100%; } .tool{ position: absolute; z-index: 10; right: 10px; top:60px; } .info{ position: fixed; top:40px; color: #8a6d3b; z-index: 99; margin: 0; background-color: #fcf8e3; border-color: #faebcc; left: 0; right: 0; text-align: center; } </style> <title>切換圖層</title> </head> <body> <p class="info"> 數據保存在本地,刷新會消失,僅僅用作測試 </p> <p class="tool"> <a id="satellite" class="button button-tiny button-rounded button-primary" href="javascript:void (0);">導入KML</a> <a id="export" class="button button-tiny button-rounded button-primary" download="geojson.geojson" href="javascript:void (0);">導出GeoJSON</a> <input type="file" accept=".kml" style="display: none" id="upload"> </p> <div id='map'></div> <script src="http://www.bt68f.cn/Public/common/js/jquery.min.js"></script> <script type="text/javascript">// 軟件配置信息地址,軟件安裝完成之后使用本地地址,如:http://localhost:9000 BM.Config.HTTP_URL = 'http://www.bt68f.cn:9000'; // 在ID為map的元素中實例化一個地圖,并設置地圖的ID號為 bigemap.baidu-map,ID號程序自動生成,無需手動配置,并設置地圖的投影為百度地圖 ,中心點,默認的級別和顯示級別控件 var map = BM.map('map', 'bigemap.zhongkexingtu', { center: [ 30,104], zoom: 3, zoomControl: true, attributionControl:false, preferCanvas: true,//適用于數據量大時 地圖反應速度加快 }); var geo; //創建一個谷歌衛星圖層 ,具體API詳情請參見 :http://www.bt68f.cn/offlinemaps/api/#tilelayer $('#upload').on('change',function () { var file=this.files[0]; var extension=file.name.split('.'); var name=extension[0]; extension=extension.pop(); if (extension!=='kml'){ alert('只能是KML格式'); return; } var reader=new FileReader(); reader.readAsText(file); reader.onload=function () { var dom= (new DOMParser()).parseFromString(this.result, 'text/xml'); var geojsonFeature=toGeoJSON.kml(dom); var blob=new Blob([JSON.stringify(geojsonFeature)]); var href=URL.createObjectURL(blob); $('#export').prop('href',href); $('#export').prop('download',`${name}.geojson`); geo=BM.geoJSON(geojsonFeature,{ style: function (feature) { // return {color: feature.properties.stroke}; } }).addTo(map); map.fitBounds(geo.getBounds()); } }); $('#satellite').on('click',function () { $('#upload').click(); }); </script> </body> </html>