ArcGIS Pro:OSGB数据转换及发布服务流程

本文介绍了如何在ArcGIS Pro中处理OSGB数据,包括坐标确认、转换为multipatch、模型调整及发布为I3S服务的详细步骤。通过Data interoperability将OSGB转换,并利用merge工具合并模型,最后移动至正确位置并发布为场景服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      随着倾斜摄影技术的发展,大家在工作中经常接触到各种类型的倾斜摄影模型,比如OSGB、dae、obj、slpk(Esri)等。

      Esri采用的spk i3s标准(Indexed 3D Scene),是Esri推出的开放标准。I3S标准作为开放的标准已经得到了市面上主流的倾斜摄影测量建模软件的支持,如Bentley的 ContextCapture(国内简称为Smart 3D)、Pix4D、Vricon,这些软件均支持基于I3S标准的数据格式SLPK的导出,生成的SLPK格式的模型可通过ArcGIS Pro上传到Portal上并发布成三维服务。

    

    如果您希望将生成的三维模型用于ArcGIS产品线,建议在倾斜摄影建模软件导出时直接选择Esri I3S标准的数据格式SLPK,这样可以直接加载至pro中发布服务,避免格式转换。下图是ContextCapture软件中在输出结果中选择输出slpk。



    您也可以选择使用Drone2Map forArcGIS,基于无人机影像快速生成倾斜摄影测量建模成果,并能导出成基于I3S标准的数据格式SLPK,导出的SLPK格式的数据可通过Drone2Mapfor ArcGIS直接上传到Portal for ArcGIS上并发布成三维服务。

 

    如果是SLPK,那么就万事大吉了。但在实际中,有些用户拿到的是OSGB格式。

    目前࿰

要在Vue中读取OSGB或OBJ格式的三维模型,可以使用Three.js这一JavaScript库。具体实现步骤如下: 1. 在Vue项目中安装Three.js和OBJLoader.js或者OSGBLoader.js。 ```bash npm install three npm install three-obj-loader npm install osgjs ``` 2. 在Vue组件中引入Three.js和OBJLoader.js或者OSGBLoader.js。 ```javascript import * as THREE from "three"; import { OBJLoader } from "three-obj-loader"; import { OSGJSLoader } from "three/examples/jsm/loaders/OSGJSLoader.js"; OBJLoader(THREE); ``` 3. 创建一个Three.js场景和渲染器。 ```javascript const scene = new THREE.Scene(); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(window.innerWidth, window.innerHeight); document.body.appendChild(renderer.domElement); ``` 4. 加载OBJ或OSGB格式的三维模型,并将其添加到场景中。 ```javascript const loader = new THREE.OBJLoader(); loader.load( "path/to/obj", (obj) => { scene.add(obj); }, (xhr) => { console.log((xhr.loaded / xhr.total) * 100 + "% loaded"); }, (error) => { console.error(error); } ); ``` ```javascript const loader = new OSGJSLoader(); loader.load( "path/to/osgb", (model) => { scene.add(model); }, (xhr) => { console.log((xhr.loaded / xhr.total) * 100 + "% loaded"); }, (error) => { console.error(error); } ); ``` 5. 渲染场景并更新。 ```javascript function animate() { requestAnimationFrame(animate); renderer.render(scene, camera); controls.update(); } animate(); ``` 可以根据实际需求进行修改和扩展。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值