spring20002
路人甲
路人甲
  • 注册日期2004-09-23
  • 发帖数86
  • QQ
  • 铜币286枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:6761回复:17

逐点插入法建立Delaunay三角网

楼主#
更多 发布于:2005-05-30 01:07
<P>逐点插入法进行构网,分析该算法中制约运行速度的因素,在三角网拓扑关系、三角形的查找、LOP算法(Local Optimization Procedure)等方面进行了优化处理,使之有了较高的执行效率。<BR>  1 数据结构<BR>  在采用逐点插入进行Delaunay三角剖分的过程中,存在大量的查询操作,利用数据结构提供三角形之间的拓扑信息,能够有效地提高算法效率。边结构应包含点与三角形的信息,三角形结构应包含点与边的信息,再考虑到构网过程中动态的数据更新,算法中采用了双向链表结构,以方便于剖分过程中新旧边(三角形)的添加、删除工作。<BR>  2 算法原理<BR>  逐点插入法是Lawson在1977年提出的,该算法思路简单,易于编程实现。基本原理为:对于已有的三角网络,向其中插入一点,该点与包含它的三角形三个顶点相连,形成三个新的三角形,然后逐个对它们进行空外接圆检测,通过交换对角线的方法来保证所形成的三角网为Delaunay三角网。<BR>  3 算法基本步骤</P>
<P>      a: 点在三角形内,b:点在三角形边上。<BR>  在按a进行剖分时,添加了三条新边及三个新三角形NT,删除了旧三角形T。同样,在b的情况中,记录点所在的边E,根据拓扑关系,找出该边的左右相邻三角形T1,T2,添加四条新边和四个新三角形NT,删除T1,T2以及边E。<BR>  构网的关键是对新剖分出的三角形用LOP算法进行优化,其基本过程为:新三角形与周围的三角形构成共用同一条对角线的四边形,逐个对四边形中的两个三角形进行空外接圆检测,如果满足空外接圆准则,则略过。如果不满足,则用另一对角线替换现有对角线,在交换对角线后,又会产生相应的新四边形,继续进行空外接圆检测。这种方法可连续进行,直到全部满足空外接准则为止。这个过程是随着数据点P的逐次插入,与三角剖分同时进行的,可以通过递归调用优化程序来实现。<BR>  </P>
喜欢0 评分0
icebreaker
路人甲
路人甲
  • 注册日期2003-10-18
  • 发帖数118
  • QQ
  • 铜币400枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2005-11-05 12:28
<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
csj418
路人甲
路人甲
  • 注册日期2004-12-23
  • 发帖数49
  • QQ
  • 铜币131枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-11-12 09:39
<P><img src="images/post/smile/dvbbs/em02.gif" /></P>
<P>支持,顶</P>
举报 回复(0) 喜欢(0)     评分
2002cpp32
路人甲
路人甲
  • 注册日期2006-01-16
  • 发帖数3
  • QQ
  • 铜币106枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2006-01-16 14:56
<P>谢谢提供信息!</P>
<P>支持以下!</P>
举报 回复(0) 喜欢(0)     评分
zjjtwmj
路人甲
路人甲
  • 注册日期2003-08-02
  • 发帖数370
  • QQ
  • 铜币988枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2006-01-22 08:55
谢谢,能详细点吗?
举报 回复(0) 喜欢(0)     评分
gis_520
路人甲
路人甲
  • 注册日期2006-04-30
  • 发帖数7
  • QQ
  • 铜币119枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2006-04-30 09:57
<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />我顶!!1
举报 回复(0) 喜欢(0)     评分
amanwang
路人甲
路人甲
  • 注册日期2006-02-23
  • 发帖数26
  • QQ
  • 铜币190枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2006-05-12 23:05
<P>谢谢还有吗?</P>
举报 回复(0) 喜欢(0)     评分
amanwang
路人甲
路人甲
  • 注册日期2006-02-23
  • 发帖数26
  • QQ
  • 铜币190枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2006-05-13 00:01
<P>谁有用TIN生成等高线的程序?</P>
<P>不胜感激。</P>
举报 回复(0) 喜欢(0)     评分
mueryer
路人甲
路人甲
  • 注册日期2006-04-26
  • 发帖数42
  • QQ
  • 铜币232枚
  • 威望0点
  • 贡献值0点
  • 银元0个
8楼#
发布于:2006-05-18 11:00
<img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em03.gif" /><img src="images/post/smile/dvbbs/em04.gif" /><img src="images/post/smile/dvbbs/em07.gif" /><img src="images/post/smile/dvbbs/em08.gif" />
举报 回复(0) 喜欢(0)     评分
xzqrsm
路人甲
路人甲
  • 注册日期2006-04-08
  • 发帖数5
  • QQ
  • 铜币123枚
  • 威望0点
  • 贡献值0点
  • 银元0个
9楼#
发布于:2006-05-24 17:18
可否再就数据结构,以及点的查找提供些资料!
举报 回复(0) 喜欢(0)     评分
上一页
游客

返回顶部