首页 > 解决方案 > 将 Leaflet Geojson 图层转换为 Leaflet 矩形矢量的最佳方法

问题描述

我正在开发一个 Leaflet 地图应用程序,该应用程序允许用户绘制形状图层并从后端加载形状图层。用户可以随意添加、编辑和删除形状图层。

当我想确保绘制层和加载层之间的兼容性时,就会出现问题。绘制的图层被创建为多边形矢量图层。另一方面,加载的图层被创建为 Leaflet geojson 图层。

两种类型的层都有非常不同的数据结构。因此,在获取数据和编辑图层时存在兼容性问题。例如,Leaflet.Edit 工具可以轻松编辑多边形矢量图层,但当地图上有 Geojson 图层时会变得无响应。

此外,形状特征可以很容易地在多边形矢量图层中检索,通常是从顶层检索。

{  
   /** some other entries **/
   "feature":{  
      "properties":{  
         "Name":"rectangle-9d3jtxlr99",
         "Description":"",
         "Tag":"",
         "id":"rectangle-9d3jtxlr99"
      }
   }
}    

另一方面,对于 geojson 层来说,获取形状特征要麻烦得多。

{  
   "_layers":{  
      "2998":{  
         /** other stuff **/
         "feature":{  
            "properties":{  
               "Name":"rectangle-xugcym9x4i",
               "Description":"",
               "Tag":"",
               "id":"rectangle-xugcym9x4i"
            },
            "geometry":{  
               "type":"Polygon",
               "coordinates":[  
                  /** list of coordinates **/
               ]
            },
            "type":"Feature"
         },
      }
   },
}

我认为将 Geojson 图层转换为多边形矢量图层可能会解决这个问题。是否有任何第三方 Leaflet 插件可以将 Geojson 图层转换为多边形矢量图层?

标签: javascriptleafletgeojsonleaflet.draw

解决方案


推荐阅读