最近正在开展工业三维模型解析和可视化技术跟踪研究学习,结合各类工业三维模型文件格式情况,为了后续的三维模型规范化、解析处理和渲染显示的需要,主要基于Blender、assimp、trimesh、vtk等框架实现三维模型格式转换,部分模型通过转换实现了轻量化。目前支持常用的三维模型格式,比如支obj/fbx/gltf/glb/stl/ply等等。具体转换服务的核心代码如下,供大家参考学习,关于如何基于fastapi编写rest服务,请参考另一篇文章。
一、运行环境
python3.10环境,安装了fastapi、byd、pyassimp、trimesh和vtkb等。
二、格式转换效果图
主要展示了转换前后的模型浏览和大小对比,这里只展示了fbx-->obj格式对比,目前支持obj/fbx/gltf/glb/stl/ply等常见的三维模型格式,转换方式包括6种,第三部分代码中放开了一种,供参考。
1.转换前(fbx格式,大小392KB)