更新(2014年1月12日):亲爱的,我一直在尝试尽可能地让Darren博士在MATLAB中对算法进行编码,但我还没有成功。我谦卑地请求一位优秀的撒玛利亚人应该帮助我使用代码并共享m文件。再次感谢。
我打算使用MATLAB / FORTRAN在RBC上获取Voronoi图。我需要以下具体信息。
请在RBC和RBC_2上找到包含XYZ节点坐标的相应文本文件RBC_1的链接,其中包含来自Delaunay三角测量的面部连接数据(RBC_1和RBC_2在Zip文件中)。
https://www.dropbox.com/s/slan053xbr2e864/RBC.zip?dl=0
我试图遵循John Burkardt关于单位范围的工作:http://people.sc.fsu.edu/~jburkardt/m_src/sphere_voronoi/sphere_voronoi.html但它不起作用。
提前谢谢。
N.B任何评论和建议都将受到高度赞赏。
答案 0 :(得分:2)
查看您的文件,P
中有一组点R^3
,几何体的(2 - 流形)曲面三角剖分T
:
通过注意voronoi复合体双重到底层三角剖分V
,可以很容易地将其转换为曲面voronoi complex T
。这意味着以下内容:
Ei
中的每个主边T
,voronoi复合体中存在双边Vi
。 Pi
中的每个主要节点P
,voronoi复合体中有一个双单元Vc
。 voronoi复合体中的每个双边缘跨越三角形的圆形中心,该三角形与三角剖分中的相关主边缘相邻。
这种二元性意味着构造voronoi复合体的以下算法:
calculate circumcentres CC for all triangles in T
for (all edges Ei in T)
find triangles [Ti,Tj] in T adjacent to edge Ei
push voronoi edge Vi between centres [CC(Ti),CC(Tj)]
associate edge Vi with voronoi cells associated with edge endpoints [Pi,Pj] in Ei
endfor
将这个付诸实践会为您的网格提供以下voronoi复合体:
正如其他人所指出的那样,你的问题非常广泛,我不会试图在这里回答所有问题。
我已经制作了一组双网格构建例程here。尽管如此,基于你周末轰炸我的大量电子邮件,让我发表一些评论:(i)你应该投入一些精力来理解一些计算几何 - 不要只是盲目地使用提供的代码,以及(ii)如果你确实使用了提供的代码,请确保你努力适当地引用它。