【发布时间】:2020-12-26 07:13:09
【问题描述】:
我正在尝试在 tetgen 的帮助下清理一些网格。使用 python 子进程启动 tetgen 并将我的输出保存在这样的文件中
run(["tetgen", "-d", Model+"\\Cat\\Cat.ply"], stdout= log_output, encoding="utf-8")
我得到这个结果:“为方便起见,我将只输入感兴趣的各方”
Warning: Point #53491 is coincident with #25597. Ignored!
Warning: A segment and a facet intersect.
segment: [669,668] tag(-1).
facet triangle: [28562,28564,28563] tag(-1)
Warning: A duplicated triangle (24976,52879,52863) tag(-1) is ignored.
...
但这不是我想要的,因为要清理这个网格,我必须消除一些“重复”的三角形并推断它们我有这个 regex:
\((\d+),\s(\d+),\s(\d+)\) and \((\d+),\s(\d+),\s(\d+)\)
上网看了一下tetgen的"-d"表达式的输出如下: 检测相交的构面。
Facet #5672 intersects facet #5730 at triangles:
(2872, 2874, 2873) and (2834, 2873, 2833)
Facet #5726 intersects facet #5750 at triangles:
(2872, 2873, 2834) and (2868, 2874, 2872)
Facet #5730 intersects facet #5750 at triangles:
(2834, 2873, 2833) and (2868, 2874, 2872)
这会导致与我可用的正则表达式匹配,而我目前得到的输出不会发生这种情况。
问题: 最后我想知道是否有人知道表达式“-d”给出的输出信息差异的原因,以及最终他是否能告诉我我做错了什么!提前致谢。
【问题讨论】:
标签: python graphics subprocess tetgen