当前位置: 首页 > news >正文

将OSGB格式数据转换为3d tiles的格式

现有需求需要将已有的一些OSGB数据加载到CesiumJS中展示,但是CesiumJS本身不支持osbg格式的数据渲染所以我们需要将其转换一下,有两种格式可以转换一种是glTF格式,另一种是我们今天要介绍的3D Tiles格式

下载开源工具

在github上其实有好多这种工具,每个工具的用法大同小异,这是我找到的两个

Cesium3DTilesConverter 

 3dtiles

使用

Cesium3DTilesConverter 为例

解压完后是以下这些文件,可以把这个目录添加为环境变量,也可以直接在这个目录打开命令终端,我们要是用的就是Converter.exe这个命令

 OSGB文件结构

我们下载好的OSGB文件一般都是这中结构的,其中的文件夹名称结构不要改变

 命令参数说明

Options:-?, -h, --help           Displays help on commandline options.-f, --format <format>    OSGB or GDAL(required), OSGB 为倾斜摄影格式数据, GDAL 为GDAL支持的面(Polygon)数据-l, --level <level>      OSGB max level, OSGB处理到的最大级别-F, --field <field>      height field name(required for gdal), 指定GDAL数据集中的高度属性字段,此项为转换 GDAL 时的必须参数。-L, --layer <layer>      layer name(required when input isn't shapefile)-t, --thread <thread>    thread number, 处理线程数量-y, --yUpAxis            y up axis, 是否将gltf模型转为y轴朝上(仅对OSGB生效),如果是用Cesium for Unreal,需要指定yUpAxis-H, --height <height>    height offset(default value 0), OSGB高度偏移字段<INPUT> 输入数据的目录,OSGB数据截止到 `<DIR>/Data` 目录的上一级,GDAL参考GDAL数据格式。<OUTPUT> 输出目录。OSGB转换的3DTiles输出的数据文件位于 <DIR>/Data`目录, GDAL转换的3DTiles输出的数据文件位于<DIR>/Tile目录,tileset.json位于<DIR>根目录。

转换命令

Converter.exe -f OSGB --yUpAxis  <OSGB> <OUTPUT> 

示例

Converter.exe -f OSGB -yi D:\WORK\3d-tiles-tools\Production_1  D:\WORK\3d-tiles-tools\test1

注意:此命令应该在输入文件夹应该在Data文件夹的上一级

转换完成后的文件夹

部署到nginx

修改nginx配置

server {listen 80;server_name localhost;  # 或者替换为你的域名location / {alias C:/path/to/your/3d/tiles/data;  # 替换为你的3D Tiles数据的目录路径autoindex off;  # 禁用自动索引}
}

启动nginx

nginx.exe

注意:如果配置文件没有写对启动nginx可能会导致nginx关闭不彻底,注意将nginx彻底关闭后再启动nginx

查看结果

访问 http://localhost/tileset.json

 

http://www.lryc.cn/news/153049.html

相关文章:

  • 【易售小程序项目】小程序首页完善(滑到底部数据翻页、回到顶端、基于回溯算法的两列数据高宽比平衡)【后端基于若依管理系统开发】
  • 素数求原根
  • 【Apollo学习笔记】——规划模块TASK之PATH_ASSESSMENT_DECIDER
  • 09 mysql fetchSize 所影响的服务器和客户端的交互
  • DevEco Studio 配置
  • Nginx自动探活后端服务状态自动转发,nginx_upstream_check_module的使用
  • CSS 一个好玩的卡片“开卡效果”
  • lintcode 667 · 最长的回文序列【中等 递归到动态规划】
  • oracle sql语言模糊查询
  • 【Ubuntu】解决ubuntu虚拟机和物理机之间复制粘贴问题(无需桌面工具)
  • 解决ubuntu文件系统变成只读的方法
  • 高数刷题笔记
  • c++入门一
  • 2023年项目进度管理平台排行榜
  • 【设计模式】面向对象设计八大原则
  • python数分实战探索霍尔特法之销售预测python代码实现以及预测图绘制
  • java线程状态
  • 编译问题:error: ‘printf’ was not declared in this scope
  • 改变C++中私有变量成员的值
  • 线程唯一的单例
  • 明厨亮灶监控实施方案 opencv
  • 14 mysql bit/json/enum/set 的数据存储
  • 04_19linux自己撸内存池实战,仿造slab分配器
  • 【HDFS】XXXRpcServer和ClientNamenodeProtocolServerSideTranslatorPB小记
  • 二分,Dijkstra,340. 通信线路
  • Stable Diffusion---Ai绘画-下载-入门-进阶(笔记整理)
  • Java 乘等赋值运算
  • 【性能优化】聊聊性能优化那些事
  • k8s 查看加入主节点命令 k8s重新查看加入节点命令 k8s输入删除,重新查看加入命令 kuberadm查看加入节点命令
  • Scalene:Python CPU+GPU+内存分析器,具有人工智能驱动的优化建议