三角测量非平面多边形

问题描述 投票:3回答:2

我想三角测量非平面多边形(即,顶点不位于相同的3D平面)。多边形由许多点(几百个)的。该三角面不必光滑。事实上,密集的是,就更好了。

我最初的想法是:

  • NURBS
  • 产生额外点“多边形内”,并运用3D Delaunay三角。
  • 只是把一个(或几个)多个顶点“中间”,并将它们与轮廓顶点连接。

我不知道它的这些想法适用于我的情况,或许还有更好的办法吗?

更多细节:虽然轮廓上的点是几百个,他们可以在3分组到〜10子集,让每一个子集接近于一条直线。如此产生的线仍然没有在同一个平面上,但。我们可以想想鸟类,它飞多边形的羊群,但不完全在同一垂直高度。

3d polygon mesh triangulation
2个回答
0
投票

你可能想看看Point Cloud Library。除其他外,它可以做表面重建。


8
投票

最后我做了以下内容:

  1. 安装一个平面的点。
  2. 项目点到面的配合。
  3. 变换点到平面拟合的坐标系,从而使每一个点有一个2D坐标(x,y)和一个深度z
  4. 计算点云的边界。
  5. 生成所述边界内的额外的2D点(一个可以使用等距点或扭曲的点,与任何一个密度喜欢)。
  6. 运行上的所有点二维Delaunay三角剖分(边界+生成点)。
  7. 内插基于边界的深度值所生成的内点的深度值。可以使用任何类型的内插的 - 我用MATLAB的triscatteredinterp(),它做得很不错。
  8. 翻译所有点后面使用从逆变换(3)
  9. 使用来自(6)的三角测量和在(8)中获得的点。

你可以在这里看到的结果:http://www.youtube.com/watch?v=4AqHxKsM7Iw&feature=g-upl

© www.soinside.com 2019 - 2024. All rights reserved.