Cesium(五)鍵盤控制鏡頭漫遊

2021-10-10 13:24:15 字數 1688 閱讀 7899

這個東西網上很多部落格都寫了,我這也不做過多敘說,寫了一下我的方法,本來想講鏡頭移動做成csgo那樣,直接用mouse_move來控制鏡頭移動,可惜效果不太好,所以還是放棄了。

1.禁用鏡頭移動旋轉等

2.設定移動標誌

3.新增滑鼠監聽

4.新增鍵盤監聽

5.定義時間軸

// 自由鏡頭or漫遊

freeden()

; viewer.screenspaceeventhandler.

setinputaction

(function

(movement)

, cesium.screenspaceeventtype.

left_down);

viewer.screenspaceeventhandler.

setinputaction

(function

(movement)

, cesium.screenspaceeventtype.

mouse_move);

viewer.screenspaceeventhandler.

setinputaction

(function

(position)

, cesium.screenspaceeventtype.

left_up);

function

getflagforkeycode

(keycode)

} document.

addeventlistener

('keydown'

,this

.down

=function

(e)}

,false);

document.

addeventlistener

('keyup'

,this.up

=(e)

=>},

false);

viewer.clock.ontick.

addeventlistener

(function

(clock)})

}// 根據高度來決定鏡頭移動的速度

var cameraheight = ellipsoid.

cartesiantocartographic

(camera.position)

.height;

var moverate = cameraheight /

100.0;if

(flags.moveforward)

if(flags.movebackward)

if(flags.moveup)

if(flags.movedown)

if(flags.moveleft)

if(flags.moveright)});},

退出漫遊

·允許鏡頭移動

·移除滑鼠事件

·移除鍵盤事件

// 退出漫遊

quit()

,

鍵盤控制移動

pathgo 導航模組的預設固定 ip 是 192.168.31.200 預設使用者名為eaibot 預設密碼為 eaibot 開啟乙個終端,執行以下命令,啟動底盤驅動 帶平滑加減速 ssh eaibot 192.168.31.200 roslaunch dashgo driver demo.lau...

OpenGL 鍵盤控制

glut允許我們編寫程式,在裡面加入鍵盤輸入控制,包括了普通鍵,和其他特殊鍵 如f1,up 在這一章裡我們將學習如何去檢測哪個鍵被按下,可以從glut裡得到些什麼資訊,和如何處理鍵盤輸入。處理按鍵訊息,我們必須使用glut通知視窗系統,當某個鍵被按下時,哪個函式將完成所要求的操作。我們同樣是呼叫乙個...

iPhone控制鍵盤

有時候當鍵盤彈出時會把輸入框蓋住,這時候我們就沒法看到自己到底輸入的是什麼了,這時候我們就需要註冊兩個事件,那就是在鍵盤顯示的時候 把輸入框的位置放在可見的地方 當關閉鍵盤時,在將輸入框還原,以下就是解決問題的具體方法,我們只要註冊就可以了 call this method somewhere in...