传单层的定义

时间:2012-05-03 05:21:51

标签: leaflet

layerLeaflet Mapping Library中的确切含义是什么?

从概念上讲,对我来说,一个层将代表某种类型的特征或对象的单层;例如,表示基础水平图的所有图像区块将在单个图层上表示,表示美国状态的一组多边形可能位于各自的单独图层上。

具体来看L.GeoJSON.addGeoJSON(geojson),它会读出创建的每个新多边形都放在它自己的图层中(然后可能与你调用方法的图层合并?)。我的用例是我需要一次添加一个geoJSON对象,并希望确保我不会创建许多不必要的层(或者如果我是,如果这实际上是一件坏事)。

谢谢。

1 个答案:

答案 0 :(得分:27)

在Leaflet中,可以添加到地图的任何内容都是图层。所以多边形,圆形,标记,弹出窗口,瓷砖都是层。如果您希望将一组多边形视为单个图层,则可以在L.LayerGroup(或FeatureGroup)中组合图层。因此,您对图层的解释可能与Leaflet中L.LayerGroup建模的内容更好地匹配。

L.GeoJSON是一个从GeoJSON初始化的LayerGroup(特别是一个FeatureGroup)。使用addLayer将每个新多边形添加到L.GeoJSON LayerGroup,这是向LayerGroup添加任何内容(即图层)的方法。它不会为每个多边形创建新图层(除了已被视为图层的L.Polygon之外)。它只为GeometryCollection和MultiPoints创建新的FeatureGroups(LayerGroups),(我假设)是为了保留GeoJSON的结构。

如果要一次将geoJSON对象添加到同一个LayerGroup,只需调用L.GeoJSON.geometryToLayer转换GeoJSON对象,然后使用L.LayerGroup.addLayer将其添加到LayerGroup。