Zoom 地图放大缩小
一、案例效果 (Zoom组件)
二、代码下载
可以下载源码工程,进行本地调试。
三、组件调用
使用THEngine.widgets.Zoom组件,可以控制地图视角缩放。
import { THEngine } from "@/engine/THEngine";
const viewPoint = {
position: [113.32681, 23.18890199999999, 15000],
heading: 0,
pitch: -45,
roll: 0,
};
const zoom = new THEngine.widgets.Zoom(viewer, viewPoint);
//视角拉近
function zoomIn() {
zoom.zoomIn();
}
//视角拉远
function zoomOut() {
zoom.zoomOut();
}
//回到默认视角
function flyHome() {
zoom.flyHome();
}
四、组件接口
构造函数
constructor(viewer, homeViewPoint)
- 功能:初始化
Zoom
类的实例。 - 参数:
参数名 类型 描述 viewer
Object
Cesium Viewer
实例,用于操作地图视角。homeViewPoint
Object
初始视角的位置信息,用于复位操作。
实例方法
zoomIn(level = 10)
- 功能:实现视角拉近操作。
- 参数:
参数名 类型 描述 默认值 level
number
缩放级别,用于控制每次拉近的幅度。 10
- 详细说明:该方法会获取当前相机的高度,然后根据
level
计算出每次拉近的移动距离,最后调用相机的moveForward
方法使相机向前移动相应距离,达到视角拉近的效果。
zoomOut(level = 10)
- 功能:实现视角放远操作。
- 参数:
参数名 类型 描述 默认值 level
number
缩放级别,用于控制每次放远的幅度。 10
- 详细说明:此方法会获取当前相机的高度,依据
level
计算每次放远的移动距离,接着调用相机的moveBackward
方法使相机向后移动相应距离,实现视角放远。
flyHome()
- 功能:将视角恢复到初始位置。
- 参数:无
- 详细说明:该方法会检查是否存在初始视角的位置信息,如果存在,则调用
TQCamera
模块的flyTo
方法,将视角移动到初始位置。