【实用工具】利用MeshLab进行模型数据的合并

数据准备

利用Blender构建两个模型,一个立方体Cube、一个圆柱体Cylinder,相同视角。

模型操作

打开MeahLab软件,按照下面流程进行操作。

【Filters】-->【Mesh Layer】-->【Mesh Booleans:Union】

将它们"合并"成一个统一的实体,同时处理重叠、相交部分,生成一个新的、拓扑正确的网格。

具体弹出对话框。

参数解释:
First mesh :选择参与布尔运算的第一个输入网格对象。
Second mesh :选择参与布尔运算的第二个输入网格对象。
Transfer系列选项:

Name 功能描述 适用场景
Transfer face color 将面片颜色从输入网格传递到输出网格 需要保留材质、或分区着色
Transfer vertex color 将顶点颜色从输入网格传递到输出网格 原始模型中有顶点着色(如热力图)
Transfer face quality 传递面片质量值(如曲率、误差等) 当进行网格分析时使用
Transfer vertex quality 传递顶点质量值 当进行网格分析时使用

注意:两个网格必须是封闭的流形体(watertight manifold),否则布尔运算可能失败或者产生错误结果。

生成的结果如下:

后记

但是,我这里用Blender生成的cube和cylinder,经过MeshLab的Compute Geometric measures,结果显示都不是watertight的,而且无法直接得到几何体的体积。但是,这里的模型合并又能够进行,且生成新的合并模型union体积和面积都是正确的。所以,问题出在哪里呢?


相关推荐
秋天的怀念_David1 天前
算法一千零一夜 · 第二十三夜 电力民生写成的曲线
java·程序人生·算法
郝学胜-神的一滴1 天前
AI 编程智能体 22:解析器赋能与实战落地全指南
人工智能·程序人生·游戏·unity·游戏引擎
Star(up up up)2 天前
Docker系列---Docker容器基本命令(新手小白保姆级实操教程)
运维·学习·程序人生·青少年编程·docker·容器·dubbo
Star(up up up)2 天前
Docker系列---Dockerfile镜像文件
人工智能·经验分享·学习·程序人生·docker·容器·github
郝学胜-神的一滴3 天前
游戏设计:原型与开发 18:Unity入门的第一课
人工智能·程序人生·游戏·ui·unity·游戏引擎
秋天的怀念_David4 天前
算法一千零一夜 · 作品相关:版权与致谢声明
程序人生·算法·学习方法
秋天的怀念_David4 天前
第二十二夜 · 数字迷雾
java·程序人生·算法
秋天的怀念_David5 天前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法