事件应用
鼠标事件
ScreenSpaceEventHandler
js
var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);
let eventType = Cesium.ScreenSpaceEventType.LEFT_CLICK;
//注册事件
handler.setInputAction((event) => {
console.log(event);
}, eventType);
//注销事件
handler.removeInputAction(eventType);
var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);
let eventType = Cesium.ScreenSpaceEventType.LEFT_CLICK;
//注册事件
handler.setInputAction((event) => {
console.log(event);
}, eventType);
//注销事件
handler.removeInputAction(eventType);
要素拾取
js
var picked = viewer.scene.pick(event.position);
var picked = viewer.scene.pick(event.position);
Entity选择
js
viewer.selectedEntityChanged.addEventListener(function (entity) {
console.log(entity.id);
});
viewer.selectedEntityChanged.addEventListener(function (entity) {
console.log(entity.id);
});
相机事件
通过鼠标控制
通过鼠标控制相机的方式取决于CameraEventType的常量
通过键盘控制
通过操作键盘实现相机的漫游,比如前进、后退、向上、向下等等
场景渲染事件
场景渲染事件主要包括以下四种:
- scene.preUpdate: 更新或呈现场景之前将引发的事件
- scene.postUpdate: 场景更新后以及渲染场景之前立即引发的事件
- scene.preRender: 场景更新后以及渲染场景之前将引发的事件
- scene.postRender: 渲染场景后立即引发的事件