首页 理论教育 Dirichlet自由变形算法在三维空间中的应用优化

Dirichlet自由变形算法在三维空间中的应用优化

时间:2023-06-19 理论教育 版权反馈
【摘要】:由11.3.2节内容可知,Dirichlet自由变形算法在二维空间比较直观,推广到三维空间以后,涉及的Delaunay三角剖分和Voronoi图的生成由面变成体,数据量加大,算法复杂度加深。Dirichlet自由变形算法在三维空间的实现步骤如下:1)设计控制点集合,控制点可以在待变物体的表面上,也可以在物体的内部,但是物体需要变形的部分必须包含在控制点集合的凸包内。3)对单个点物体的Sibson邻居集合,进行Delaunay三角剖分,根据三角剖分结果,求物体点所在的Voronoi单元和Voronoi单元的体积。

Dirichlet自由变形算法在三维空间中的应用优化

由11.3.2节内容可知,Dirichlet自由变形算法在二维空间比较直观,推广到三维空间以后,涉及的Delaunay三角剖分和Voronoi图的生成由面变成体,数据量加大,算法复杂度加深。Dirichlet自由变形算法在三维空间的实现步骤如下:

1)设计控制点集合,控制点可以在待变物体的表面上,也可以在物体的内部,但是物体需要变形的部分必须包含在控制点集合的凸包内。

2)对设计好的控制点进行三角剖分,并保存剖分结果的四面体集合。对物体上的每个点遍历控制点的四面体集合,进而找出影响该物体点的控制点集合,即与每个物体点相应的Sibson邻居集合。

3)对单个点物体的Sibson邻居集合,进行Delaunay三角剖分,根据三角剖分结果,求物体点所在的Voronoi单元和Voronoi单元的体积。(www.xing528.com)

4)计算每个控制点剖分物体点Voronoi单元所生成的Voronoi单元及相应的体积,由每个控制点剖分求得的体积与物体点Voronoi单元体积之比即为控制点相对于物体点的Sibson坐标值。

5)对物体上的所有点进行3)、4)的操作,求出每个物体点的Sibson邻居的坐标值。

6)移动控制点,可以用任意方法移动一个或一组控制点,然后查找受到影响的物体点,并根据上一步的Sibson坐标值计算出物体点的新位置,从而达到物体的变形。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈