CGAL的边界体积

       

         本章描述了对于给定的点集计算特定类的最佳外接对象的算法。如果类由d维欧氏空间中的所有球体组成,并且best被定义为具有最小半径,则我们获得最小的封闭球体。

1、介绍

        边界体积可用于获得复杂对象的简单近似值。例如,考虑决定两个移动多边形当前是否相交的问题。一个明显的解决方案是离散时间,并对任何时间步长执行完全交叉测试。如果多边形大部分时间都相距很远,则没有必要这样做。相反,在两个多边形的初始位置计算简单的边界体积(例如,圆)。在随后的时间步骤中,移动边界圆之间的相交测试取代实际的相交测试;只有当圆确实相交时,才执行多边形之间昂贵的相交测试。在实践中,边界体层次通常用于简单边界体之上,以更准确地近似复杂对象。

        边界体积也经常用于提取对象的几何特性。例如,点集的最小封闭环可以用来测试一组点是否近似共面。在这里,环面的宽度(或其面积,或我们使用的另一个标准)是衡量这种性质的好方法。

2、多维空间的边界球体

        我们为任意维度提供类Min_sphere_of_spheres_d<Traits>,以计算点和球体的最小封闭球体。维度以及输入类型取决于所选择的特征类。

        为任意维度提供类Min_sphere_of_spheres_d<Traits>,以计算点和球体的最小封闭球体。维度以及输入类型取决于所选择的特征类。

        上面使用Min_sphere_of_spheres_d来计算点的最小圆。此软件包还提供了类Min_circle_2和Min_sphere_d,但它们的速度较慢,并且仅应在Min_sphere_of_spheres_d不支持的齐次坐标的情况下使用。

3、多维中的有界环

        为任意维度提供类Min_anulus_d<Traits>,以计算一组点的最小封闭环。在2D中,环空由两个同心圆组成,在3D中由两个同轴球体组成。

4、二维中的各种边界区域

        提供解决方案的其他类是平面中的椭圆(Min_ellipse_2<Traits>)、矩形(Min_rectangle_2())、平行四边形(Min_parallelogram_2()和条形(Min_strip_2()),并具有适当的最优性标准。

5、多维空间中的近似有界椭球

        虽然该包提供了一个精确的最小2D椭圆,但它还提供了类Approximate_min_ellipsoid_d<Traits>,以计算具有用户指定的近似比率的近似最小体积封闭椭球。

6、矩形P中心

        边界体积还定义对象的几何“中心点”。例如,如果两个对象要匹配(近似),一种方法是首先应用将其最小封闭球体的中心映射到彼此上的平移。当然,更简单的中心是可能的(重心、边界框的中心),但在某些情况下,更高级的边界体积可能会产生更好的结果。考虑几个中心点而不是一个中心点也是有意义的。例如,我们提供了覆盖具有两到四个最小框(rectangular_p_center_2())的平面点集的算法。下面是一个用三个盒子覆盖的例子;中心点显示为红色。

CGAL 5.6 - Bounding Volumes: User Manual 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值