ARCGIS PRO3 三维模型OSGB转SLPK场景数据集

news/2024/5/11 12:56:44

1.前言

因项目工作,需要将三维模型发布到arcgisserver上,但arcgisserver只支持slpk格式的模型,于是我开启了漫长的三维模型格式转换之旅,在这里记录下本人踩过的坑。

2.三维模型数据情况

2.1 模型大小:在20GB以上;
2.2 格式:osgb格式;
2.3 坐标系:cgcs2000平面

3.曾试过的转换方法

3.1在网格大师转换

初始在arcgispro转slpk一直不成功、且转换效率很低,尝试利用网格大师转换,转换效率比较高,在arcgispro中也能加载显示,但是有一个致命缺点,网格大师转换出来的slpk在arcgispro转坐标时,无法识别出坐标,无法进行转换坐标,只能放弃用这个软件转换。
在这里插入图片描述

3.2 在arcgispro转换

利用arcgispro里的工具“创建集成网格场景图层内容”直接转换,设置输入数据集(可以是与metadata文件同目录下的Data文件夹,或者是下一层的tile文件夹)、输出的slpk路径、选择metadata文件路径、输出坐标系等等。(在这里埋个坑,我的路径用的是中文路径…)

在这里插入图片描述
最后当然是失败告终啦,跑着跑着直接整个arcgispro崩了,啥原因崩的都记录不下来。
**记录1:**初始设置的数据路径为中文路径,目标坐标系为模型坐标系cgcs2000,整个模型直接转换,进度条很快提示为98%,但过一段时间后arcgispro自动关闭,根据转换时观察到的内存占用情况,往往随着转换时间推移,内存占用越来越大,我的内存是16gb,所以一开始我怀疑是我的内存不够大,我增加至64gb的内存再尝试转换,发现也是一段时间后自动崩溃。期间发现转换约2gb的模型需要用到差不多2小时,效率非常低。
**记录2:**其后我尝试只采用很小一部分的模型(大概几百M)做转换测试,全部设置英文路径的情况下,目标坐标系为模型坐标系cgcs2000,转换较为迅速,但发布后无法正常加载,提示底图与图层的空间参考不一致,空间坐标设置有问题。
在这里插入图片描述
**记录3:**数据设置英文路径下,尝试设置其他坐标系(又是一个漫长之旅),尝试了很多坐标系,例如国家2000大地坐标和国家2000垂直坐标、国家2000平面坐标和默认垂直坐标,wgs84和对应的垂直坐标系等等。真的尝试了超级多,最后都以失败告终,无法运行工具、发布后加载时提示错误、直接啥也不提示只弹出一个地球但模型又加载不出来:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
**记录4:**最后发现坐标系一定要设置XY坐标为4326、垂直坐标系为5773!!!过来人告诉你一定要是这两个代码,错一个都不行。最后发布后能成功展示!

**记录5:**设置英文路径、坐标系也设置正确的情况下,对模型进行分块转换,但过程中还是提示了警告,根据观察,应该还是模型文件太大arcgispro识别错误导致的,出现这个提示的话,转换效率超级低,一个1个多GB的模型文件转换后的slpk是原文件大小的10倍…而且转换出来的slpk加载后会出现空洞的情况…继而的想法是将模型继续分更小的块进行转换,避免出现这个情况,但考虑到要转换的模型很多,细分转换工作效率超级低,而且有时候细分后还是会出现这个提示,没有搞懂这个提示的逻辑是啥。
在这里插入图片描述

**记录6:**既然细分模型大小后转换正常,想到不如利用批处理对每个tile文件直接转换,于是就是这样成功了!!!直接右键该工具选择批处理,所有设置和之前一样,选择多个tile文件,名称那里可以自己修改,这个批处理最后转换出来之后是一个slpk但包含了所选择的tile文件模型(这个批处理就是这么奇葩),而且效率比直接运行工具高非常多!!!注意模型文件太多了也还是会出现记录5的问题,但此时模型文件可以接近10个或几十个GB同时处理,也算解决大问题了。
在这里插入图片描述

在这里插入图片描述

4 总结

要想在arcgispro中实现效率较高地完成osgb转slpk,需注意如下事项:
(1)数据路径需为英文路径;
(2)模型文件不能过大,超过10GB的模型建议分块处理;
(3)模型输出坐标系设置,XY坐标系为4326、垂直坐标系为5337,错一不可;
(4)使用“创建集成网格场景图层内容”的批处理进行转换,效率高,支持较大的模型文件转换。


http://www.mrgr.cn/p/82742376

相关文章

ant design pro vue项目搭建-运行项目

1、克隆代码git clone --depth=1 https://github.com/vueComponent/ant-design-vue-pro.git2、依赖安装npm install提示eslint版本报错去除eslint,将package.json 中eslint相关配置删除 3、重新安装依赖完成,没有报错npm install 4、启动项目npm run serve 提示webpack配…

如何将本地项目第一次同步到gitee远程

一,Gitee账号的注册/登录 在gitee登录入口输入相关信息进行注册登录https://gitee.com/signup#lang=zh-CN 二,本地安装git客户端并配置用户信息 1.Git - 安装 Git (git-scm.com)根据提示点击下一步,安装完成后,在本地文件夹右键单击出现git相关指令,表示安装成功2.点击git…

网络安全实训Day15

写在前面 电子垃圾,堂堂恢复连载。本来不想分天数梳理了,但是最后要写实训报告,报告里还要有实训日记记录每日学的东西,干脆发这里留个档,到时候写报告提供一个思路。 网络空间安全实训-渗透测试 渗透测试概述 定义 一…

ZooKeeper 搭建详细步骤之一(单机模式)

ZooKeeper 搭建详细步骤之三(真集群) ZooKeeper 搭建详细步骤之二(伪集群模式) ZooKeeper 搭建详细步骤之一(单机模式) ZooKeeper 及相关概念简介 搭建模式简述 ZooKeeper 的搭建模式包括单机模式、集群模…

antd 日期控件RangePicker如何增加快捷键(日/周/月/年)

注意&#xff1a;快捷键是从当前日期往前推算的 效果 代码 <script><RangePickerranges{{日: [moment(new Date().setDate(new Date().getDate() - 1)), moment(new Date())],周: [moment(new Date().setDate(new Date().getDate() - 7)), moment(new Date())],月: […

SpringCloud(微服务介绍,远程调用RestTemplate,注册中心Nacos,负载均衡Ribbon,环境隔离,进程和线程的区别)【详解】

目录 一、微服务介绍 1. 系统架构的演变 1 单体架构 2 分布式服务 3 微服务 2. SpringCloud介绍 SpringCloud简介 SpringCloud版本 3. 小结 二、远程调用RestTemplate【理解】 1. 服务拆分 1 服务拆分原则 2 服务拆分示例 1) 创建父工程 2) 准备用户服务 1. 用户…

对于寻找替代FTP服务器的银行来说,该如何选择合适的方案?

FTP服务器在银行内部可谓应用广泛,如银行内部跨部门、跨地区文件传输,银行与外部合作单位文件传输等,常见的大文件传输银行常用的方式多为FTP应用,但对于银行来说,FTP服务器的缺陷也非常明显,具体表现在: 1. 传输速度 首先,传输速度是影响文件传输效果的重要指标。 FT…

openGauss MOT高吞吐量

MOT高吞吐量 MOT高吞吐量测试结果如下。 Arm/鲲鹏2路128核性能 下图是华为Arm/鲲鹏2路128核服务器TPC-C基准测试的结果。 一共进行了四类测试:MOT和openGauss基于磁盘的表各进行了2次测试。 其中两项测试是在单节点(无高可用性)上执行,这意味着没有向备节点执行复制。其余两…

【STM32+HAL】读取电池电量

一、准备工作 有关CUBEMX的初始化配置&#xff0c;参见我的另一篇blog&#xff1a;【STM32HAL】CUBEMX初始化配置 有关定时器触发ADC模式配置&#xff0c;详见【STM32HAL】ADC采集波形实现 有关软件触发ADC模式配置&#xff0c;详见【STM32HAL】三轴按键PS2摇杆 二、所用工具…

Node.js -- 包管理工具

文章目录 1. 概念介绍2. npm2.1 npm 下载2.2 npm 初始化包2.3 npm 包(1) npm 搜索包(2) npm 下载安装包(3) require 导入npm 包的基本流程 2.4 开发依赖和生产依赖2.5 npm 全局安装(1) 修改windows 执行策略(2) 环境变量Path 2.6 安装包依赖2.7 安装指定版本的包2.8 删除依赖2.…

.net6 webapi 部署到IIS

一、发布.net6 webapi 项目 1.1 visual studio 2022右键发布到文件夹。 二、增加IIS容器 2.1 控制面板 2.2 启用或关闭Windows功能 3.3 勾选Internet Information Services,点击确定进行安装 三、部署webapi到IIS 3.1 安装 dotnet-hosting-6.0.29-win.exe 3.2 创建应用…

faiss简单测试方法

先把仓库克隆到本地,我这边还需要改cmake环境,在project上面加 set(CMAKE_CUDA_COMPILER /usr/local/cuda-11.8/bin/nvcc) 构建 mkdir buildcmake -B build . 编译,只需要编译faiss这部分就可以,(主目录下有很多测试代码,编译很慢,只编译faiss会快很多) cd build make …

35K*14 薪,入职了!这公司只要不裁员,我能一直呆下去!

大家好,我是R哥。 说说最近的面试辅导,有个学员进了某个知名互联网公司,拿到了 35K*14 薪的好成绩,有不少粉丝留言问我,现在行情这么差,他是怎么做到的? 这篇拿他这个案例完整回顾一下吧,我管他叫小Y吧。 背景沟通 说下小Y的基本情况吧:小Y工作 5 年+,空窗期2个月+,…

Apollo 7周年大会:百度智能驾驶的展望与未来

本心、输入输出、结果 文章目录 Apollo 7周年大会&#xff1a;百度智能驾驶的展望与未来前言百度集团副总裁、智能驾驶事业群组总裁王云鹏发言 直播回放大会相关内容先了解 Apollo&#xfeff;开放平台 9.0架构图 发布产品Apollo 定义自己对于智能化的认知百度集团副总裁 王云鹏…

摒弃FTP、邮箱和网闸,怎么实现安全域之间数据传输?

数据传输对企业的重要性不言而喻。它不仅是企业实现信息共享和协作的基础,还是企业做出更好决策、优化客户关系以及推动创新发展的关键所在。企业基于数据保护和网络安全的考虑,将内部网络划分为不同的安全域,此时,安全域之间数据传输就具有更特殊的重要性。 FTP:通过在内…

数据结构——二叉树的顺序存储(堆)(C++实现)

数据结构——二叉树的顺序存储&#xff08;堆&#xff09;&#xff08;C实现&#xff09; 二叉树可以顺序存储的前提堆的定义堆的分类大根堆小根堆 整体结构把握两种调整算法向上调整算法递归版本 非递归版本向下调整算法非递归版本 向上调整算法和向下调整算法的比较 我们接着…

Acrobat Pro DC 2021:强大的PDF编辑软件

Acrobat Pro DC 2021是Adobe公司推出的一款全面而强大的PDF编辑软件&#xff0c;凭借其卓越的性能和丰富的功能&#xff0c;成为了PDF编辑领域的领军者。 Acrobat Pro DC 2021中文激活版下载 这款软件具备全面的PDF编辑功能&#xff0c;包括文本编辑、图片处理、页面组织等&…

XMU《计算方法》实验三 龙贝格算法

实验三 龙贝格算法 实验报告 一、代码 clear; fun = inline(input(请输入函数:f(x) = , s)); a = input(请输入下界 a = ); b = input(请输入上界 b = ); e = input(请输入误差限 e = );h = b - a; k = 1; N = 1; T(1, 1) = h / 2 * (fun(a) + fun(b)); while truesum = 0;for…

半导体机台文件导出,如何实现统一管理减轻运维压力?

半导体机台在半导体制造过程中会产生多种数据,这些数据对于设备的运行、监控、优化和故障诊断等方面都具有重要意义。以下是半导体机台可能产生的一些主要数据类型: 工艺控制数据:这包括在制造过程中的各个工艺步骤(如光刻、蚀刻、沉积等)中产生的数据。这些数据反映了制…