如何修复非共面多边形?

时间:2017-08-22 03:27:00

标签: polygon plane

我有一个由表面刻面描述的三维物体。它被保存为OFF文件。但是,曲面(多边形)中的某些顶点并不完全共面。有没有什么好主意来修复这些非共面多边形让它们变得共面? 我的想法是 1)对于每个多边形,找到大多数顶点落入平面的多边形的基准平面,例如,顶点到平面的距离小于机器精度(但是如何找到这个基准平面?); 2)对于未落入多边形基本平面的这些顶点,找到顶点相关多边形的基准平面的交点,并将其作为该顶点的新位置。

有什么问题吗?你有更好的主意吗?

谢谢, 唐老娅

1 个答案:

答案 0 :(得分:0)

也许你应该集中精力修复四边形,然后一遍又一遍地重复。假设两个相邻的三角形具有顶点abc和cbd,共享边缘bd。 计算四面体abcd的体积,如果它很小,则决定展平。或者,也许更好的是,计算bd处的二面角,如果是,则展平 靠近pi;是的,这可能是一个更好的衡量标准。

一旦您决定要修复abcd,将d投影到由abc确定的平面,并将d替换为该投影点。现在abcd是共面的。您可以对所有排列执行此操作,并替换移动最少的点。

不幸的是,这似乎是依赖于顺序的,并且可能导致循环 在所有三角形对上反复重复。