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

    类 ESGltfModel

    ESGltfModel 类用于表示和操作 glTF 模型。它继承自 ESObjectWithLocation 类,提供了对模型节点变换、材质设置、事件处理等功能的支持。

    核心功能包括:

    • 管理模型节点的位置、旋转和缩放变换。
    • 处理 Cesium 模型准备就绪事件。
    • 设置和获取模型的材质信息。
    • 触发和监听自定义事件,如节点位置、旋转、缩放变化等。
    • 提供默认属性和属性列表的获取方法。

    使用示例:

    构造函数参数:

    • id:场景对象的 ID,类型为 SceneObjectKey,可选。

    特殊使用限制或潜在的副作用:

    • 在设置节点变换信息时,需要确保传入的向量元素都是有限数值,否则会触发错误日志。
    • 设置材质时,需要通过 setMaterial 方法,该方法返回一个 Promise,需要在 Promise 解析后获取最终的材质信息。
    • 仅 Cesium 引擎生效的设置,如 setLight122 方法,用于设置默认光照。

    层级 (查看层级一览)

    索引

    构造函数

    属性

    _deprecated allowPicking allowPickingChanged allowPickingReact collision collisionChanged collisionReact czmAtmosphereScatteringIntensity czmAtmosphereScatteringIntensityChanged czmAtmosphereScatteringIntensityReact czmColor czmColorChanged czmColorReact czmEnvironmentMapManager czmEnvironmentMapManagerChanged czmEnvironmentMapManagerReact czmImageBasedLightingFactor czmImageBasedLightingFactorChanged czmImageBasedLightingFactorReact czmMaximumScale czmMaximumScaleChanged czmMaximumScaleReact czmMinimumPixelSize czmMinimumPixelSizeChanged czmMinimumPixelSizeReact czmNativeScale czmNativeScaleChanged czmNativeScaleReact devTags devTagsChanged devTagsReact editingBindMode editingID execOnceFuncStr execOnceFuncStrChanged execOnceFuncStrReact extras extrasChanged extrasReact flyInParam flyInParamChanged flyInParamReact flyToParam flyToParamChanged flyToParamReact instances instancesChanged instancesReact maxVisibleDistance maxVisibleDistanceChanged maxVisibleDistanceReact minVisibleDistance minVisibleDistanceChanged minVisibleDistanceReact name nameChanged nameReact pointed pointedChanged pointedReact pointStyle pointStyleChanged pointStyleReact position positionChanged positionReact ref refChanged refReact rotation rotationChanged rotationReact scale scaleChanged scaleReact setMaterialInfoEvent show showChanged showReact toDestroyFuncStr toDestroyFuncStrChanged toDestroyFuncStrReact updateFuncStr updateFuncStrChanged updateFuncStrReact url urlChanged urlReact useCalcFlyToParamInESObjectWithLocation _lastFlyInId _lastFlyToId _lastMemId context create createFromClass createFromJson createFromUrl defaultFlyInParam defaultFlyToParam defaults destroySceneObject getEnv getSceneObj getSceneObjById getSceneObject getSceneObjectById getStrFromEnv innerRegister setEnv supportEditingModes type

    访问器

    方法

    构造函数

    属性

    _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>
    czmAtmosphereScatteringIntensity: number = 2

    大气散射强度(已弃用,Cesium 引擎专用)

    2
    

    请使用 czmEnvironmentMapManager 配置环境光照

    czmAtmosphereScatteringIntensityChanged: Listener<[number, number]>
    czmAtmosphereScatteringIntensityReact: ReactiveVariable<number>
    czmColor: ESJColor = ...

    模型颜色(RGBA 通道值)

    [1, 1, 1, 1]
    数组顺序为 [, 绿, , 透明度],取值范围 0-1
    czmColorChanged: Listener<[ESJColor, ESJColor]>
    czmColorReact: ReactiveVariable<ESJColor>
    czmEnvironmentMapManager: undefined | ESJEnvironmentMapManagerType = ...

    动态环境贴图管理器配置(Cesium 引擎专用)

    czmEnvironmentMapManagerChanged: Listener<
        [
            undefined
            | ESJEnvironmentMapManagerType,
            undefined | ESJEnvironmentMapManagerType,
        ],
    >
    czmEnvironmentMapManagerReact: ReactiveVariable<
        undefined
        | ESJEnvironmentMapManagerType,
    >
    czmImageBasedLightingFactor: ESJVector2D = ...

    环境光反射强度因子(Cesium 引擎专用)

    [1, 1]
    二维向量分别控制 X 轴和 Y 轴方向的反射强度
    czmImageBasedLightingFactorChanged: Listener<[ESJVector2D, ESJVector2D]>
    czmImageBasedLightingFactorReact: ReactiveVariable<ESJVector2D>
    czmMaximumScale: undefined | number = ...

    模型最大缩放比例(Cesium 引擎专用)

    czmMaximumScaleChanged: Listener<[undefined | number, undefined | number]>
    czmMaximumScaleReact: ReactiveVariable<number> | ReactiveVariable<undefined>
    czmMinimumPixelSize: number = 0

    模型最小像素尺寸(Cesium 引擎专用)

    0
    值为 0 时表示不启用最小像素尺寸限制
    czmMinimumPixelSizeChanged: Listener<[number, number]>
    czmMinimumPixelSizeReact: ReactiveVariable<number>
    czmNativeScale: number = 1

    模型统一缩放值(全局缩放因子)

    1
    同时应用于 X/Y/Z 轴的缩放比例
    czmNativeScaleChanged: Listener<[number, number]>
    czmNativeScaleReact: ReactiveVariable<number>
    devTags: undefined | string[] = ...

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

    devTagsChanged: Listener<[undefined | string[], undefined | string[]]>
    devTagsReact: ReactiveVariable<undefined | string[]>
    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>
    instances: undefined | ESJInstances = ...

    实例化矩阵数组(用于批量渲染相同模型)

    instancesChanged: Listener<[undefined | ESJInstances, undefined | ESJInstances]>
    instancesReact: ReactiveVariable<undefined | ESJInstances>
    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]>
    setMaterialInfoEvent: Event<[{ [xx: string]: any }]> = ...

    设置材质信息的事件

    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: undefined | string | ESJResource = ...

    模型资源路径(GLB/GLTF 文件地址)

    ${earthsdk3-assets-script-dir}/assets/glb/building.glb
    
    urlChanged: Listener<
        [undefined | string | ESJResource, undefined | string | ESJResource],
    >
    urlReact:
        | ReactiveVariable<string>
        | ReactiveVariable<undefined>
        | ReactiveVariable<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 czmModelReadyEvent(): Event<[model: any]>

      返回 Event<[model: any]>

      请使用 readyEvent 获取Cesium模型准备就绪事件

    • 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 nodeTransformations(): | undefined
      | { [key: string]: ModelNodeTransformation }

      获取节点变换信息

      返回 undefined | { [key: string]: ModelNodeTransformation }

    • set nodeTransformations(
          value: undefined | { [key: string]: ModelNodeTransformation },
      ): void

      设置节点变换信息

      参数

      • value: undefined | { [key: string]: ModelNodeTransformation }

        节点变换信息对象

      返回 void

    • get nodeTransformationsChanged(): Listener<
          [
              undefined
              | { [key: string]: ModelNodeTransformation },
              undefined | { [key: string]: ModelNodeTransformation },
          ],
      >

      获取节点变换信息的变更事件

      返回 Listener<
          [
              undefined
              | { [key: string]: ModelNodeTransformation },
              undefined | { [key: string]: ModelNodeTransformation },
          ],
      >

    • 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 printDebugInfoEvent(): Event<[]>

      获取打印调试信息的事件

      返回 Event<[]>

    • get readyEvent(): Event<[model: any]>

      获取Cesium模型准备就绪事件

      返回 Event<[model: any]>

    • get setMaterialEvent(): Event<["default" | { [xx: string]: ESJMaterialType }]>

      获取设置材质的事件

      返回 Event<["default" | { [xx: string]: ESJMaterialType }]>

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

      获取设置节点位置的事件

      返回 Event<[string, ESJVector3D]>

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

      获取设置节点旋转的事件

      返回 Event<[string, ESJVector3D]>

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

      获取设置节点缩放的事件

      返回 Event<[string, ESJVector3D]>

    • 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

    • 删除指定节点的变换信息

      参数

      • nodeName: string

        节点名称

      返回 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

    • 获取指定节点的位置

      参数

      • nodeName: string

        节点名称

      返回 undefined | ESJVector3D

      节点位置向量,如果不存在则返回undefined

    • 获取指定节点的旋转

      参数

      • nodeName: string

        节点名称

      返回 undefined | ESJVector3D

      节点旋转向量,如果不存在则返回undefined

    • 获取指定节点的缩放

      参数

      • nodeName: string

        节点名称

      返回 undefined | ESJVector3D

      节点缩放向量,如果不存在则返回undefined

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

      参数

      • 可选language: string

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

      返回 Property[]

      属性列表。

    • 返回 boolean

    • 返回 boolean

    • 触发打印调试信息的事件

      返回 void

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

      参数

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

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

      返回 void

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

      参数

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

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

      返回 void

    • 仅Cesium引擎生效,设置默认光照

      返回 void

    • 设置模型的材质

      参数

      • options: "default" | { [xx: string]: ESJMaterialType }

        材质选项,可以是材质对象或 'default'

      返回 Promise<{ [xx: string]: any }>

      一个Promise,当材质设置完成后解析为材质信息对象

    • 设置指定节点的位置

      参数

      • nodeName: string

        节点名称

      • nodePosition: ESJVector3D

        节点位置向量

      返回 void

    • 设置指定节点的旋转

      参数

      • nodeName: string

        节点名称

      • nodeRotation: ESJVector3D

        节点旋转向量

      返回 void

    • 设置指定节点的缩放

      参数

      • nodeName: string

        节点名称

      • nodeScale: ESJVector3D

        节点缩放向量

      返回 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