三维GIS开源项目Cesium使用教程:3dtiles转三维模型的方法
1、创建文件夹并安装3dtiles-tools工具。
npm init
npm install 3d-tiles-tools2、创建python脚本,将3dtiles文件夹中的b3dm、i3dm、cmpt都转换为glb模型。
import os
import json
output_dir = f"./output/glb/"
if not os.path.exists(output_dir):
os.makedirs(output_dir)
with open("./model/tileset.json") as f:
data = json.load(f)
children = data["root"]["children"]
for child in children:
uri = child["content"]["uri"]
print(f"开始转换{uri}")
input = f"./model/{uri}"
if uri.endswith("b3dm"):
filename = uri.replace("b3dm", "glb")
output = f"{output_dir}{filename}"
os.system(f"npx 3d-tiles-tools b3dmToGlb -i {input} -o {output}")
elif uri.endswith("i3dm"):
filename = uri.replace("i3dm", "glb")
output = f"{output_dir}{filename}"
os.system(f"npx 3d-tiles-tools i3dmToGlb -i {input} -o {output}")
elif uri.endswith("cmpt"):
filename = uri.replace("cmpt", "glb")
output = f"{output_dir}{filename}"
os.system(f"npx 3d-tiles-tools cmptToGlb -i {input} -o {output}")
print("全部处理完成")
3、打开blender软件,点击脚本菜单,创建脚本。使用脚本将文件夹中的glb模型都导入到场景中。
import bpy
import os
import pathlib
# 设置GLB文件所在的目录路径
glb_root = pathlib.Path("E:\\temp\\3dtiles\\output\\glb")
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete(use_global=False)
# 遍历目录并导入GLB文件
for file_path in glb_root.glob("*.glb"):
bpy.ops.import_scene.gltf(filepath=str(file_path))
print('全部导入完成')4、通过blender导入obj模型。
最后更新于1年前
本文由人工编写,AI优化,转载请注明原文地址: 三维GIS开源项目Cesium使用教程:3dtiles转三维模型的方法
推荐阅读
Windows系统PyTorch安装教程:CUDA 12.1环境配置与TorchText版本兼容性指南
24442025-10-08
百度地图授权弹窗解决方案:商用授权、AK申请与屏蔽方法详解
13972026-03-20
IntelliJ IDEA常见问题解决方案大全:服务面板、Maven报错、启动故障处理
3432026-04-14
GeoServer连接达梦数据库完整指南:空间数据配置与常见问题解决
232026-04-15
程序员常用技术大全:从编程语言到开发工具完整指南
4922025-10-19
VMware Workstation 16激活码及许可证密钥获取方法
25612025-10-26