【问题标题】:TileJSON layer style based on feature lat/long基于特征 lat/long 的 TileJSON 图层样式
【发布时间】:2017-03-01 19:43:03
【问题描述】:

我们正在使用 MapboxGL,并且遇到了基于位置定义 TileJSON 图层样式的需求。我们想使用要素的纬度和经度过滤该样式。

例如,假设我们要过滤赤道以北的所有公园并设置不同的样式。

...
{
    "id": "parks",
    "type": "fill",
    "source": "composite",
    "source-layer": "landuse",
    "filter": [
        "all",
        ["==", "class", "park"],
        [">", "latitude", 0],
   ],
    "layout": {...},
    "paint": {..}
},
...

我试过latitude 并猜测属性名称的其他键没有成功。我知道多边形特征不仅仅是一个点,而是希望有一个质心或其他可能有用的值。

这是 MapboxGL 支持的功能吗?如果是这样,我们将使用什么属性名称进行过滤,我们在哪里可以找到其他属性的列表?

【问题讨论】:

  • 只是出于好奇,您想要实现哪种半球相关样式?
  • 史蒂夫,这是一个人为的例子,但我们遇到的问题是在某些区域我们的数据密度太高,所以我们想在一个纬度内调整这些区域的不透明度或颜色/lon 边界框。我们控制来自我们自己的图块服务的数据,因此我们可能必须预先计算它并使用特征传递额外的元数据,然后使用这个新属性进行过滤。我只是希望除了记录在案的两个之外,可能还有一些额外的特殊属性。

标签: mapbox-gl mapbox-gl-js


【解决方案1】:

有only two special properties:$id和$type。因此,要对您描述的排序进行任何过滤,您必须将属性直接放在源数据上。 (从您的问题中不清楚您是使用 Mapbox 数据还是您自己的数据)。

要找出 Mapbox 数据的可用属性,您只需在添加瓦片集视图中单击一个多边形,它就会显示所有属性。

【讨论】:

    猜你喜欢
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多