点列表的 3D 轮廓(凹包)

标签 3d points concave

我在 C# 中有一个 Vector3 点列表,我需要计算这些点的凹轮廓。 确实有很多引用资料,尤其是 -convex- 分辨率(我已经成功实现了,多亏了 graham 的算法),

但是,由于我现在需要有效地计算凹轮廓,所以我迷路了:维基百科确实列出了很多用于凸计算的资源,但没有列出 -concave-。

任何具有数学知识的人都可以指导我了解可用的凹包算法吗?

我也很关心性能,因此能够先验地对算法速度进行基准测试会非常有帮助。

谢谢。

最佳答案

“凹壳”不是一个定义明确的数学概念;有许多可能的算法给出不同的合理结果,这就是为什么它的资源很少。尝试使用谷歌搜索“3D alpha 形状”来寻找可能适合您需要的东西,例如http://www.cgal.org/Manual/3.2/doc_html/cgal_manual/Alpha_shapes_3/Chapter_main.html

关于点列表的 3D 轮廓(凹包),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8023301/

相关文章:

matlab - 按均值合并点云中的相似点

c++ - 检查由 3 个点定义的角是内角还是外角

python - 查找 xy 数据点图与 numpy 的所有交集?

language-agnostic - 有效地找到直线数组的交点

opengl - 凹多边形绘制

matlab - 如何获得3D凹形的体积?

javascript - 在 three.js 中将贝塞尔曲线转换为平面道路

java - Java 中的透视 3D 投影

math - 3D 中圆和弧的边界框

ios - 如何从 AVDepthData 制作 3D 模型?