Cesium 相機視角與 Mapbox 視角轉換

2022-06-25 17:18:12 字數 1501 閱讀 1657

就視角傾斜情況還是很貼合的,觀察中心點可能略不一樣(**沒設定成一樣的觀察點位,只是大致接近,但是兩個角度是嚴格計算轉換的)

以下計算均為角度計算。

cesium的pitch和mapbox的pitch是相反數

cesium的heading和mapbox的bearing關係是:(都是角度值的前提下)ce

sium

.hea

ding

−map

box.

bear

ing=

360'>ces

ium.

head

ing−

mapb

ox.b

eari

ng=360

預設 roll 是 0

import  from 'mapbox-gl'import  from 'cesium'/**

* @param map mapbox map

* @returns 含 heading、pitch、roll=0 的物件 */

const tocesium = (map) =>}/*

* * @param cesiumcamera cesiumcamera

* @returns 含 bearing、pitch 的物件 */

const tomapbox = (cesiumcamera) =>

}export

就視角傾斜情況還是很貼合的,觀察中心點可能略不一樣(**沒設定成一樣的觀察點位,只是大致接近,但是兩個角度是嚴格計算轉換的)

解釋cesium

mapbox

heading/bearing

頭左右看

正北↑為0,順時針為正角,值域[0, 360]

正北↑為0,順時針為正角,值域[-180, 180]

pitch

頭上下看(看天看腳丫子)

水平線為0,向上為正角

水平線位0,向下為正角

roll

頭向肩膀側歪

幾乎用不到,而且mapbox沒有這個對應關係就不提了

以下計算均為角度計算。

cesium的pitch和mapbox的pitch是相反數

cesium的heading和mapbox的bearing關係是:(都是角度值的前提下)ce

sium

.hea

ding

−map

box.

bear

ing=

360'>ces

ium.

head

ing−

mapb

ox.b

eari

ng=360

cesium 相機跟隨

一場大的颱風,路徑通常很長,可能從靠近赤道的太平洋一直往北吹到東三省。跨度這麼大,在三維gis中,往往不容易看全。如果能夠實現相機隨動效果,即相機跟隨颱風步進 移動,就生動許多了。感覺在cesium中,座標和視角 相機 view是乙個難點,我到現在都搞不清楚。方向 orientation 可以總結一...

Cesium引入Three同步相機

這個帖子講述了如何在在cesium引入three,總結一下原理就是 html中設定兩個容器分別用於容納cesium與three,且three容器在cesium容器下面,這樣才能讓three產生的場景覆蓋在cesium上,並且禁用three容器的滑鼠事件,通過cesium同步three。初始化ceiu...

Cesium 取相機飛行引數

heading 方位角 pitch 傾角 roll 旋轉角 range 距離中心距離 let opt let entity new cesium.entity viewer.entities.add entity 1.viewer.zoomto viewer.zoomto entity 或者 vie...