머리말
기존 요구사항에서는 기존 OSGB 데이터 일부를 CesiumJS에 로딩해 표시해야 하는데, CesiumJS 자체가 osbg 형식의 데이터 렌더링을 지원하지 않기 때문에 변환이 필요합니다. 오늘 소개해드릴 3D Tiles 포맷입니다.
오픈소스 도구 다운로드
실제로 github에는 이런 도구들이 많이 있는데, 각 도구의 사용법은 비슷합니다.이번에는
Cesium3DTilesConverter 를 사용했습니다.
압축을 풀면 다음과 같은 파일이 있습니다.이 디렉토리를 환경 변수로 추가하거나 이 디렉토리에서 직접 명령 터미널을 열 수 있습니다.Converter.exe 명령을 사용하면 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 -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에 배포됩니다
.