簡體   English   中英

Mapbox - 無效的圖塊順序

[英]Mapbox - invalid tile order

我正在我自己的磁貼服務器上工作。 我在以正確的順序顯示圖塊時遇到了奇怪的問題。 磁貼是使用 OSM 數據創建的。 當我使用 tileserver-gl-light 作為圖塊服務器時,一切似乎都沒問題,但是當我嘗試通過我自己的服務器提供圖塊時,它們在縮放后不會以正確的順序出現。 我使用相同的頁面來渲染地圖,所以我認為問題與服務器有關。 瓷磚看起來像這樣(縮放 1):

在此處輸入圖片說明

我很感激任何幫助。 最好的問候,馬雷克

我不知道原因,但在從 mbtiles 數據庫獲取數據之前需要更正 y 軸值。

如果您的磁貼網址如下所示: http://host:port/data/{z}/{x}/{y}您需要在從數據庫中獲取 pbf 格式的磁貼數據之前重新計算 y 值:

y = pow(2, z) - 1 - y

mbtiles 規范中沒有提到這一點,但我在Tileserver-PHP 源代碼中找到了解決方案

將圖層添加到 mapbox-gl 時將方案設置為“tms”,如下所示:

    map.addLayer({
      id: 'tms_layer',
      type: 'raster',
      source: {
        type: 'raster',
        tiles: [
          'https://tile-server/{z}/{x}/{y}.png'
        ],
        scheme: 'tms'
      },
    });

發生這種情況是因為某些切片服務器使用 OSGeo 規范方案。

更多信息在這里: https : //docs.mapbox.com/mapbox-gl-js/style-spec/#sources-raster-scheme

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM