美文网首页
iClient for Leaflet之椭圆的简易绘制方法

iClient for Leaflet之椭圆的简易绘制方法

作者: SuperMap技术控 | 来源:发表于2021-12-16 08:54 被阅读0次

作者:Lily

背景

SuperMap iClient for JavaScript 9D客户端产品:Leaflet,OpenLayaers,MapboxGL,Classic。想必大家都有所了解,可能对于熟悉8c产品的同学来说,还是习惯用Classic,对于其他三款产品不是特别熟悉,但是有的时候项目需求又需要使用leaflet的功能,有些功能范例里面没有,就比较头疼,比如前两天就有人问如何用leaflet画椭圆,针对这个问题,leaflet并没有原生的绘制椭圆接口,所以绘制起来还是比较麻烦,下面我给大家介绍一种简易的绘制方法。

绘制方法

1.下载椭圆绘制插件
https://download.csdn.net/download/supermapsupport/10321709

2.调用leaflet接口
由于插件中需要用到leaflet的相关接口,所以必须先引用leaflet.js,插件才可以使用

3.引入插件

4.调用iclient for leaflet接口
要对接supermap iserver服务,还需要引用超图客户端产品包中带的iclient9-leaflet.js

5.添加地图
由于动态标绘只是渲染矢量数据,所以不能作为底图,我们需要在map上添加一个 TiledDynamicRESTLayer做为底图

var host = window.isLocal ? window.server : "http://support.supermap.com.cn:8090";
      var map, resultLayer,
          baseUrl = host + "/iserver/services/map-world/rest/maps/World",
          url = host + "/iserver/services/data-world/rest/data";
      map = L.map('map', {
          preferCanvas: true,
          crs: L.CRS.EPSG4326,
          center: { lon: 0, lat: 0 },
          maxZoom: 18,
          zoom: 2
      });
      L.supermap.tiledMapLayer(baseUrl).addTo(map);

6.调用绘制方法,并将结果绘制到地图上

//latlng:椭圆的位置;经纬度坐标
//radii:长半轴,短半轴;二维数组
//tilt:倾斜角度;度
//options:其他一些属性,如fill,startAngle,endAngle
L.ellipse(latlng, radii, tilt, options).addTo(map);

7.绘制结果

上图示例代码如下:
链接:https://pan.baidu.com/s/1ZtIVhfEbPAW1WzDoaO6AeQ 密码:eqi7

相关文章

网友评论

      本文标题:iClient for Leaflet之椭圆的简易绘制方法

      本文链接:https://www.haomeiwen.com/subject/mhwmfrtx.html