如何使用CGAL获得2D alpha形状后的其余三角形?

问题描述 投票:0回答:1

从CGAL文档中,可以从Delaunay三角剖分创建alpha_shape_2:

CGAL::Alpha_shape_2< Dt, ExactAlphaComparisonTag >::Alpha_shape_2(Dt& dt, FT alpha = 0, Mode m = GENERAL)

但是该操作破坏了三角剖分。

在我的问题中,我有一堆三角剖分的点。我需要使用alpha形状算法识别“正确的”三角形。我已经从delaunay三角剖分中计算出了自己(计算自己的外接圆半径,依此类推),因为我没有找到从alpha_shape_2中提取其余三角形的方法(我可以提取alpha形状的边缘,但不能提取内部三角形) 。只能使用CGAL吗?

例如在matlab(ouch)中可以做到:

shp = alphaShape(points.x,points.y);
shp.Alpha = alpha;
tri = alphaTriangulation(shp);
bf = boundaryFacets(shp);

侧面问题:cgal的alpha值的定义是什么?我的是:r_c / h> alpha,其中r_c是三角形外接圆半径和h和大小参数?

cgal
1个回答
0
投票

关于附带问题,请参阅this section。关于最初的问题,我不确定要确切地了解什么,但是可以使用以下代码迭代所有三角形并获得其分类:

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