2.7.1 倾斜摄影数据加载及拾取

科澜公司自主优化后的 osgb 数据,可通过 CooWasm 高效加载与拾取。 2-7-1-2

数据结构

倾斜摄影数据以特定结构存储,其中metadata.xml为核心信息文件,在配置数据加载路径时,需指向此xml文件。

2-7-1-1

数据加载

使用MeshLayer类实现倾斜摄影数据加载

var obj = new CooWasm.MeshLayer({
    url: "http://127.0.0.1:8088/Data/OSGB/metadata.xml"
}, state => {
    if (state) {//是否加载成功
        obj.Locate();//数据定位
    } else {
        obj = obj.destroy();
    }
})

倾斜摄影数据拾取

倾斜摄影数据拾取需借助辅助对象:长方体/球体,以下以长方体为例,展示整个拾取过程:

1.加载倾斜摄影数据: 2-7-1-3 2.创建辅助拾取用长方体:

var obj = new CooWasm.GeoCuboid({
    location: new CooWasm.Vec3Obj(120.2171958099, 30.208455402, 68.8648247495),//长方体位置
    scale: new CooWasm.Vec3Obj(19.5376302068, 9.1819055204, 11.0937951842),
    rotation: new CooWasm.Vec3Obj(0, 0, 10),
    renderMode: CooWasm.EnumRenderMode.NORMAL //渲染模式
}, state => {
    if (!state) {//是否加载成功
        obj = obj.destroy();
    }
});

2-7-1-4 3.隐藏辅助拾取用长方体:

将长方体的renderMode参数设置为CooWasm.EnumRenderMode.NULL,即颜色、深度均不绘制,使其在地图中不可见,避免干扰视觉效果。

obj.update({
    renderMode: CooWasm.EnumRenderMode.NULL
}, state => {
    console.log("update state:" + state);
})

4.创建拾取工具:

使用Picker创建拾取工具:

var picker = new CooWasm.Picker({
},(id)=>{
    console.log("拾取对象avatarUuid:" + id)
})

5.拾取交互:

鼠标悬停在数据区域时,对应数据会高亮显示,提示可拾取区域。 2-7-1-5

点击数据后,被拾取对象变色,同时回调函数返回其avatarUuid,用于后续业务处理。 2-7-1-6

CooWasm开发者中心操作指南(倾斜摄影)

1.选择功能模块: 在开发者中心左侧列表中,依次选择多源数据加载倾斜摄影2-7-1-7

2.创建倾斜摄影数据:点击创建倾斜摄影按钮,完成数据初始化。 2-7-1-8

2-7-1-9

3.创建辅助拾取体:点击创建辅助拾取用长方体,生成拾取辅助对象。 2-7-1-10

4.创建拾取工具:在工具栏中创建拾取工具,用于触发拾取操作。

2-7-1-11

5.执行数据拾取:在三维场景中选择目标数据,体验拾取交互效果。 2-7-1-12 2-7-1-13

CopyrightFile Modify: 2025-07-10 09:04:25

results matching ""

    No results matching ""