事件简介
Cesium中大的事件按照类型进行分类,可以分为如下几种:
- 鼠标键盘事件
- 相机事件
- 数据加载事件
- 场景加载事件
按照事件的使用方式进行分类,可以分为如下两种:
- 创建事件处理器
Handler
并指定事件触发类型定义事件,如与鼠标键盘事件相关的屏幕空间事件处理器ScreenSpaceEventHandler
- Cesium中已经定义好事件回调,只需要添加事件监听的回调函数即可。如监听
3D Tiles
的瓦片全部加载完毕的回调函数allTilesLoaded
鼠标键盘事件
要定义鼠标键盘事件,首先要创建一个屏幕空间处理器ScreenSpaceEventHandler
,该方法需要传入一个HTMLCanvasElement
用于指定事件处理器应用在哪个Canvas元素上,一般情况下指定为viewer.scene.canvas
,创建一个事件处理器的完整代码如下:
const handler = new Cesium.ScreenSpaceEventHandler(viewer,scene.canvas);
这样就成功创建了一个事件处理器,接下来就要使用事件处理器上的setInputAction
方法来定义事件触发的类型和执行事件触发的回调函数。
其中鼠标的事件类型叫做 “屏幕空间事件类型ScreenSpaceEventType
”,键盘的事件类型叫做 “键盘事件修饰符KeyboardEventModifier
”
屏幕空间事件类型 ScreenSpaceEventType
因为Cesium的操作分为鼠标操作和触屏操作两种模式,所以屏幕空间事件类型ScreenSpaceEventType
分为两类:
1.鼠标操作
事件名称 | 类型 | 描述 |
---|---|---|
LEFT_DOWN |
aplpha |
1.0 |