Skip to content

ScenePathRoaming 路线漫游

可用于对场景中的路线进行漫游。

<mapgis-3d-scene-path-roaming></mapgis-3d-scene-path-roaming>

基本用法

园区

飞行

API

属性

参数说明类型默认值版本
commands工具栏命令列表,形如[{id,label,icon,action}],存在内置import、export命令ID,对于外部命令需要传入完整属性,对内置命令只需要传入ID,action为函数array[{id: 'import'},{id: 'export'}]
paths漫游路线列表PathRoamingPath[][]
models漫游模型列表PathRoamingModel[][]

方法

名称描述版本
getPaths获取漫游路线列表
clearState清除路线漫游状态
clear清除路线漫游状态和路线数据

PathRoamingPath

漫游路线。

typescript
export interface PathRoamingPath {
  id: string // 名称
  // 基本信息
  baseInfo: {
    name: string // 路线名
    coordinates: Array<any> // 坐标集[x,y,z]
  }
  params: {
    speed: number // 漫游速度。默认 10m/s(10 米/秒) 特别提醒(漫游场景范围很大的时候,这个一定要设置大,比如飞机可能就是真实的几千米每秒 如果不按真实设置,会导致内部时间点插值过密,造成卡顿)。
    elevationType: string // 高程类型
    exHeight: number // 高程。默认 1
    heading: number // 航向角 (单位弧度)。默认 90
    pitch: number // 俯仰角 (单位弧度)。默认 0
    range: number // 距离。默认 1
    animationType: number // 视角。默认 1。1 跟随,2 锁定第一视角,3 上帝视角。场景漫游三个视角解释:跟随:相机视角不与漫游模型同时移动,可交互,方位角,俯仰角,距离不可设置,因为这三个参数的值的改变对场景没有影响;锁定第一视角:模拟本人漫游,可设置方位角,俯仰角,距离;上帝视角:从上空俯视漫游,俯仰角默认为-90,方位角默认为 90,方位角和距离可设置。
    interpolationAlgorithm: string // 插值 默认 LagrangePolynomialApproximation 拉格朗日 还有线性插值 LinearApproximation 埃尔米特插值插值 HermitePolynomialApproximation。
    isLoop: boolean // 是否循环。 默认 true
    showPath: boolean // 是否显示路径。默认 true
    showInfo: boolean // 是否显示提示信息。默认 true
    modelUrl: string // 模型资源路径。默认""
    modelScale: number // 模型缩放比例
    modelHeading: number // 模型方位角
    modelPitch: number // 模型俯仰角
    modelRoll: number // 模型翻滚角
    // 模型平移值
    modelOffset: {
      offsetX: number // 向前
      offsetY: number // 向左
      offsetZ: number // 向上
    }
    // 第一人称视角下,相机焦点的偏移值
    firstPersonCameraFocusOffset: {
      offsetX: number // 向前
      offsetY: number // 向左
      offsetZ: number // 向上
    }
  }
}

PathRoamingModel

漫游模型。

typescript
export interface PathRoamingModel {
  label: string // 模型名
  value: string // 模型路径
  // 第一人称视角下,相机焦点的偏移值
  firstPersonCameraFocusOffset?: {
    offsetX: number // 向前
    offsetY: number // 向左
    offsetZ: number // 向上
  }
}