基于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)