本文目錄一覽:
Cesium可以加載百度地圖嗎
thingjs不支持百度作為底圖使用。由於百度地圖坐標系的坐標原點的特殊性,我們目前不支持百度地圖作為地理底圖。如果坐標數據來自於百度地圖,數據上傳時選擇“百度坐標系”,可以與其他的地理底圖進行匹配。
cesium地圖瓦片404默認顯示某張圖片
採用JavaScript的方式來加載圖片。
以Cesium默認加載的bingmapstilesystem為例。其地圖以一種四叉樹的方式進行存儲和加載。每當放大地圖時,會根據放大層級以及當前區域加載對應子層級的地圖圖片,在瀏覽器進行拼接展示。
如果考慮網絡不可用的場景,就需要構建本地Maps的服務。比較可行的方案是根據url規則,將需要的地圖瓦片數據批量下載到本地服務器,並根據quadkey和TileXY的映射關係配置路由,cesium的地圖源的請求改成從本地服務器獲取。當前有對應腳本工具對瓦片數據進行批量下載,唯一問題是數據量有些大。中國範圍內如果地圖縮放支持到16級的衛星地圖影像,中國的地圖數據有圖片約1.17億張。放大到16級大概是下面效果,地面分辨率2.39m每像素。所以如果使用此方案,需要:首先根據我們實際需要下載對應區域、對應縮放層級的瓦片數據,如國外區域只下載部分層級,國內下載到16級,避免用到的數據佔用太大。然後有足夠空間、有服務器存放瓦片數據,同時在此服務器上部署Maps服務,並配置好請求路由映射。最後修改cesium對應的配置,改成三維地圖圖片加載走自己部署的Maps服務器,對應Viewer初始化時候配置imageryProvider參數。
cesium 和 Three.js有什麼區別,以及二者與WebGL 的關係
二者都是基於WebGL技術開發的js庫
Threejs受眾面比較廣,是封裝了webgl的一些底層用法,讓初學者更容易上手;例如繪製一個立方體,使用webgl原生api可能要寫50行代碼,包括構建坐標點,頂點組織、着色器等信息;在threejs裡面可能只要一句代碼就可以構建(實際上也是調用webgl原生api),只是做了更大粒度的封裝
Cesium受眾面相對較小,是Gis相關的,也是基於WebGL開發的,它主要是三維地球相關的js庫,可以展示二維地圖服務(百度高德)、傾斜攝影模型;還可以在上面做一些三維分析,可以參考
原創文章,作者:XVYMP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/331273.html