从具有 x、y 和 z 坐标的点生成网格
问题:从 3D 点(具有 x、y 和 z 坐标)生成网格。
我拥有的是 3D 空间中的点(带有 x、y 和 z 坐标),您可以在图像 1 中看到它。
输出是图像 2 或图像 3 或图像 4。简而言之,它将是网格。如果我有网格,可以提供其材料。
我看到很多人说 Delaunay 三角剖分或约束 Delaunay 三角剖分将帮助我生成网格,但我最发现的是它在 2D 点(仅具有 x 和 Y 坐标)中的实现。
但我的问题是:我有 3D 点,正如您从图 1 中看到的那样。Delaunay
三角剖分或约束 Delaunay 三角剖分能否与 3D 点一起正常工作?如果是,那么如何?或者我是否必须找到另一种算法来从 3D 点生成网格?
注意:关于 2D 点的 Delaunay 三角剖分的一个很好的解释可以在 这里
Problem: Mesh generation from 3D points (with x, y and z coordinates).
What I have is points in 3D space (with x, y and z coordinates) you can see it in image 1.
What would be the output is image 2 or image 3, or image 4. In short it would be mesh. Material on it can be provided if I have the mesh.
I have seen many people say about Delaunay triangulations or constrained Delaunay triangulations will help me in mesh generation, but what I mostly found is its implementation in 2D points (with only x and Y coordinates).
But my problem is: I have points in 3D as you can see from image 1.
Will Delaunay triangulations or constrained Delaunay triangulations work fine with 3D Points? If yes, then how? Or do I have to find another algorithm for generating mesh from 3D points?
Note: One good explanation of Delaunay triangulations for 2D points can be found here
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这里有一些关于网格生成及其相关工作的其他好链接。
• TetGen: 优质四面体网格生成器 http://wias-berlin.de /software/tetgen/
• CGal-计算几何算法库
http://www.cgal.org/。
http://www.cgal.org/Manual/latest /doc_html/cgal_manual/packages.html#Pkg:三角测量3。
http://www.cgal.org/Manual/latest/doc_html /cgal_manual/contents.html#part_VI。
http://www.cgal.org/Manual/latest/doc_html /cgal_manual/Surface_reconstruction_points_3/Chapter_main.html。
3D 表面网格生成 - http://www.cgal.org/ Manual/3.3/doc_html/cgal_manual/Surface_mesher/Chapter_main.html
• GTSLibrary – GNU 三角曲面库。
http://gts.sourceforge.net/index.html
• Jonathan Shewchuk - http://www.cs.berkeley.edu/~jrs/
http://www.cs.cmu.edu/~quake/robust.html
• VTK: 可视化工具包 (VTK) 是一个开源、免费的软件系统 http://www.vtk.org/。
• 体积和曲面网格划分 – http://www .cse.ohio-state.edu/~tamaldey/mesh.htm。
• Poly2Tri: 开源 CDT 库 http://code.google.com /p/poly2tri/。
• CM2Mesh 工具 – http://www.computing-objects.com/索引.php。
• 自适应曲面细分 – http://fluxionsdividebyzero.com/ p1/math/geometry/g046.html#_3D
• CUBIT – CUBIT 几何和网格生成工具包。
http://cubit.sandia.gov/index.html
• 几何实际应用 - http://www.ics.uci.edu/~eppstein/geom .html
• SlimDX - SlimDX 是一个免费的开源框架,使开发人员能够使用 .NET 技术(例如 C#、VB)轻松构建 DirectX 应用程序
http://slimdx.org/
here are some other good links for mesh generation and its related work.
• TetGen : A Quality Tetrahedral Mesh Generator http://wias-berlin.de/software/tetgen/
• CGal-Computational Geometry Algorithms Library
http://www.cgal.org/.
http://www.cgal.org/Manual/latest/doc_html/cgal_manual/packages.html#Pkg:Triangulation3.
http://www.cgal.org/Manual/latest/doc_html/cgal_manual/contents.html#part_VI.
http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Surface_reconstruction_points_3/Chapter_main.html.
3D Surface Mesh Generation - http://www.cgal.org/Manual/3.3/doc_html/cgal_manual/Surface_mesher/Chapter_main.html
• GTSLibrary – The GNU Triangulated Surface Library.
http://gts.sourceforge.net/index.html
• Jonathan Shewchuk - http://www.cs.berkeley.edu/~jrs/
http://www.cs.cmu.edu/~quake/robust.html
• VTK: The Visualization Toolkit (VTK) is an open-source, freely available software system http://www.vtk.org/.
• Volume and Surface Meshing – http://www.cse.ohio-state.edu/~tamaldey/mesh.htm.
• Poly2Tri: An open source CDT library http://code.google.com/p/poly2tri/.
• CM2Mesh Tools – http://www.computing-objects.com/index.php.
• Adaptive tessellation – http://fluxionsdividebyzero.com/p1/math/geometry/g046.html#_3D
• CUBIT – The CUBIT Geometry and Mesh Generation Toolkit.
http://cubit.sandia.gov/index.html
• Geometry in Action - http://www.ics.uci.edu/~eppstein/geom.html
• SlimDX - SlimDX is a free open source framework that enables developers to easily build DirectX applications using .NET technologies such as C#, VB
http://slimdx.org/
3D Delauny 三角剖分将生成 (3D) 体积网格。我想你想要的是一个嵌入 3D 的(2D)表面网格,它近似给定的点集。
根据数据类型(小噪音或大噪音、异常值等),您可以采取不同的方法。请注意,您始终可以预处理数据(例如,删除异常值、平滑数据或估计正常值)。
对于噪声很小且没有异常值的定向点集,您可以考虑泊松曲面重建(例如,在 Michael Kazhdan、M. Bolitho 和 Hugues Hoppe 中。泊松曲面重建。在 Symp 中. 关于几何处理,第 61-70 页,2005。)。
请注意,您可以预处理数据以满足要求,请参阅例如 正常估计。这是一个实现泊松曲面重建的 C++ 库(有很好的解释):从点集进行 CGAL 曲面重建
对于散点数据,请参见示例 Ohtake, Y.;别利亚耶夫,A. & Seidel, HP 使用紧凑支持的基本函数进行 3D 分散数据插值的多尺度方法 Shape Modeling International, 2003, 2003, 153-161。它使用分层方法来创建多个插值级别。
另一种处理高度不均匀或噪声分散数据的方法是Zhao, H.-K.;奥舍,S。 Fedkiw, R. 使用水平集方法进行快速表面重建计算机视觉中的变分和水平集方法,2001 年。论文集。 IEEE 研讨会,2001 年,194-201。它使用变分方法和偏微分方程(特别是水平集方法)。
3D Delauny triangulation will result in a (3D) volume mesh. I suppose what you want is a (2D) surface mesh embedded in 3D which approximates the given point set.
Depending on the type of data (little or big noise, outliers, etc.) you can take different approaches. Note that you can always pre-process your data (e.g. to remove outliers, smooth the data, or estimate normals).
For oriented point set with little noise and no outliers, you can consider Poisson Surface Reconstruction (e.g. in Michael Kazhdan, M. Bolitho, and Hugues Hoppe. Poisson Surface Reconstruction. In Symp. on Geometry Processing, pages 61-70, 2005.).
Note that you can pre-process your data to fullfill the requirements, see for example Normal estimation. Here is a C++ library implementing Poisson Surface Reconstruction (with nice explanations): CGAL Surface Reconstruction from Point Sets
For scattered point data see for example Ohtake, Y.; Belyaev, A. & Seidel, H. P. A multi-scale approach to 3D scattered data interpolation with compactly supported basis functions Shape Modeling International, 2003, 2003, 153-161. It uses a hierarchical approach to create multiple interpolation levels.
Another approach for highly non-uniform or noisy scattered data is Zhao, H.-K.; Osher, S. & Fedkiw, R. Fast surface reconstruction using the level set method Variational and Level Set Methods in Computer Vision, 2001. Proceedings. IEEE Workshop on, 2001, 194-201. It uses variatonal methods and PDEs (particularly level set methods).
ENigMA - 主要是为了解决偏微分方程而开发的,它还具有约束表面和体积网格生成器。仍不确定将来是否将其作为开源发布。
https://www.sites.google.com/site/billyaraujo /enigma/体积网格生成
ENigMA - Developed mostly to solve PDEs it also has a constrained surface and volume mesh generator. Still not sure if going to release it as open source in the future.
https://www.sites.google.com/site/billyaraujo/enigma/volume-mesh-generation