这里写自定义目录标题
Delaunator工具
Delaunator三角剖分快速生成库的地址
https://www.5axxw.com/wiki/content/l0n637
trangles
trangles是构成三角形的点集合的索引
若当前有如下坐标(x,y)的点集
points=[[23,1],[4,1],[3,2],[8,2]]//四个点
生成的trangles的如下:
trangles=[1,2,3,3,0,1]
如图所示,其中[1,2,3]为第一个三角形,[3,0,1]为第二个三角形
按照顶点顺序可得出三角形的各自的三条边,按照顺序边也有了方向,这里按照trangles的索引顺序,各个半边分别为e12,e23,e31,e30,e01,e13,每一对半边都互为孪生半边,如e31和e13
halfedges
halfedges[i]是基于trangles顶点集进行计算,i为半边的索引,这里e12为第一条边索引为0,起始顶点为1。
halfedges[i]存储的是存在该半边相邻三角形的孪生半边的起始顶点索引,没有相邻的三角形则为-1
这里集合为:
halfedges=[-1,-1,5,-1,-1,2]
其生成算法如下:
trangles=[1,2,3,3,0,1]//顶点索引为0,1,2,3,4,5
e12无相邻的三角形,则halfedges[0]=-1。
e23无相邻的三角形,则halfedges[1]=-1。
e31相邻三角形为[3,0,1],孪生半边为e13为[3,0,1]的边,起始顶点为1,在trangles中的索引索引为5,则halfedges[2]=5。
e30无相邻的三角形,则halfedges[3]=-1。
e01无相邻的三角形,则halfedges[4]=-1。
e13相邻三角形为[1,2,3],孪生半边为e31为[1,2,3]的边,起始顶点为3,在trangles中的索引索引为2,则halfedges[5]=2。
就此完成了halfedges