flyToGraphic 函数用于将地图视角平滑飞行到指定的矢量图形位置,其两个参数的含义如下:
第一个参数:graphic: mars3d.graphic.BaseGraphic
- 类型:Mars3D 中所有矢量图形的基类实例(如点、线、面、模型等具体图形对象)。
- 作用:指定地图视角需要飞行到达的目标矢量图形。例如点标记(
BillboardEntity)、多边形(PolygonEntity)、3D 模型(ModelEntity)等,函数会自动计算该图形的空间位置作为飞行终点。
第二个参数:option: any
-
类型:飞行配置选项对象(可选参数)。
-
作用:控制飞行过程的细节,例如:
- 飞行时长(
duration,单位秒); - 视角偏移量(
offset,调整最终视角与目标的相对位置); - 忽略高度(
ignoreHeight,是否忽略图形的高程信息)等。
- 飞行时长(
-
函数内部会对该配置进行扩展,默认添加
complete回调(飞行结束后自动打开图形的弹窗)。
简单来说,第一个参数确定 “飞到哪个图形”,第二个参数定义 “如何飞过去”。
1.flyToGraphic(第一个参数是->矢量图形对象,第二个是飞行配置)
let map: mars3d.Map // 地图对象
export function flyToGraphic(graphic: mars3d.graphic.BaseGraphic, option: any): void {
map.flyToGraphic(graphic, { ...option, complete: () => graphicLayer.openPopup(graphic) })
}