91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Cesium開發中如何限制地圖瀏覽范圍

發布時間:2022-01-13 16:49:25 來源:億速云 閱讀:611 作者:小新 欄目:大數據

這篇文章給大家分享的是有關Cesium開發中如何限制地圖瀏覽范圍的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在二維地圖的開發中,有maxbounds屬性或者maxextent屬性,能夠將地圖的瀏覽限制在一定的四至坐標范圍中觀看。  
對比于二維地圖里,三維地圖多出來高度、旋轉、觀看角度等參數,在控制的時候,要比二維地圖多控制一些東西。
Cesium中有設置觀看最低、最高高度的API,能夠在觀看高度上進行控制,下邊代碼即是:

viewer.scene.screenSpaceCameraController.maximumZoomDistance =100000; 

 viewer.scene.screenSpaceCameraController.minimumZoomDistance = 10;

設置四至范圍的API并沒有找到,需要根據現有API進行進一步的開發。  
思路是將瀏覽的范圍控制在事先設定好的四至范圍中,實時進行檢測,超出范圍后,讓鏡頭退回到設定的范圍中。  
實時監測的函數,使用的是preRender,此事件執行的頻率還是很高的:  

viewer.scene.preRender.addEventListener(function() { //函數內容});

Cesium的鏡頭視野范圍,開始時用的是computeViewRectangle,計算一個觀看的視野范圍,計算的結果是west,east,north,south5個范圍參數;

let _viewRectangle = viewer.camera.computeViewRectangle();

再拿上述4個范圍參數和設定的四至范圍進行比對,超出范圍的部分,使用設定的四至范圍,最后,將camera的觀看范圍,強制跳回到觀看視野中,防止超出。  
不過,在這樣的計算情況下,場景有一定的跳動,效果不太理想,后來,就把設定的四至范圍擴大了一些,判斷viewer.camera.position,將觀看的坐標限定在四至的坐標中,  超出范圍的部分,使用設定的四至范圍坐標,也是進行強制跳回,這樣盡管在觀看的范圍有一定的誤差,但是,整體的效果還是好了些。

感謝各位的閱讀!關于“Cesium開發中如何限制地圖瀏覽范圍”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

敦煌市| 嘉定区| 峨边| 门头沟区| 马龙县| 巴南区| 佳木斯市| 建瓯市| 五原县| 建水县| 石门县| 灵宝市| 九寨沟县| 固原市| 枣阳市| 马边| 巫溪县| 武清区| 齐齐哈尔市| 仪陇县| 靖西县| 旌德县| 彩票| 武义县| 长海县| 左贡县| 宜城市| 双城市| 新宁县| 静安区| 平舆县| 肇州县| 隆德县| 兴城市| 句容市| 章丘市| 子长县| 定州市| 南和县| 竹山县| 白玉县|