20 lines
854 B
JavaScript
20 lines
854 B
JavaScript
export function modifyCesiumMouseWheel(viewer) {
|
|
// 地图缩放改为按下 Ctrl + 鼠标滚轮
|
|
viewer.scene.screenSpaceCameraController.zoomEventTypes = [{ eventType: Cesium.CameraEventType.WHEEL, modifier: Cesium.KeyboardEventModifier.CTRL }];
|
|
|
|
// 改写 Cesium 原生鼠标滚轮事件
|
|
const handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
|
|
handler.setInputAction((event) => {
|
|
if (event < 0) {
|
|
window.scrollBy({ left: 0, top: 15, behavior: 'auto' });
|
|
} else {
|
|
window.scrollBy({ left: 0, top: -15, behavior: 'auto' });
|
|
}
|
|
}, Cesium.ScreenSpaceEventType.WHEEL);
|
|
|
|
// 鼠标移动时显示提示信息
|
|
handler.setInputAction((event) => {
|
|
document.getElementById('mouseWheelTip').style.display = '';
|
|
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
|
|
}
|