三角剖分
三角剖分定义:对于在空间中的一个点集P,三元整数组T=[a,b,c]称为P的一个三角剖分,其中点集P的元素数为n,T的元素数为N。则有:
1、 P中任何不共线的三点都可以作为一个三角形的顶点。
2、 每个三角形只包括P中的三个点(作为顶点),即其他点不能在三角形的内部,也不能在边界上
3、 三角形的内部是两两不想交的(没有重叠部分);
4、 所有三角形的并是点集P的凸包。
设有n个数据点的P,其中b个数据点处于其凸包的边界上,则三角形的个数N=2n-b-2。
证明如下:凸包多边形的内角和=(b-2)Pi;
不在边界上的数据点有n-b个
所有三角形的内角和为N*Pi;
因此:(n-b)*Pi+(n-2)*Pi = N*Pi;
得证:N=2n-b-2
设共有e条边,则e=3n-b-3;
证明如下:在三角剖分中,每条内部边,边的两边各有一个三角形,边界上的边每边只有一个三角形,每个三角形有三条边,因此3N=e*2-b;
因此得证e=3n-b-3;
区域三角剖分算法根据判别准则的不同而不同,形成了计算机算法的一个学科方向,其基本的方法有:
1、 对所有的数据点,每两点连一条边,然后将这些边从短到长编号,以这样的顺序逐条加入到三角剖分的边集合中,使之满足三角剖分的条件(也就是说按顺序排除那些破坏三角剖分条件的边),从而将这个剖分作为初始部分,这个剖分称为贪婪的最短边剖分;
2、 取不共线的三点形成一个只有一个三角形的剖分,逐次加入点,并修改局部,保证每次加入修改的部分都是关于某种判别准则最优的,得到的一般也只是一个初始剖分。
3、 给出一个初始剖分,然后对每两个相邻的三角形构成的四边形关于某种判别准则优化。