【发布时间】:2018-09-19 12:32:40
【问题描述】:
我有一个程序可以接受一个网格和一个平面 并将 3D Mesh 投影到平面上。 但是,该程序仅在 3D 网格未根据给定平面“折叠”时运行良好。
这里的“折叠”是指 3D 网格上的至少两个 3D 面/边投影到目标平面上的两个相交或重叠的 2D 面/边。
例如在图片中,如果我将 XY(水平)平面描绘的 3D Mesh 作为输入,则程序运行良好。 但是,如果上面的 3D 网格是用 XZ 或 YZ(两个垂直)平面给出的,我想生成一个例外。 在给定投影平面的情况下,如何通过算法检测 3D 网格是否“折叠”?
【问题讨论】:
-
只需执行投影并检查是否有交叉点。没有比这更优雅的解决方案了。
-
@NicoSchertler,你至少知道这里的科学/技术问题叫什么名字吗?我确信有一项研究可以为我指明正确的方向。
-
您正在尝试确定投影是否为单射/双射。这通常是表面参数化中面临的问题。这种情况的一个变体是局部注入性,在这种情况下,您会尝试防止折叠但允许(远距离部分的)全局交叉点。
-
谢谢,伙计,这正是我想要的。
标签: math 3d geometry mesh projection