JSAPI Three API Reference
    正在准备搜索索引...

    类 Tiles3DClipPlan

    3DTiles 开挖可视化分析。在指定多边形区域内将 3DTiles 模型裁切出一个坑, 并在坑底贴图、四周生成贴图侧壁,模拟"挖坑"效果。

    待开挖的 3DTiles 必须设置 enableClip = true 才会被裁切;未设置的 tileset 不受影响。 同一引擎中同一时刻只支持一个 plan 生效。

    const tileset = engine.add(new mapvthree.Default3DTiles({
    url: '...',
    enableClip: true,
    }));

    const plan = engine.add(new mapvthree.Tiles3DClipPlan({
    area: [[lng, lat], [lng, lat], ...],
    depth: 300,
    bottomImg: 'bottom.png',
    wallImg: 'wall.png',
    }));
    await plan.build();
    plan.enabled = true;

    层级

    • EngineObject3D
      • Tiles3DClipPlan
    索引

    构造函数

    • 创建 Tiles3DClipPlan 实例。

      参数

      • 可选options: {
            area?: [number, number][];
            bottomColor?: string;
            bottomHeight?: number;
            bottomImg?: string;
            depth?: number;
            enabled?: boolean;
            showBottom?: boolean;
            showWall?: boolean;
            splitNum?: number;
            wallColor?: string;
            wallImg?: string;
        } = {}
        • 可选area?: [number, number][]

          开挖区域多边形,经纬度数组,无需闭合

        • 可选bottomColor?: string

          坑底颜色,未提供贴图时生效

        • 可选bottomHeight?: number

          坑底绝对海拔(米);优先级高于 depth

        • 可选bottomImg?: string

          坑底贴图 URL

        • 可选depth?: number

          开挖深度(米);与 bottomHeight 二选一

        • 可选enabled?: boolean

          是否立即启用

        • 可选showBottom?: boolean

          是否显示坑底

        • 可选showWall?: boolean

          是否显示侧壁

        • 可选splitNum?: number

          沿每条边的插值采样数,默认 60

        • 可选wallColor?: string

          侧壁颜色,未提供贴图时生效

        • 可选wallImg?: string

          侧壁贴图 URL

      返回 Tiles3DClipPlan

    方法

    • 采样地表高度并重建坑底/侧壁,是开挖生效的必要步骤。 异步执行,必须 await 完成后再设置 enabled = true 或读取派生属性。 修改 area / splitNum 后需重新调用。

      返回 Promise<boolean>

      成功返回 true;当前 area 顶点不足或注册表为空时返回 false。

    • 同步重建坑底/侧壁。仅适用于改 bottomHeight / depth 等不需要重新采样的属性, 比 build() 更轻量。需要在 build() 至少成功一次后才能使用。

      返回 boolean

      缓存可用返回 true,否则 false(此时应回退到 build())。

    • 采样指定经纬度位置的 3DTiles 地表海拔,可用于在场景中放置贴地物体。 仅会在 enableClip = true 的 3DTiles 中查询。 墨卡托与 ECEF 投影均可使用。

      参数

      • lnglat: [number, number]

        经纬度

      返回 number

      海拔(米),未命中返回 null

    • 同 sampleHeightAt,但直接接受墨卡托坐标,节省一次坐标转换。 仅墨卡托投影下有效;ECEF 投影请使用 sampleHeightAt(lnglat)。

      参数

      • mercX: number
      • mercY: number
      • 可选tilesets: Cesium3DTileset[]

      返回 number

    • 同 enabled = value,但不会触发自动 build()。 用于希望完全自己控制 build() 时机的场景。

      参数

      • value: boolean

      返回 void

    访问器

    • set area(value: any[]): void

      开挖区域多边形 [[lng, lat], ...],无需闭合。 修改后需调用 build() 才会生效,避免边界与裁切区域不同步。

      参数

      • value: any[]

      返回 void

    • set bottomHeight(value: any): void

      坑底绝对海拔(米)。设为 null 回到由 depth 计算坑底的模式。 已 build() 过时立即生效,未 build() 时下次 build() 才生效。

      参数

      • value: any

      返回 void

    • set enabled(value: boolean): void

      总开关。首次设为 true 且未调用过 build() 时会自动触发一次 build()。

      参数

      • value: boolean

      返回 void