C# 给定一组点,计算点所覆盖区域的轮廓
我想找到由点覆盖的区域的轮廓多边形表示,因此假设我有一个点列表,看起来像下图: 我希望能够获得点所覆盖边界的多边形坐标,最好与最外部点保持一定距离: 检索到的多边形坐标应表示类似下图的形状:C# 给定一组点,计算点所覆盖区域的轮廓,c#,computational-geometry,C#,Computational Geometry,我想找到由点覆盖的区域的轮廓多边形表示,因此假设我有一个点列表,看起来像下图: 我希望能够获得点所覆盖边界的多边形坐标,最好与最外部点保持一定距离: 检索到的多边形坐标应表示类似下图的形状: 这种计算已经有了标准算法吗?您描述的形状是一个alpha形状(计算后添加了一个缓冲区),使用该算法 在C中提供了一个实现(当使用 -AA/COM>),CGAL包含C++中的开源实现。CGAL文档描述了基本算法,需要计算输入点的delaunay三角剖分,然后使用定义的半径“雕刻”外部。@HighPerf
这种计算已经有了标准算法吗?您描述的形状是一个alpha形状(计算后添加了一个缓冲区),使用该算法
在C中提供了一个实现(当使用<代码> -AA/COM>),CGAL包含C++中的开源实现。CGAL文档描述了基本算法,需要计算输入点的delaunay三角剖分,然后使用定义的半径“雕刻”外部。
@HighPerformanceMark实际上,这是一个带有缓冲区的alpha形状,而不是凸面外壳。凸面外壳是凸的,而不是凹的(如图所示)。