许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Leaflet加载ArcGIS图层:使用esri-leaflet.js的identify方法实现点击获取保护区和面积

Leaflet加载ArcGIS图层:使用esri-leaflet.js的identify方法实现点击获取保护区和面积

阅读数 19
点赞 0
article_banner

1. 实现的功能效果图如下图所示:

2.需要用到esri-leaflet.js,然后放到项目中

   

npm install esri-leaflet --save

3. 先保护区放到地图上

var envLayer = L.esri.dynamicMapLayer({ url: "mapserver的url", opacity: 0.8, transparent: true }); map.addLayer(this.envLayer);

4. 地图点击 事件 ,图层获取,并显示到地图上

  注:代码中visible是发布的mapserver服务中的层级,如下图所示,用的是图层2保护区的

 var selectedFeature; var queryCoordinates; map.on('click', function (e) {      if (selectedFeature) {        map.removeLayer(selectedFeature);      };       queryCoordinates = e.latlng;      envLayer.identify().at([e.latlng.lat, e.latlng.lng])        .on(map)        .layers("visible:2")        .tolerance(0)         .run(function (error, results) {                     selectedFeature = L.geoJson(results, {     //获取边界并定义            style: {              weight: 2,              opacity: 1,              color: 'red',              dashArray: '4',              fillOpacity: 0.2,              fillColor: '#FFEDA0'            },            onEachFeature: ((feature, layer) => { //对每个小块进行定义              var content = "<div style='width:180px; max-height:260px;overflow-y:auto'>";              console.log(feature);              delete feature.properties.bbox;               content = content + "<b>保护区名称:</b> " + feature.properties["保护区名称"] + "<br>";              content = content + "<b>功能分区:</b> " + feature.properties["功能分区"] + "<br>";              content = content + "<b>面积:</b> " + (parseInt(feature.properties["Shape_Area"]) / 1000 / 1000).toFixed(2) + "平方公里<br>";              content += "</div>";               var popup = L.popup()                .setLatLng(queryCoordinates)                .setContent(content)                .openOn(map);               layer.bindPopup(content);              })          }).addTo(map);                    map.fitBounds(selectedFeature.getBounds());          });     });    });


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空