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

前言

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

下载开源工具

在github上其实有好多这种工具,每个工具的用法大同小异,这次使用
Cesium3DTilesConverter

在这里插入图片描述
解压完后是以下这些文件,可以把这个目录添加为环境变量,也可以直接在这个目录打开命令终端,我们要是用的就是Converter.exe这个命令
在这里插入图片描述
OSGB文件结构
在这里插入图片描述
命令参数

Options:
  -?, -h, --help           Displays help on commandline options.
  
  -f, --format <format>    OSGB or GDAL(required), OSGB 为倾斜摄影格式数据, GDALGDAL支持的面(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 -y -i D:\WORK\3d-tiles-tools\Production_1  D:\WORK\3d-tiles-tools\test1

注意:此命令应该在输入文件夹应该在Data文件夹的上一级,即 D:\WORK\3d-tiles-tools\Production_1\osgb文件夹根目录
转换后文件样式
在这里插入图片描述
然后根据所需部署到nginx上

猜你喜欢

转载自blog.csdn.net/mcband/article/details/133253131