我遇到了轮子事件的问题。我想在滚轮后获取一些数据,但是当我这样做时:
var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);
handler.setInputAction(function (e) {
fetchData(e);
}, Cesium.ScreenSpaceEventType.WHEEL);
结果是fetchData函数将被多次调用。我希望它只是在最后一个车轮事件触发后调用一次,而不是在转向过程中发送无用的请求。
有什么想法吗?
感谢。
答案 0 :(得分:3)
你怎么知道“转轮过程”什么时候结束?当车轮移动时,本机JS事件实时到来,并且通常车轮用于滚动或缩放车轮上的每个凹口。您试图根据车轮运动获取哪些数据?
Cesium的Camera类也有a moveEnd event,表示相机已安顿到新位置的时间。如果您尝试通过完成相机动作来获取新数据,这可能是订阅的更好事件。