關注公衆號"seeling_GIS",回覆『前端視頻』,領取前端學習視頻資料
Cesium事件
基於canvas事件 -- Cesium.ScreenSpaceEventType
鼠標左鍵
事件類型 | 含義 |
---|---|
LEFT_CLICK | 單擊 |
LEFT_DOUBLE_CLICK | 雙擊 |
LEFT_DOWN | 左鍵按下 |
LEFT_UP | 左鍵彈起 |
鼠標中鍵
事件類型 | 含義 |
---|---|
MIDDLE_CLICK | 單擊 |
MIDDLE_DOWN | 按下 |
MIDDLE_UP | 彈起 |
鼠標右鍵
事件類型 | 含義 |
---|---|
RIGHT_CLICK | 單擊 |
RIGHT_DOWN | 按下 |
RIGHT_UP | 彈起 |
雙指觸摸
事件類型 | 含義 |
---|---|
PINCH_START | 雙指開始事件 |
PINCH_END | 雙指結束事件 |
PINCH_MOVE | 雙指更改事件 |
其他鼠標事件
事件類型 | 含義 |
---|---|
MOUSE_MOVE | 鼠標移動事件 |
WHEEL | 鼠標滾輪事件 |
使用事件
var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
let eventType= Cesium.ScreenSpaceEventType.LEFT_CLICK
//註冊事件
handler.setInputAction(event=>{
console.log(event);
}, eventType);
//註銷事件
handler.removeInputAction(eventType)
相機事件 -- Cesium.CameraEventType
鼠標操作相機事件
事件類型 | 含義 |
---|---|
LEFT_DRAG | 按住鼠標左鍵,然後移動鼠標並釋放按鈕 |
MIDDLE_DRAG | 按住鼠標中鍵,然後移動鼠標並釋放按鈕 |
PINCH | 觸摸表面上的雙指觸摸 |
RIGHT_DRAG | 按住鼠標右鍵,然後移動鼠標並釋放按鈕 |
WHEEL | 滾動鼠標中鍵 |
使用事件
// 需要回調的函數
function callbackFunc(event){
cosnole.log(event)
}
// 註冊事件
// 相機開始移動處理事件
viewer.scene.camera.moveStart.addEventListender(callbackFunc)
// 相機停止移動處理事件
viewer.scene.camera.moveEnd.addEventListender(callbackFunc)
// 註銷事件
// 相機開始移動處理事件
viewer.scene.camera.moveStart.removeEventListender(callbackFunc)
// 相機停止移動處理事件
viewer.scene.camera.moveEnd.removeEventListender(callbackFunc)
渲染事件
// 需要回調的函數
function callbackFunc(event){
cosnole.log(event)
}
// 渲染之前執行
viewer.scene.preRender.addEventListender(callbackFunc)
viewer.scene.preRender.removeEventListender(callbackFunc)
// 更新之前執行
viewer.scene.preUpdate.addEventListender(callbackFunc)
viewer.scene.preUpdate.removeEventListender(callbackFunc)
// 實時渲染執行
viewer.scene.postRender.addEventListender(callbackFunc)
viewer.scene.postRender.removeEventListender(callbackFunc)
// 實時更新執行
viewer.scene.postUpdate.addEventListender(callbackFunc)
viewer.scene.postUpdate.removeEventListender(callbackFunc)
更多內容,歡迎關注公衆號
seeling_GIS