2017-03-01 35 views
0

我們使用的是MapboxGL,並且需要根據位置定義TileJSON圖層樣式。我們希望使用功能的經緯度過濾該樣式。基於特徵經緯度的TileJSON圖層樣式

例如,假設我們要過濾赤道以北的所有公園,並對它們進行不同的設計。

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

我試過latitude並猜測其他鍵屬性名稱沒有成功。我知道多邊形的特徵不僅僅是一個點,而且希望有一個質心或者其他一些可能有用的值。

這是MapboxGL支持的功能嗎?如果是這樣,我們將過濾哪個屬性名稱,以及在哪裏可以找到其他屬性的列表?

+0

只是出於好奇,你試圖達到什麼半球依賴的樣式? –

+1

史蒂夫,這是一個人爲的例子,但我們遇到的問題是,在某些地區我們的數據密度太高,所以我們想調整經緯度邊界框內這些區域的不透明度或顏色。我們控制來自我們自己的磁貼服務的數據,因此我們可能需要預先計算這些數據並將其他元數據與這些功能一起傳遞,然後使用此新屬性進行過濾。我只是希望,除了兩個記錄以外,可能還有一些額外的特殊財產。 – Adolfo

回答

0

only two special properties$id$type。因此,要對所描述的排序進行篩選,您必須將屬性直接放在源數據上。 (從您的問題來看,您是否使用Mapbox數據或您自己的數據並不清楚)。

要了解Mapbox數據上有哪些屬性,只需在添加圖集視圖中單擊一個多邊形,它就會顯示所有屬性。