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

    ESGeoVector 类用于表示和操作地理矢量对象。它继承自 ESVisualObject 类,并扩展了地理矢量相关的功能。 https://www.wolai.com/earthsdk/u1Uc89HHrBjiGGB67BdFLc 核心功能包括:

    • 支持多种编辑模式,包括平移、双点添加/修改、线串添加/插入等。
    • 计算地理矢量的面积和周长。
    • 计算地理矢量与另一个地理矢量的交集、并集和差集。
    • 计算地理矢量的缓冲区。
    • 判断一个多边形是否在另一个多边形内部。
    • 管理点、线和填充的样式。

    使用示例:

    构造函数参数:

    实例的唯一标识符,可选。

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

    • 在初始化时需要提供点的位置数组,否则面积和周长将无法计算。
    • 编辑模式和使用样式时,需要注意相应的参数设置,以确保视觉效果符合预期。

    层级 (查看层级一览)

    索引

    构造函数

    属性

    _deprecated allowPicking allowPickingChanged allowPickingReact arcType arcTypeChanged arcTypeReact collision collisionChanged collisionReact currentPoiShow currentPoiShowChanged currentPoiShowReact currentTime currentTimeChanged currentTimeReact depthTest depthTestChanged depthTestReact devTags devTagsChanged devTagsReact duration durationChanged durationReact editingBindMode editingID execOnceFuncStr execOnceFuncStrChanged execOnceFuncStrReact extras extrasChanged extrasReact filled filledChanged filledReact fillStyle fillStyleChanged fillStyleReact flyInParam flyInParamChanged flyInParamReact flyToParam flyToParamChanged flyToParamReact ground groundChanged groundReact leadTime leadTimeChanged leadTimeReact loop loopChanged loopReact name nameChanged nameReact playing playingChanged playingReact pointed pointedChanged pointedReact points pointsChanged pointsReact pointStyle pointStyleChanged pointStyleReact ref refChanged refReact resolution resolutionChanged resolutionReact sharpness sharpnessChanged sharpnessReact show showChanged showReact speed speedChanged speedReact stroked strokedChanged strokedReact strokeStyle strokeStyleChanged strokeStyleReact toDestroyFuncStr toDestroyFuncStrChanged toDestroyFuncStrReact trailTime trailTimeChanged trailTimeReact updateFuncStr updateFuncStrChanged updateFuncStrReact 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[] = ...

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

    allowPicking: boolean = false

    是否允许拾取 默认false

    allowPickingChanged: Listener<[boolean, boolean]>
    allowPickingReact: ReactiveVariable<false> | ReactiveVariable<true>
    arcType: string = 'GEODESIC'
    arcTypeChanged: Listener<[string, string]>
    arcTypeReact: ReactiveVariable<string>
    collision: boolean = true

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

    collisionChanged: Listener<[boolean, boolean]>
    collisionReact: ReactiveVariable<false> | ReactiveVariable<true>
    currentPoiShow: boolean = true
    currentPoiShowChanged: Listener<[boolean, boolean]>
    currentPoiShowReact: ReactiveVariable<false> | ReactiveVariable<true>
    currentTime: number = 0
    currentTimeChanged: Listener<[number, number]>
    currentTimeReact: ReactiveVariable<number>
    depthTest: boolean = false
    depthTestChanged: Listener<[boolean, boolean]>
    depthTestReact: ReactiveVariable<false> | ReactiveVariable<true>
    devTags: undefined | string[] = ...

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

    devTagsChanged: Listener<[undefined | string[], undefined | string[]]>
    devTagsReact: ReactiveVariable<undefined | string[]>
    duration: number = 3000
    durationChanged: Listener<[number, number]>
    durationReact: ReactiveVariable<number>
    editingBindMode: ESJEditingBindModeType = 'lineString'

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

    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]>
    filled: boolean = false

    面样式是否启用,默认false

    filledChanged: Listener<[boolean, boolean]>
    filledReact: ReactiveVariable<false> | ReactiveVariable<true>
    fillStyle: ESJFillStyle = ...

    面样式

    fillStyleChanged: Listener<[ESJFillStyle, ESJFillStyle]>
    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>
    ground: boolean = false
    groundChanged: Listener<[boolean, boolean]>
    groundReact: ReactiveVariable<false> | ReactiveVariable<true>
    leadTime: number = 0
    leadTimeChanged: Listener<[number, number]>
    leadTimeReact: ReactiveVariable<number>
    loop: boolean = false
    loopChanged: Listener<[boolean, boolean]>
    loopReact: ReactiveVariable<false> | ReactiveVariable<true>
    name: string = '未命名场景对象'

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

    nameChanged: Listener<[string, string]>
    nameReact: ReactiveVariable<string>
    playing: boolean = false
    playingChanged: Listener<[boolean, boolean]>
    playingReact: ReactiveVariable<false> | ReactiveVariable<true>
    pointed: boolean = false

    点样式是否启用,默认false

    pointedChanged: Listener<[boolean, boolean]>
    pointedReact: ReactiveVariable<false> | ReactiveVariable<true>
    points: undefined | [number, number, number][] = ...

    点坐标数组 [number, number, number][] 默认undefined

    pointsChanged: Listener<
        [
            undefined
            | [number, number, number][],
            undefined | [number, number, number][],
        ],
    >
    pointsReact: ReactiveVariable<undefined | [number, number, number][]>
    pointStyle: ESJPointStyle = ...

    点样式

    pointStyleChanged: Listener<[ESJPointStyle, ESJPointStyle]>
    ref: undefined | string = ...

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

    refChanged: Listener<[undefined | string, undefined | string]>
    refReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    resolution: number = 1000
    resolutionChanged: Listener<[number, number]>
    resolutionReact: ReactiveVariable<number>
    sharpness: number = 0.85
    sharpnessChanged: Listener<[number, number]>
    sharpnessReact: ReactiveVariable<number>
    show: boolean = true

    是否显示 默认true

    showChanged: Listener<[boolean, boolean]>
    showReact: ReactiveVariable<false> | ReactiveVariable<true>
    speed: number = 1
    speedChanged: Listener<[number, number]>
    speedReact: ReactiveVariable<number>
    stroked: boolean = false

    线样式是否启用,默认false

    strokedChanged: Listener<[boolean, boolean]>
    strokedReact: ReactiveVariable<false> | ReactiveVariable<true>
    strokeStyle: ESJStrokeStyle = ...

    线样式

    strokeStyleChanged: Listener<[ESJStrokeStyle, ESJStrokeStyle]>
    strokeStyleReact: ReactiveVariable<ESJStrokeStyle>
    toDestroyFuncStr: undefined | string = ...

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

    toDestroyFuncStrChanged: Listener<[undefined | string, undefined | string]>
    toDestroyFuncStrReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    trailTime: number = 0
    trailTimeChanged: Listener<[number, number]>
    trailTimeReact: ReactiveVariable<number>
    updateFuncStr: undefined | string = ...

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

    updateFuncStrChanged: Listener<[undefined | string, undefined | string]>
    updateFuncStrReact: ReactiveVariable<string> | ReactiveVariable<undefined>
    useCalcFlyToParamInESObjectWithLocation: boolean = false

    是否使用 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[] = ...

    支持的编辑模式,包含 ESVisualObject 支持的模式以及平移模式

    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 area(): number

      获取地理矢量的面积

      返回 number

    • get areaChanged(): Listener<[number, number]>

      获取面积变化的事件

      返回 Listener<[number, number]>

    • get attachedViewers(): Set<ESViewer>

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

      返回 Set<ESViewer>

    • get calcFlyInParamEvent(): Listener

      获取计算飞入参数事件

      返回 Listener

      计算飞入参数事件

    • get calcFlyToParamEvent(): Listener

      获取计算飞向参数事件

      返回 Listener

      计算飞向参数事件

    • get completeJson(): JsonValue

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

      返回 JsonValue

    • get createdEvent(): Event<[]>

      获取对象创建事件。

      返回 Event<[]>

    • get currentDistance(): number

      返回 number

    • set currentDistance(value: number): void

      参数

      • value: number

      返回 void

    • get currentDistanceChanged(): Listener<[number, number]>

      返回 Listener<[number, number]>

    • 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 fillColor(): [number, number, number, number]

      获取填充颜色

      返回 [number, number, number, number]

    • set fillColor(value: [number, number, number, number]): void

      设置填充颜色

      参数

      • value: [number, number, number, number]

        填充颜色值

      返回 void

    • get fillGround(): boolean

      获取面是否贴地

      返回 boolean

    • set fillGround(value: boolean): void

      设置面是否贴地

      参数

      • value: boolean

        面是否贴地的布尔值

      返回 void

    • get fillMaterial(): string

      获取面的材质

      返回 string

    • set fillMaterial(value: string): void

      设置面的材质

      参数

      • value: string

        面的材质值

      返回 void

    • get fillMaterialParams(): JsonValue

      获取面的材质参数

      返回 JsonValue

    • set fillMaterialParams(value: JsonValue): void

      设置面的材质参数

      参数

      返回 void

    • 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 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 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 geoPath(): any

      返回 any

    • get geoPolylinePath(): GeoPolylinePath

      返回 GeoPolylinePath

    • set geoPolylinePath(value: GeoPolylinePath): void

      参数

      返回 void

    • 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 perimeter(): number

      获取地理矢量的周长

      返回 number

    • get perimeterChanged(): Listener<[number, number]>

      获取周长变化的事件

      返回 Listener<[number, number]>

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

      获取拾取事件

      返回 Event<[ESJPickedResult]>

      拾取事件

    • get pointColor(): [number, number, number, number]

      获取点的颜色

      返回 [number, number, number, number]

    • set pointColor(value: [number, number, number, number]): void

      设置点的颜色

      参数

      • value: [number, number, number, number]

        点的颜色值

      返回 void

    • get pointMaterial(): string

      获取点的材质

      返回 string

    • set pointMaterial(value: string): void

      设置点的材质

      参数

      • value: string

        点的材质值

      返回 void

    • get pointMaterialParams(): JsonValue

      获取点的材质参数

      返回 JsonValue

    • set pointMaterialParams(value: JsonValue): void

      设置点的材质参数

      参数

      返回 void

    • get pointOutlineColor(): [number, number, number, number]

      获取点的轮廓颜色

      返回 [number, number, number, number]

    • set pointOutlineColor(value: [number, number, number, number]): void

      设置点的轮廓颜色

      参数

      • value: [number, number, number, number]

        点的轮廓颜色值

      返回 void

    • get pointOutlineWidth(): number

      获取点的轮廓宽度

      返回 number

    • set pointOutlineWidth(value: number): void

      设置点的轮廓宽度

      参数

      • value: number

        点的轮廓宽度值

      返回 void

    • get pointSize(): number

      获取点的大小

      返回 number

    • set pointSize(value: number): void

      设置点的大小

      参数

      • value: number

        点的大小值

      返回 void

    • get pointSizeType(): ESJRenderType

      获取点的大小类型

      返回 ESJRenderType

    • set pointSizeType(value: ESJRenderType): void

      设置点的大小类型

      参数

      返回 void

    • get ratio(): number

      返回 number

    • set ratio(value: number): void

      参数

      • value: number

      返回 void

    • get ratioChanged(): Listener<[number, number]>

      返回 Listener<[number, number]>

    • get strokeColor(): [number, number, number, number]

      获取线的颜色

      返回 [number, number, number, number]

    • set strokeColor(value: [number, number, number, number]): void

      设置线的颜色

      参数

      • value: [number, number, number, number]

        线的颜色值

      返回 void

    • get strokeGround(): boolean

      获取线是否贴地

      返回 boolean

    • set strokeGround(value: boolean): void

      设置线是否贴地

      参数

      • value: boolean

        线是否贴地的布尔值

      返回 void

    • get strokeMaterial(): string

      获取线的材质

      返回 string

    • set strokeMaterial(value: string): void

      设置线的材质

      参数

      • value: string

        线的材质值

      返回 void

    • get strokeMaterialParams(): JsonValue

      获取线的材质参数

      返回 JsonValue

    • set strokeMaterialParams(value: JsonValue): void

      设置线的材质参数

      参数

      返回 void

    • get strokeWidth(): number

      获取线的宽度

      返回 number

    • set strokeWidth(value: number): void

      设置线的宽度

      参数

      • value: number

        线的宽度值

      返回 void

    • get strokeWidthType(): ESJRenderType

      获取线的宽度类型

      返回 ESJRenderType

    • set strokeWidthType(value: ESJRenderType): void

      设置线的宽度类型

      参数

      返回 void

    • get timePosRots(): any

      返回 any

    • 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

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

      参数

      • 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

    • 清空飞向参数

      返回 void

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

      返回 void

    • 触发飞入事件

      参数

      • duration: number = 1

        飞入持续时间,默认为 1

      返回 void

    • 触发飞向事件

      参数

      • duration: number = 1

        飞向持续时间,默认为 1

      返回 void

    • 计算一个多边形是否在另一个多边形内部

      参数

      返回 undefined | boolean

      如果在内部返回 true,不在内部返回 false,不满足条件返回 undefined

    • 计算地理矢量的面积

      返回 undefined | number

      地理矢量的面积,如果点数不足 3 则返回 undefined

    • 获取对象的边界球

      参数

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

      包含边界球信息的 Promise

    • 计算地理矢量的缓冲区

      参数

      • radius: number = 500

        缓冲区半径,默认为 500

      • 可选units: string

        单位,可选

      返回 undefined | ESJVector3D[][]

      缓冲区的位置数组,如果不满足条件则返回 undefined

    • 裁切当前地理矢量

      参数

      • position: [number, number, number][]

        用来裁切多边形的多边形的位置数组

      返回 { positions: any; status: string }

      裁切结果,包含状态和位置数组

    • 计算地理矢量中两点之间的距离

      返回 undefined | number

      两点之间的距离,如果点数不足 2 则返回 undefined

    • 计算地理矢量的周长

      返回 undefined | number

      地理矢量的周长,如果点数不足 3 则返回 undefined

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

      参数

      • 可选language: string

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

      返回 Property[]

      属性列表。

    • 返回 boolean

    • 返回 boolean

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

      参数

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

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

      返回 void

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

      参数

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

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

      返回 void

    • 将对象从指定视口中移除。

      参数

      • viewer: ESViewer

        要移除对象的视口。

      返回 void

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

      返回 any

      支持的编辑模式数组

    • 类型参数

      • T extends { tryDestroy(): void }

      参数

      • obj: T

      返回 T

    • 返回 undefined

    • 类型参数

      • T extends { tryDestroy(): void }

      参数

      • obj: T

      返回 T

    • 更新编辑状态,根据编辑绑定模式启动相应的编辑模式

      返回 void

    • 返回 {
          allowPicking: boolean;
          arcType: string;
          collision: boolean;
          currentPoiShow: boolean;
          currentTime: number;
          depthTest: boolean;
          devTags: ReactiveVariable<undefined | string[]>;
          duration: number;
          execOnceFuncStr: undefined | string;
          extras: ReactiveVariable<JsonValue>;
          filled: boolean;
          fillStyle: ReactiveVariable<ESJFillStyle>;
          flyInParam: ReactiveVariable<undefined | ESJFlyInParam>;
          flyToParam: ReactiveVariable<undefined | ESJFlyToParam>;
          ground: boolean;
          leadTime: number;
          loop: boolean;
          name: string;
          playing: boolean;
          pointed: boolean;
          points: ReactiveVariable<undefined | [number, number, number][]>;
          pointStyle: ReactiveVariable<ESJPointStyle>;
          ref: undefined | string;
          resolution: number;
          sharpness: number;
          show: boolean;
          speed: number;
          stroked: boolean;
          strokeStyle: ReactiveVariable<ESJStrokeStyle>;
          toDestroyFuncStr: undefined | string;
          trailTime: number;
          updateFuncStr: undefined | string;
      }

      • allowPicking: boolean

        是否允许拾取 默认false

      • arcType: string
      • collision: boolean

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

      • currentPoiShow: boolean
      • currentTime: number
      • depthTest: boolean
      • devTags: ReactiveVariable<undefined | string[]>

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

      • duration: number
      • execOnceFuncStr: undefined | string

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

      • extras: ReactiveVariable<JsonValue>

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

      • filled: boolean

        面样式是否启用,默认false

      • fillStyle: ReactiveVariable<ESJFillStyle>

        面样式

      • flyInParam: ReactiveVariable<undefined | ESJFlyInParam>

        飞入参数

      • flyToParam: ReactiveVariable<undefined | ESJFlyToParam>

        飞向参数

      • ground: boolean
      • leadTime: number
      • loop: boolean
      • name: string

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

      • playing: boolean
      • pointed: boolean

        点样式是否启用,默认false

      • points: ReactiveVariable<undefined | [number, number, number][]>

        点坐标数组 [number, number, number][] 默认undefined

      • pointStyle: ReactiveVariable<ESJPointStyle>

        点样式

      • ref: undefined | string

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

      • resolution: number
      • sharpness: number
      • show: boolean

        是否显示 默认true

      • speed: number
      • stroked: boolean
      • strokeStyle: ReactiveVariable<ESJStrokeStyle>

        线样式

      • toDestroyFuncStr: undefined | string

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

      • trailTime: number
      • updateFuncStr: undefined | string

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

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

      类型参数

      返回 T

      父类的类型

    • 完善版注册方法

      类型参数

      参数

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

      返回 string