本文介绍了点列表的三维轮廓(凹船体)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有Vector3类型分在C#中的列表,我需要计算这些凹轮廓。这确实有很多引用各地,尤其是对-convex-分辨率(我已经成功地已经实施,由于格雷厄姆的算法),

I have a list of Vector3 points in c#, and I need to calculate the concave contour of these.There's really a lot of references around, especially for -convex- resolution (which I have successfully implemented already, thanks to graham's algorithm),

但是,因为我需要的是现在有效地计算出一个凹轮廓,我迷路了:维基百科也列出了很多凸计算资源,但没有为-concave -

however, since my need is now to effectively compute a concave contour, I'm lost: wikipedia does list a lot of resources for convex calculation, but none for -concave-.

有人用数学知识,可以给我一个领先的可用凹壳算法?

Anybody with math knowledge that can give me a lead on the available concave hull algorithms?

我对性能的关注,也因此能以基准算法速度先验将是非常有益的。

I have a concern for performance, too, so being able to benchmark the algorithm speed a priori would be very helpful.

感谢。

推荐答案

凹壳'不是一个明确的数学概念;有很多可能的算法给出不同的合理的结果,这就是为什么有它的资源很少。尝试在Google上搜寻3D阿尔法形状'的东西,可能会满足您的需求,如:的

'Concave hull' is not a well-defined mathematical concept; there are many possible algorithms giving different reasonable results, which is why there are few resources on it. Try googling '3D alpha shapes' for something that might suit your needs, e.g. http://www.cgal.org/Manual/3.2/doc_html/cgal_manual/Alpha_shapes_3/Chapter_main.html

这篇关于点列表的三维轮廓(凹船体)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-14 00:14