Skip to main content

Cesium事件-16

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

发表回复