地图框 gl 绘制将名称添加到多边形



我正在玩mapbox,我想弄清楚的一件事是如何在我刚刚创建的多边形上设置名称。 我有一个要素集合,对于每个要素,我都有一个名称,但我无法弄清楚如何在面上显示名称。

通常,如果要在 Mapbox GL JS 地图中显示 GeoJSON 要素以及标签,则需要向地图添加两个引用 GeoJSON 源的图层。一个图层的类型为fill以显示面本身,另一个图层的类型为symbol,用于显示标注的文本。

此示例演示如何添加包含 GeoJSON 源中Point要素名称的text-fieldsymbol图层。如果您有要显示名称的每个面的坐标,则可以按照此示例在添加具有fill图层的面后添加名称。

否则,您将需要计算要在其中添加名称的每个面的质心坐标。为此,您可以在FeatureCollection中的每个面上使用 Turf 的centroid方法来生成所述坐标,并将表示每个要素名称的symbol图层与生成的坐标一起添加。

最新更新