【实用工具】利用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体积和面积都是正确的。所以,问题出在哪里呢?


相关推荐
CoderYanger7 小时前
A.每日一题:1140. 石子游戏 II
java·程序人生·算法·leetcode·游戏·职场和发展·深度优先
HugoStudio_SWAN7 小时前
洛谷 P1319 / P1320 压缩技术——同一枚硬币的正反面
c++·学习·程序人生·算法
HugoStudio_SWAN10 小时前
洛谷 P1321 单词覆盖还原——从蜡板上的密信到数字水印
c++·学习·程序人生·算法
可爱系程序猿11 小时前
libcrypto-3-x64.dll 加载失败排查:OpenSSL 3 版本、PATH 顺序与 x64 依赖如何对应
linux·运维·服务器·程序人生·电脑
凯程序猿1号1 天前
ChatCut online 整理备份恢复演练录屏:快照、校验值与恢复时间怎样留证
程序人生·github·电脑
涵美女程序猿1 天前
ChatCut online 剪容器镜像构建录屏:Dockerfile、日志与镜像摘要怎样对应
程序人生·电脑
CoderYanger2 天前
A.每日一题:3345. 最小可整除数位乘积 I
java·数据结构·程序人生·算法·leetcode·面试·学习方法
HugoStudio_SWAN4 天前
【擦除重绘】C++ 控制台动画:弹跳 Logo DVD 屏保效果
开发语言·c++·学习·程序人生