mapbox-gl-js v2.0 新功能預覽新特性


速覽新特性

v2 版本添加的主要是支持地形、自定義天空、相機API,以及性能方面的提升。

  • 例子:添加3D地形:v1.x 中的各種圖層可以和地形一起使用,新的 Mapbox 柵格數據API服務提供了地形服務。
  • 例子:天空圖層:在傾角(pitch)較大時,Mapbox v2 添加了一個天空圖層,這個圖層填充了地平線處的天空樣式。可以用漸變顏色填充,也可以用散射光來模擬。
  • 例子:Camera API:v2 提供了一個較為底層的相機接口,官方名稱叫做 FreeCamera API,允許用戶添加各種相機動畫。
  • 性能提升:加載時間最多減少50%;官方測試中,中間的地圖加載時間縮短了 30%;優化了資源加載和任務調度,以便CPU算力用於用戶自己的代碼

遷移至 v2 注意事項

  • 不再支持 IE11。如果繼續使用 IE11,請使用 Mapbox Static Tile API 來構建非交互式地圖,或者跟另外的庫(Mapbox.js、leaflet等)開發交互式地圖。
  • 必須使用 access token 才能初始化 Map 對象。
  • v2 對於地圖的加載是無條件的,不管有沒有請求官方托管的瓦片服務、什么時候創建 Map 對象。

訪問令牌定價策略(Web地圖請求)

每月50000免費次數,5~10w 每 1000 個收 5美元,10~20w 每 1000 個收 4美元,20~100w 每 1000 個收 3美元。當然,你自己配地圖服務、矢量切片樣式,不請求官方數據,應該就不收費,但是令牌還是得設置。

更新日志:2.0.0

⚠️大改動

mapbox-gl-js 不再使用 3-Clause BSD 許可,升級這個版本即默認你同意 Mapbox服務條款

參考 “LICENSE.txt” 文檔來查看最新的許可細節。有問題請在 https://support.mapbox.com 聯系官方。

從 2.0.0 開始,初始化 Map 對象時商業地圖就會加載。若想從 1.x 升級到 2.x,請查看 價格手冊 來估算你的成本。

此版本不再適配 IE 11。

相機 pitch 值解鎖到 85度。默認的 maxPitch 增至 85度,可以近似於地表水平線的觀察角度。默認情況下,地平線處的地圖繪制是透明的,不過你可以添加天空圖層來填充這部分空間。實例化 Map 時,傳遞 maxPitch: 60 就能與原來一樣了。

✨ 新特性與改進

  • 添加三維地形要素。現在可以使用新的 terrain 頂級樣式屬性或使用 map.setTerrain() 方法來控制所有圖層、marker 的高程。
  • 解鎖 pitch 值到 最大85度。
  • 在地平線上方添加一個天空圖層作為無限遠的背景。可從樣式規范中找到兩個有關的屬性:atmospheregradient
  • 添加了較為寬松自由的 camera API,可以使用 map.getFreeCameraOptions()map.setFreeCameraOptions() 進行更復雜的3D 相機操作。
  • 性能提升:二段式的切片加載策略,先處理非符號圖層
  • 性能提升:不解析已終止的矢量切片
  • 性能提升:使用預先着色器編譯策略
  • 性能提升:初始化地圖時禁用符號和柵格瓦片的淡入動畫
  • 性能提升:所有平台默認采用 2 個 Worker
  • 性能提升:Map 初始化加載時,在主線程加載切片
  • 性能提升:使用更好的Worker任務調度機制

🐞 問題修復

  • 當 RTLTextPlugin 加載時,避免加載 柵格瓦片和柵格地形瓦片
  • 在縮放級別為浮點數和傾斜視圖時,針對符號擺放的准確性,添加了運行時標簽沖突檢測計算
  • 修復地形資源的緩存大小
  • 修復DEM在worker上不釋放內存
  • 減少了 fill-extrusion 的內存占用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM