EarthSDK
    正在准备搜索索引...

    类 ESLevelRuntimeModel

    关卡包运行时模型类,用于管理和控制应用中的关卡包资源。

    该类继承自 ESObjectWithLocation,提供了关卡包的加载、定位和运行时管理功能。 主要功能包括:

    • 关卡包资源的 URL 配置和加载
    • 关卡加载距离和偏移量的控制
    • 下载进度的实时监控
    • 关卡名称的管理

    使用示例:

    可选的实例唯一标识符,用于区分不同的关卡包模型实例

    注意事项:

    • 该类支持 UE 平台的实现
    • url 属性必须指向有效的关卡包资源
    • downloadProgress 属性为只读,用于监控下载进度
    • 关卡加载距离会影响性能,建议根据实际需求合理设置

    层级 (查看层级一览)

    索引

    构造函数

    属性

    访问器

    方法

    构造函数

    属性

    _deprecated: (string | { [k: string]: any })[] = []

    弃用变量管理器 请勿使用该属性

    allowPicking: boolean = false

    是否允许拾取 默认false

    allowPickingChanged: Listener<[boolean, boolean]>
    allowPickingReact: ReactiveVariable<false> | ReactiveVariable<true>
    collision: boolean = true

    是否开启碰撞监测 默认true ,主要是UE使用

    collisionChanged: Listener<[boolean, boolean]>
    collisionReact: ReactiveVariable<false> | ReactiveVariable<true>
    devTags: undefined | string[] = ...

    对象类型名称相关的开发标签数组,使用 reactArrayWithUndefined 进行响应式处理,默认为 undefined。

    devTagsChanged: Listener<[undefined | string[], undefined | string[]]>
    devTagsReact: ReactiveVariable<undefined | string[]>
    downloadProgress: number = 0

    当前关卡包的下载进度。

    downloadProgressChanged: Listener<[number, number]>
    downloadProgressReact: ReactiveVariable<number>
    editingBindMode: ESJEditingBindModeType = 'singlePoint'

    编辑绑定模式,默认为 'singlePoint'

    editingID: undefined | string = undefined

    编辑 ID,用于标识编辑操作

    execOnceFuncStr: undefined | string = ...

    一次性执行函数的字符串表示,默认为 undefined。

    execOnceFuncStrChanged: Listener<[undefined | string, undefined | string]>
    execOnceFuncStrReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    extras: JsonValue = ...

    扩展属性 JSON,必须整体赋值,使用 reactJson 进行响应式处理,默认为 undefined。

    extrasChanged: Listener<[JsonValue, JsonValue]>
    flyInParam: undefined | ESJFlyInParam = ...

    飞入参数

    flyInParamChanged: Listener<
        [undefined | ESJFlyInParam, undefined | ESJFlyInParam],
    >
    flyInParamReact: ReactiveVariable<undefined | ESJFlyInParam>
    flyToParam: undefined | ESJFlyToParam = ...

    飞向参数

    flyToParamChanged: Listener<
        [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
    >
    flyToParamReact: ReactiveVariable<undefined | ESJFlyToParam>
    levelLoadDistance: number = 1000

    关卡加载距离,表示从当前视角到关卡加载点的距离。

    levelLoadDistanceChanged: Listener<[number, number]>
    levelLoadDistanceReact: ReactiveVariable<number>
    levelName: string = ''

    关卡名称,用于标识和管理关卡。

    levelNameChanged: Listener<[string, string]>
    levelNameReact: ReactiveVariable<string>
    levelOffset: ESJVector3D = ...

    关卡加载距离,表示从当前视角到关卡加载点的距离。

    levelOffsetChanged: Listener<[ESJVector3D, ESJVector3D]>
    levelOffsetReact: ReactiveVariable<ESJVector3D>
    maxVisibleDistance: number = ...

    最大可视距离

    maxVisibleDistanceChanged: Listener<[number, number]>
    maxVisibleDistanceReact: ReactiveVariable<number>
    minVisibleDistance: number = ...

    最小可视距离

    minVisibleDistanceChanged: Listener<[number, number]>
    minVisibleDistanceReact: ReactiveVariable<number>
    name: string = '未命名场景对象'

    对象名称,默认为 '未命名场景对象'。

    nameChanged: Listener<[string, string]>
    nameReact: ReactiveVariable<string>
    pointed: boolean = false

    点样式是否启用,默认false

    pointedChanged: Listener<[boolean, boolean]>
    pointedReact: ReactiveVariable<false> | ReactiveVariable<true>
    pointStyle: ESJPointStyle = ...

    点样式

    pointStyleChanged: Listener<[ESJPointStyle, ESJPointStyle]>
    position: ESJVector3D = ...

    位置点 [经,纬,高]

    positionChanged: Listener<[ESJVector3D, ESJVector3D]>
    ref: undefined | string = ...

    对象引用,设置后可通过对象管理器 objm.$refs.xxx 快速获取到对象,默认为 undefined。

    refChanged: Listener<[undefined | string, undefined | string]>
    refReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    rotation: ESJVector3D = ...

    姿态 [h,p,r]

    rotationChanged: Listener<[ESJVector3D, ESJVector3D]>
    scale: ESJVector3D = ...

    缩放 [x,y,z]

    scaleChanged: Listener<[ESJVector3D, ESJVector3D]>
    show: boolean = true

    是否显示 默认true

    showChanged: Listener<[boolean, boolean]>
    showReact: ReactiveVariable<false> | ReactiveVariable<true>
    toDestroyFuncStr: undefined | string = ...

    销毁函数的字符串表示,默认为 undefined。

    toDestroyFuncStrChanged: Listener<[undefined | string, undefined | string]>
    toDestroyFuncStrReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    updateFuncStr: undefined | string = ...

    更新函数的字符串表示,默认为 undefined。

    updateFuncStrChanged: Listener<[undefined | string, undefined | string]>
    updateFuncStrReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    url: string | ESJResource = ...

    关卡包资源的 URL,可以是相对路径或绝对路径。

    urlChanged: Listener<[string | ESJResource, string | ESJResource]>
    useCalcFlyToParamInESObjectWithLocation: boolean = true

    是否使用 ESObjectWithLocation 类中的 calcFlyToParam。

    _lastFlyInId: number = 0

    最后一次飞入操作的 ID

    _lastFlyToId: number = 0

    最后一次飞向操作的 ID

    _lastMemId: number = -1
    context: ESObjectsContext = ...

    对象上下文,用于管理场景对象的创建、销毁、查找等操作。

    create: <T extends ESSceneObject>(
        sceneObjectType: string | (new (id?: string) => T),
        id?: string,
    ) => undefined | T = ...

    创建场景对象的方法。

    类型声明

      • <T extends ESSceneObject>(
            sceneObjectType: string | (new (id?: string) => T),
            id?: string,
        ): undefined | T
      • 根据场景对象类型名或构造函数创建场景对象实例

        类型参数

        参数

        • sceneObjectType: string | (new (id?: string) => T)

          场景对象类型名或构造函数

        • 可选id: string

          可选的场景对象ID

        返回 undefined | T

        创建的场景对象实例,如果未找到对应的构造函数则返回 undefined

    createFromClass: <T extends ESSceneObject>(
        sceneObjConstructor: new (id?: string) => T,
        id?: string,
    ) => T = ...

    根据类创建场景对象的方法。

    类型声明

      • <T extends ESSceneObject>(
            sceneObjConstructor: new (id?: string) => T,
            id?: string,
        ): T
      • 根据场景对象的构造函数创建场景对象实例

        类型参数

        参数

        • sceneObjConstructor: new (id?: string) => T

          场景对象的构造函数

        • 可选id: string

          可选的场景对象ID,如果未提供或已存在相同ID的对象,将自动生成新的ID

        返回 T

        创建的场景对象实例

    createFromJson: <T extends ESSceneObject>(
        sceneObjectJson: JsonValue & { type: string; [k: string]: any },
    ) => undefined | T = ...

    根据 JSON 数据创建场景对象的方法。

    类型声明

      • <T extends ESSceneObject>(
            sceneObjectJson: JsonValue & { type: string; [k: string]: any },
        ): undefined | T
      • 根据 JSON 对象创建场景对象实例,并将 JSON 数据赋值给场景对象

        类型参数

        参数

        • sceneObjectJson: JsonValue & { type: string; [k: string]: any }

          包含场景对象类型和其他属性的 JSON 对象

        返回 undefined | T

        创建的场景对象实例,如果未找到对应的构造函数则返回 undefined

    createFromUrl: (url: string, id?: string) => undefined | ESSceneObject = ...

    根据 URL 创建场景对象的方法。

    defaultFlyInParam: {
        flyDuration: number;
        position: number[];
        rotation: number[];
    } = ...
    defaultFlyToParam: {
        distance: number;
        flyDuration: number;
        hDelta: number;
        heading: number;
        pDelta: number;
        pitch: number;
    } = ...
    defaults: Record<string, any> = {}
    destroySceneObject: (sceneObject: ESSceneObject) => boolean = ...

    销毁场景对象的方法。

    类型声明

      • (sceneObject: ESSceneObject): boolean
      • 销毁指定的场景对象实例

        参数

        返回 boolean

        场景对象是否已被销毁

    getEnv: (varName: string) => undefined | string = ...

    获取环境变量的方法。

    类型声明

      • (varName: string): undefined | string
      • 获取环境变量

        参数

        • varName: string

          环境变量名

        返回 undefined | string

        环境变量值

    环境变量的键。

    对应的环境变量值,如果未找到则返回 undefined。

    getSceneObj: (option?: string) => undefined | ESSceneObject | ESSceneObject[] = ...

    根据对象 ID 获取场景对象的方法。

    类型声明

      • (option?: string): undefined | ESSceneObject | ESSceneObject[]
      • 根据不同的条件获取场景对象实例

        参数

        • 可选option: string

          可选的条件,如果未提供则返回所有场景对象;如果以 'ES' 开头,则返回指定类型的所有场景对象;否则返回指定ID的场景对象

        返回 undefined | ESSceneObject | ESSceneObject[]

        符合条件的场景对象实例数组或单个实例,如果未找到则返回 undefined

    对象的唯一标识符。

    对应的场景对象,如果未找到则返回 undefined。

    getSceneObjById: (id: string) => undefined | ESSceneObject = ...

    根据对象 ID 获取场景对象的方法。

    类型声明

      • (id: string): undefined | ESSceneObject
      • 根据场景对象的ID获取场景对象实例

        参数

        • id: string

          场景对象的ID

        返回 undefined | ESSceneObject

        对应的场景对象实例,如果未找到则返回 undefined

    对象的唯一标识符。

    对应的场景对象,如果未找到则返回 undefined。

    getSceneObject: (option?: string) => undefined | ESSceneObject | ESSceneObject[] = ...

    根据对象 ID 获取场景对象的方法。

    类型声明

      • (option?: string): undefined | ESSceneObject | ESSceneObject[]
      • 根据不同的条件获取场景对象实例

        参数

        • 可选option: string

          可选的条件,如果未提供则返回所有场景对象;如果以 'ES' 开头,则返回指定类型的所有场景对象;否则返回指定ID的场景对象

        返回 undefined | ESSceneObject | ESSceneObject[]

        符合条件的场景对象实例数组或单个实例,如果未找到则返回 undefined

    对象的唯一标识符。

    对应的场景对象,如果未找到则返回 undefined。

    getSceneObjectById: (id: string) => undefined | ESSceneObject = ...

    根据对象 ID 获取场景对象的方法。

    类型声明

      • (id: string): undefined | ESSceneObject
      • 根据场景对象的ID获取场景对象实例

        参数

        • id: string

          场景对象的ID

        返回 undefined | ESSceneObject

        对应的场景对象实例,如果未找到则返回 undefined

    对象的唯一标识符。

    对应的场景对象,如果未找到则返回 undefined。

    getStrFromEnv: (str: string) => string = ...

    从环境变量中获取字符串值的方法。

    类型声明

      • (str: string): string
      • 根据含有环境变量的字符串获取真实路径

        参数

        • str: string

          包含环境变量的字符串,环境变量格式为 ${xxx-xxx}

        返回 string

        替换环境变量后的真实路径字符串

    环境变量的键。

    对应的字符串值,如果未找到则返回 undefined。

    innerRegister: <T extends ESSceneObject>(
        sceneObjectType: string,
        sceneObjConstructor: new () => T,
        extraInfo?: { [k: string]: any },
    ) => string = ...

    注册对象到上下文的方法。

    类型声明

      • <T extends ESSceneObject>(
            sceneObjectType: string,
            sceneObjConstructor: new () => T,
            extraInfo?: { [k: string]: any },
        ): string
      • 注册场景对象类型及其构造函数

        类型参数

        参数

        • sceneObjectType: string

          场景对象类型名

        • sceneObjConstructor: new () => T

          场景对象的构造函数

        • 可选extraInfo: { [k: string]: any }

          可选的额外信息,将存储在构造函数的扩展属性中

        返回 string

        注册的场景对象类型名

    setEnv: (varName: string, value: undefined | string) => void = ...

    设置环境变量的方法。

    类型声明

      • (varName: string, value: undefined | string): void
      • 设置环境变量

        参数

        • varName: string

          环境变量名

        • value: undefined | string

          环境变量值

        返回 void

    环境变量的键。

    环境变量的值。

    supportEditingModes: string[] = ...

    该类支持的编辑模式列表。

    type: string = ...

    静态属性,用于注册类的类型信息。 包括类名、父类、中文名称、标签和描述。

    访问器

    • get _jsonStr(): string

      获取对象的 JSON 字符串表示。

      返回 string

    • set _jsonStr(value: string): void

      根据 JSON 字符串设置对象的属性。

      参数

      • value: string

        JSON 字符串。

      返回 void

    • get activeViewer(): undefined | ESViewer

      返回 undefined | ESViewer

    • set activeViewer(value: undefined | ESViewer): void

      参数

      返回 void

    • get activeViewerChanged(): Listener<
          [undefined | ESViewer, undefined | ESViewer],
      >

      返回 Listener<[undefined | ESViewer, undefined | ESViewer]>

    • get attachedViewers(): Set<ESViewer>

      获取对象当前存在于哪些视口上的集合。

      返回 Set<ESViewer>

    • get automaticLandingEvent(): Listener<[flag: boolean]>

      获取自动落地事件的监听器。

      返回 Listener<[flag: boolean]>

    • get calcFlyInParamEvent(): Listener

      获取计算飞入参数事件

      返回 Listener

      计算飞入参数事件

    • get calcFlyToParamEvent(): Listener

      获取计算飞向参数事件

      返回 Listener

      计算飞向参数事件

    • get completeJson(): JsonValue

      获取对象的 JSON 表示,包含所有属性。包括默认值

      返回 JsonValue

    • get createdEvent(): Event<[]>

      获取对象创建事件。

      返回 Event<[]>

    • get defaultProps(): {
          devTags: ReactiveVariable<undefined | string[]>;
          execOnceFuncStr: undefined | string;
          extras: ReactiveVariable<JsonValue>;
          name: string;
          ref: undefined | string;
          toDestroyFuncStr: undefined | string;
          updateFuncStr: undefined | string;
      }

      获取对象的默认属性。

      返回 {
          devTags: ReactiveVariable<undefined | string[]>;
          execOnceFuncStr: undefined | string;
          extras: ReactiveVariable<JsonValue>;
          name: string;
          ref: undefined | string;
          toDestroyFuncStr: undefined | string;
          updateFuncStr: undefined | string;
      }

      • devTags: ReactiveVariable<undefined | string[]>

        对象类型名称相关的开发标签数组,使用 reactArrayWithUndefined 进行响应式处理,默认为 undefined。

      • execOnceFuncStr: undefined | string

        一次性执行函数的字符串表示,默认为 undefined。

      • extras: ReactiveVariable<JsonValue>

        扩展属性 JSON,必须整体赋值,使用 reactJson 进行响应式处理,默认为 undefined。

      • name: string

        对象名称,默认为 '未命名场景对象'。

      • ref: undefined | string

        对象引用,设置后可通过对象管理器 objm.$refs.xxx 快速获取到对象,默认为 undefined。

      • toDestroyFuncStr: undefined | string

        销毁函数的字符串表示,默认为 undefined。

      • updateFuncStr: undefined | string

        更新函数的字符串表示,默认为 undefined。

    • get disposers(): (() => void)[]

      返回 (() => void)[]

    • get editing(): boolean

      获取对象的编辑状态

      返回 boolean

      编辑状态

    • set editing(value: boolean): void

      设置对象的编辑状态

      参数

      • value: boolean

        编辑状态

      返回 void

    • get editingChanged(): Listener<[boolean, boolean]>

      获取编辑状态改变事件

      返回 Listener<[boolean, boolean]>

      编辑状态改变事件

    • get flushEvent(): Event<[]>

      获取刷新对象事件。

      返回 Event<[]>

    • get flyInEvent(): Event<
          [duration: number, id: number, flyMode?: "default" | "uniform"],
      >

      获取飞入事件

      返回 Event<[duration: number, id: number, flyMode?: "default" | "uniform"]>

      飞入事件

    • get flyOverEvent(): Event<
          [id: number, mode: "error" | "cancelled" | "over", viewer: ESViewer],
      >

      获取飞行结束事件

      返回 Event<[id: number, mode: "error" | "cancelled" | "over", viewer: ESViewer]>

      飞行结束事件

    • get flyToDistance(): undefined | number

      获取飞向距离

      返回 undefined | number

      飞向距离

    • set flyToDistance(value: undefined | number): void

      设置飞向距离

      参数

      • value: undefined | number

        飞向距离

      返回 void

    • get flyToDistanceChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向距离改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向距离改变事件

    • get flyToEvent(): Listener<
          [duration: number, id: number, flyMode?: "default" | "uniform"],
      >

      获取飞向事件

      返回 Listener<[duration: number, id: number, flyMode?: "default" | "uniform"]>

      飞向事件

    • get flyToFlyDuration(): undefined | number

      获取飞向持续时间

      返回 undefined | number

      飞向持续时间

    • set flyToFlyDuration(value: undefined | number): void

      设置飞向持续时间

      参数

      • value: undefined | number

        飞向持续时间

      返回 void

    • get flyToFlyDurationChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向持续时间改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向持续时间改变事件

    • get flyToHDelta(): undefined | number

      获取飞向水平偏移量

      返回 undefined | number

      飞向水平偏移量

    • set flyToHDelta(value: undefined | number): void

      设置飞向水平偏移量

      参数

      • value: undefined | number

        飞向水平偏移量

      返回 void

    • get flyToHDeltaChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向水平偏移量改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向水平偏移量改变事件

    • get flyToHeading(): undefined | number

      获取飞向航向

      返回 undefined | number

      飞向航向

    • set flyToHeading(value: undefined | number): void

      设置飞向航向

      参数

      • value: undefined | number

        飞向航向

      返回 void

    • get flyToHeadingChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向航向改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向航向改变事件

    • get flyToPDelta(): undefined | number

      获取飞向垂直偏移量

      返回 undefined | number

      飞向垂直偏移量

    • set flyToPDelta(value: undefined | number): void

      设置飞向垂直偏移量

      参数

      • value: undefined | number

        飞向垂直偏移量

      返回 void

    • get flyToPDeltaChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向垂直偏移量改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向垂直偏移量改变事件

    • get flyToPitch(): undefined | number

      获取飞向俯仰角

      返回 undefined | number

      飞向俯仰角

    • set flyToPitch(value: undefined | number): void

      设置飞向俯仰角

      参数

      • value: undefined | number

        飞向俯仰角

      返回 void

    • get flyToPitchChanged(): Listener<
          [undefined | ESJFlyToParam, undefined | ESJFlyToParam],
      >

      获取飞向俯仰角改变事件

      返回 Listener<[undefined | ESJFlyToParam, undefined | ESJFlyToParam]>

      飞向俯仰角改变事件

    • get id(): string

      获取对象的唯一标识符。

      返回 string

    • get json(): JsonValue

      获取对象的 JSON 表示。省略默认值属性,精简json

      返回 JsonValue

    • set json(value: JsonValue): void

      根据 JSON 数据设置对象的属性。

      参数

      返回 void

    • get memId(): number

      返回 number

    • get parentID(): string

      获取当前对象指定父级对象,未指定返回自身。

      返回 string

    • set parentID(value: undefined | string): void

      参数

      • value: undefined | string

      返回 void

    • get pickedEvent(): Event<[ESJPickedResult]>

      获取拾取事件

      返回 Event<[ESJPickedResult]>

      拾取事件

    • get pointColor(): ESJColor

      获取点的颜色

      返回 ESJColor

    • set pointColor(value: ESJColor): void

      设置点的颜色

      参数

      返回 void

    • get pointMaterial(): string

      获取点的材质

      返回 string

    • set pointMaterial(value: string): void

      设置点的材质

      参数

      • value: string

        点的材质值

      返回 void

    • get pointMaterialParams(): JsonValue

      获取点的材质参数

      返回 JsonValue

    • set pointMaterialParams(value: JsonValue): void

      设置点的材质参数

      参数

      返回 void

    • get pointSize(): number

      获取点的大小

      返回 number

    • set pointSize(value: number): void

      设置点的大小

      参数

      • value: number

        点的大小值

      返回 void

    • get pointSizeType(): ESJRenderType

      获取点的大小类型

      返回 ESJRenderType

    • set pointSizeType(value: ESJRenderType): void

      设置点的大小类型

      参数

      返回 void

    • get smoothMoveEvent(): Event<[ESJVector3D, number]>

      获取平滑移动事件。

      返回 Event<[ESJVector3D, number]>

    • get smoothMoveKeepPitchEvent(): Event<[ESJVector3D, number]>

      获取保持俯仰角平滑移动事件。

      返回 Event<[ESJVector3D, number]>

    • get smoothMoveOnGroundEvent(): Event<[number, number, number, string]>

      获取贴地平滑移动事件。

      返回 Event<[number, number, number, string]>

    • get smoothMoveRelativelyEvent(): Event<[ESJVector3D, number]>

      获取相对平滑移动事件。

      返回 Event<[ESJVector3D, number]>

    • get smoothMoveRelativelyWithRotationEvent(): Event<
          [ESJVector3D, ESJVector3D, number],
      >

      获取相对平滑偏移到指定位置和姿态的事件。

      返回 Event<[ESJVector3D, ESJVector3D, number]>

    • get smoothMoveWithRotationEvent(): Event<[ESJVector3D, ESJVector3D, number]>

      获取平滑偏移到指定位置和姿态的事件。

      返回 Event<[ESJVector3D, ESJVector3D, number]>

    • get smoothMoveWithRotationOnGroundEvent(): Event<
          [ESJVector3D, number, number, number, string],
      >

      获取贴地平滑偏移到指定位置和姿态的事件。

      返回 Event<[ESJVector3D, number, number, number, string]>

    • get statusDis(): boolean

      获取对象是否禁用的状态。

      返回 boolean

    • get statusDisChanged(): Listener<[boolean, boolean]>

      获取对象禁用状态改变的事件监听器。

      返回 Listener<[boolean, boolean]>

    • get toDestroyEvent(): Listener

      返回 Listener

    • get toDestroyFunc(): undefined | ((sceneObject: ESSceneObject) => void)

      获取对象的销毁函数。

      返回 undefined | ((sceneObject: ESSceneObject) => void)

    • set toDestroyFunc(
          value: undefined | ((sceneObject: ESSceneObject) => void),
      ): void

      设置对象的销毁函数。

      参数

      • value: undefined | ((sceneObject: ESSceneObject) => void)

        销毁函数。

      返回 void

    • get toDestroyFuncChanged(): Listener<
          [
              undefined
              | ((sceneObject: ESSceneObject) => void),
              undefined | ((sceneObject: ESSceneObject) => void),
          ],
      >

      获取销毁函数改变事件。

      返回 Listener<
          [
              undefined
              | ((sceneObject: ESSceneObject) => void),
              undefined | ((sceneObject: ESSceneObject) => void),
          ],
      >

    • get typeName(): string

      获取对象的类型名称,由子类实现。

      返回 string

    • get updateFunc(): | undefined
      | ((sceneObject: ESSceneObject, timeStamp: number) => void)

      获取对象的更新函数。

      返回 undefined | ((sceneObject: ESSceneObject, timeStamp: number) => void)

    • set updateFunc(
          value:
              | undefined
              | ((sceneObject: ESSceneObject, timeStamp: number) => void),
      ): void

      设置对象的更新函数。

      参数

      • value: undefined | ((sceneObject: ESSceneObject, timeStamp: number) => void)

        更新函数。

      返回 void

    • get updateFuncChanged(): Listener<
          [
              undefined
              | ((sceneObject: ESSceneObject, timeStamp: number) => void),
              undefined | ((sceneObject: ESSceneObject, timeStamp: number) => void),
          ],
      >

      获取更新函数改变事件。

      返回 Listener<
          [
              undefined
              | ((sceneObject: ESSceneObject, timeStamp: number) => void),
              undefined | ((sceneObject: ESSceneObject, timeStamp: number) => void),
          ],
      >

    • get viewerAttached(): Event<[ESViewer]>

      获取对象创建在视口上的事件。

      返回 Event<[ESViewer]>

    • get viewerDetached(): Event<[ESViewer]>

      获取对象从视口移除的事件。

      返回 Event<[ESViewer]>

    • get $refs(): { [k: string]: undefined | ESSceneObject }

      获取所有引用对象的集合。

      返回 { [k: string]: undefined | ESSceneObject }

    • get envs(): { [k: string]: undefined | string }

      获取所有环境变量的集合。

      返回 { [k: string]: undefined | string }

    方法

    • 弃用变量管理器 当弃用的属性发生变化时,会在控制台输出警告信息

      返回 void

    • 参数

      • disposeFunc: () => void

      返回 () => void

    • 类型参数

      • T extends { destroy(): void }

      参数

      • obj: T

      返回 T

    • 将对象添加到指定视口中。

      参数

      • viewer: ESViewer

        要添加对象的视口。

      返回 void

    • 参数

      • disposeFunc: () => void

      返回 () => void

    • 类型参数

      • T extends { destroy(): void }

      参数

      • obj: T

      返回 T

    • 自动落地。 先禁用碰撞检测,一段时间后触发自动落地事件并恢复碰撞检测状态。

      返回 void

    • 触发计算飞入参数事件

      返回 void

    • 触发计算飞向参数事件

      返回 void

    • 创建与视口关联的对象,并返回一个销毁函数,用于手动销毁关联对象。

      参数

      • createViewerPropSceneObject: (viewer: ESViewer) => undefined | Destroyable

        一个函数,用于创建与视口关联的对象。

      返回 () => void

      一个销毁函数,调用该函数可以销毁所有关联对象。

    • 参数

      • disposeFunc: () => void

      返回 () => void

    • 返回 undefined

    • 请不要重写destroy,请使用destroyImp来重写!

      返回 undefined

    • 返回 void

    • 参数

      • disposeFunc: () => void

      返回 () => void

    • 类型参数

      • T extends { destroy(): void }

      参数

      • obj: T

      返回 T

    • 类型参数

      • T extends { destroy(): void }

      参数

      • obj: T

      返回 T

    • 刷新对象,触发刷新事件。

      返回 void

    • 触发飞入事件

      参数

      • duration: number = 1

        飞入持续时间,默认为 1

      返回 void

    • 触发飞向事件

      参数

      • duration: number = 1

        飞向持续时间,默认为 1

      返回 void

    • 获取对象的边界球

      参数

      返回 Promise<
          | undefined
          | { center?: [number, number, number]; radius?: number; tips?: string },
      >

      包含边界球信息的 Promise

    • 获取对象的属性列表,用于展示和编辑对象的属性。

      参数

      • 可选language: string

        语言代码,可选参数,用于国际化。

      返回 Property[]

      属性列表。

    • 返回 boolean

    • 返回 boolean

    • 注册与视口关联的对象,当对象被添加到视口或从视口移除时,会自动创建或销毁关联对象。

      参数

      • createViewerPropSceneObject: (viewer: ESViewer) => undefined | Destroyable

        一个函数,用于创建与视口关联的对象。

      返回 void

    • 注册与视口容器关联的对象,当对象被添加到视口或从视口移除时,会自动创建或销毁关联对象。

      参数

      • createContainerPropSceneObject: (viewer: ESViewer, container: HTMLDivElement) => undefined | Destroyable

        一个函数,用于创建与视口容器关联的对象。

      返回 void

    • 平滑移动到指定位置。

      参数

      • Destination: ESJVector3D

        目标位置,格式为[经度, 纬度, 高度]

      • Time: number

        平滑移动所需的时间,单位为秒

      返回 void

    • 保持俯仰角平滑移动到指定位置。

      参数

      • Destination: ESJVector3D

        目标位置,格式为[经度, 纬度, 高度]

      • Time: number

        平滑移动所需的时间,单位为秒

      返回 void

    • 贴地平滑移动。

      参数

      • Lon: number

        目标位置的经度

      • Lat: number

        目标位置的纬度

      • Time: number

        平滑移动所需的时间,单位为秒

      • Ground: string

        地面类型,UE特有属性

      返回 void

    • 相对平滑移动。

      参数

      • RelativePosition: ESJVector3D

        相对位置,格式为[经度, 纬度, 高度]

      • Time: number

        平滑移动所需的时间,单位为秒

      返回 void

    • 相对平滑偏移到指定位置和姿态。

      参数

      • RelativePosition: ESJVector3D

        相对位置,格式为[经度, 纬度, 高度]

      • NewRotation: ESJVector3D

        目标姿态,格式为[偏航角, 俯仰角, 翻转角]

      • Time: number

        平滑移动所需的时间,单位为秒

      返回 void

    • 平滑偏移到指定位置和姿态。

      参数

      • Destination: ESJVector3D

        目标位置,格式为[经度, 纬度, 高度]

      • NewRotation: ESJVector3D

        目标姿态,格式为[偏航角, 俯仰角, 翻转角]

      • Time: number

        平滑移动所需的时间,单位为秒

      返回 void

    • 贴地平滑偏移到指定位置和姿态。

      参数

      • NewRotation: ESJVector3D

        目标姿态,格式为[偏航角, 俯仰角, 翻转角]

      • Lon: number

        目标位置的经度

      • Lat: number

        目标位置的纬度

      • Time: number

        平滑移动所需的时间,单位为秒

      • Ground: string

        地面类型,ue特有属性

      返回 void

    • 获取当前对象支持的编辑模式

      返回 any

      支持的编辑模式数组

    • 类型参数

      • T extends { tryDestroy(): void }

      参数

      • obj: T

      返回 T

    • 返回 undefined

    • 类型参数

      • T extends { tryDestroy(): void }

      参数

      • obj: T

      返回 T

    • 更新对象的编辑模式。 根据 editingBindMode 的值,设置不同的编辑模式,并启动编辑。

      返回 void

    • 获取父类的类型,用于创建对象时对象本身没有实现类,则使用父类的实现类,一直向上寻找,直到ESSceneObject的实现类

      类型参数

      返回 T

      父类的类型

    • 完善版注册方法

      类型参数

      参数

      • className: string
      • ctor: T & new (id?: string) => ESSceneObject
      • 可选meta: Partial<{ chsName: string; description: string; tags: string[] }>

      返回 string