三角网格等值线自动生成方法及程序实现

 

 三角网格法.

1
 区域网格化与网格点数值化
1.1
 区域网格化 根据区域内离散点的分布与数量,将网格化分两类:规则网格与非规则网格.前者指将区域按一定间距划分成距阵网格,因而有利于刻化规则边界区域;后者主要指三角形网格和任意四边形网格,可以刻化任意边界的区域.任意四边形网格与矩形网格均可简单地转换成三角网格,因此,本文着重讨论三角网格上等值线的绘制.此外,在有限元数值计算中常采用三角单元剖分,通过数值计算可直接得到三角网格点上的数据值,可省去网格点数值化这一较繁琐的计算工作.
1.2
 网格点数值化 网格点数值化指用已知离散点列上的值来估计网格点上的值,主要方法如表1所示:

1 各种网格点内插估值方法对比


方法 性质

逼近程度 唯一性 外推能力 运算速度 适用范围
距离加权法 分布均匀 时好 很差 很差 快 均匀分布
方位法 分布均匀 时好 很差 很差 快 均匀分布
趋势面法 不高 很强 强 很快 不宜做准确等值线
迭加法 很高 较强 很强 较快 非均匀分布也可
加权最小二乘法 较高 很强 强 较慢 非均匀分布时要求计算速度快
克里格法 高 很强 很强 慢 均可,适用性广

  可见,各种内插方法的特点不同,使用时可根据需要选用适宜的方法.因此,对一离散点列P1,P2,…,Pn,Pi=(Xi,Yi,Zi),i=1,2,,N,N为离散点个数,网格点数值化的结果为G1,G2,,Gnp,Gi=(Xi,Yi,Zi),i=1,2,,Np,Np为网格结点数,这样就可以在网格上进行等值线追踪了.

2
 等值点计算与追踪
  一些通用绘图软件如SuferGraphtools等绘等值线采用矩形网格化.在矩形网格上可通过简单的数学公式判断和计算等值点,但等值线的游动追踪[2]却十分复杂.矩形网格上等值线的追踪必须考虑3个方面:确定等值线进入网格的大致走向;确定等值线进入网格后的出边.对于任意一个有等值线经过的矩形网格,等值线的走向有4种可能:自下而上、自左而右、自上而下、自右而左,如图1所示.在矩形网格上,涉及等值线走向和出边的判断十分繁琐,需采用全方位的搜索才能得到等值点的集合.当遇到复连通区域或等值线存在多分支时,判断和确定等值线的游动更是难度大.三角网格上等值线的搜索与之相比,格外简单易行.下面详细阐述三角网格上等值线生成的原理.

三角网格等值线自动生成方法及程序实现

成建梅 陈崇希 孙红林
(
中国地质大学) (铁道部第四勘测设计院三处)

摘 要 总结各种等值线生成的方法及特点,详细阐述直接利用三角形网格生成等值线的原理、实现方法,独立开发出基于Windows的功能齐全的Contour绘图包,并嵌入地下水有限元模拟软件,为地下水模拟成果的表示提供了便利.
关键词 三角网格,内插估值,等值线追踪,Contour绘图包.

  等值线图是众多领域成果表示的重要图件之一.绘制等值线是对大量离散的、又具有一定规律的几何量值或物理量值,用数学的方法插值变换成图的过程.等值线绘制常采用网格法.各种网格法绘制等值线的步骤一般为:离散数据网格化;网格点数值化;等值点的计算;等值线追踪;光滑和标记等值线[1.本文对比各种网格化方法和网格点内插方法的特点,重点介绍一种非规则网格生成等值线的方法——

  

3 三角网格等值线的几种走向
  对于任意三角形单元,若存在棱边满足条件式(1),其等值线可能以以下3种方式通过三角形单元:
  为了方便地确定等值点位置,并便于追踪等值线,分别给予ijjkki三条棱边定权数为123.若有等值线通过对应棱边,则其权数为分配权,否则为0.总权数ωijk为:
    ωijk=ωij+ωjk+ωki.            (2)
若ωiijk3,则等值线不穿过此单元,若ωiijk=3,则等值线通过ijjk边;若ωiijk=4,则等值线通过kiij边;若ωiijk=5,则等值线通过jkki.若某棱边ij存在有Z0的等值点,则等值点坐标应用线性插值公式得到:
(3)
3.3
 等值线的追踪
3.3.1   单元遍历 首先,对某一级(mdz)
等值线Z0,用公式(1)对区内所有单元进行遍历,记录该等值线通过的单元数(nElement)、单元号以及相应的总权数.针对每个含等值线的单元,记录其有等值线穿过的特征棱边L1(i,j)L2(i,j)及各自边对应的等值点坐标.
3.3.2
 棱边性质判断 判断棱边集合中所有的棱边是否为边界边,若L1是边界边,记LB1(L1)1,否则为0.同样判断L2,记入LB2(L2).
3.3.3
 等值线的追踪 在所有有等值线通过的单元(nElement个单元)内追踪,追踪法则为:等值线游动必然穿过共棱边又有等值线通过的单元.其步骤如下:
  (1)寻找等值线起点:先寻找第一个尚未用过的、且棱边为边界边的单元.若找到,比较该单元的两个特征棱边,若均为边界边,以任意一边为起点边,另一个为后续边,否则,以特征棱边为边界的边作为起点边,另一个为后续后;若第一次未找到尚未用过的、且棱边为边界边的单元,找任意一个尚未用过的单元,视任意一边为起点边,另一个为后续边.然后,分别将起点边和后续边对应的等值点坐标存入等值线线结构的第一点与第二点.将后续边对应的结点记入P1P2,为下一步的追踪做准备,并给该单元标记“用过”标志.
  (2)寻找共棱边的邻接单元:寻找与结点P1P2所连边共棱边的、且尚未用过的单元,将该单元的非共棱特征边作为下一个后续边,记入P1P2,对应的等值点坐标存入线结构,并置该单元“用边”标志.
  (3)重复(2)过程,若找不到共棱边的、且未用过的单元,同时仍有未用的单元,表明存在等值线分支.因此,重复(1)(2)(3)过程,直至所有有等值线穿过的单元全部用完为止,表明本级所有等值线分支均追踪完毕.
4
 Contour软件包实现
4.1
 数据结构
  点结构为:TYPE POINTAPI
       x as single; 记录点的X坐标
       y as single; 记录点的Y坐标
       END TYPE
  分支线结构为:TYPE LINEAPI
       Flag as integer; 标记分支等值线是否封闭
       nPoint as integer; 记录分支等值线上等值点总数
       XY(nPoint) as POINTAPI; 记录分支等值线上等值点的坐标
       END TYPE
  分级等值线结构为:TYPE CURVEAPI
       nLine as integer; 记录等值线分支数
       LINE(nLne) as LINEAPI; 记录各分支等值线
       END TYPE
用以上数据结构记录每一级等值线的分支个数、分支线封闭情况、点数及坐标.
4.2
 软件功能
  (1)具有Windows特性,菜单驱动,界面友好,操作灵活方便.
  (2)任意选择等值线分级文件,适用于等间距和不等距等值线的绘制.等间距时,可根据给定的初始值与终止值自动计算各等值线.
  (3)用户可选用各种线型与颜色表示等值线.
  (4)以用户选定的格式与字体标注等值线分级值.
  (5)图可自由缩放和随时打印.
  (6)模块独立性强,容易移值、嵌入用户自己的软件系统中.
4.3
 实例 笔者在开发“地下水数值模拟前后处理软件系统’中采用了以上方法,并编制了Contour for Windows 1.0 软件包嵌入该系统.

图1 单一矩形网格中等值线的走向
3 三角网格等值线追踪
3.1 数据准备 需要有三角网格的结点、单元编号信息.结点物理量值如水位、浓度值可通过克里格插值求得,也可由其他计算程序直接给出.将上述数据归纳如下:(1)网格结点坐标:Xi,Yi,i=1,2,…,Np,Np为结点总数;(2)单元IJK编号:IJK(i,j),j=1,2,3,i=1,2,…,Ne,Ne为区域内网格单元总数;(3)网格结点物理量值:Zi,i=1,2,…,Np.

2 网格加密示意
  另外,当网格尺度较大时,无法达到刻画等值线的要求,而网格较密时,内插过程相对慢而复杂.笔者提出一种简捷的办法得到网格结点值,即网格自动加密法——先利用离散点形成粗网格,并计算出粗网格的结点值;然后对粗网格进行加密,如图2所示,每个三角单元可细分为四个小单元.细网格上的结点值可直接由相邻的粗网结点插值得到.
3.2
 内插等值点的平面位置 首先进行等值点的判断[3.对于某一量值为Z0的等值线而言,单元棱边IJ之间存在等值点的条件是: (Zi-Z0)*(Zj-Z0)≤0.                (1)
  若Zi-Z0等于零,则等值点必通过i一点,此种方式不利于下一步等值点的追踪,因而只须做简单处理,Zi=Zi-ε,ε为很小的正数,使等值线在充分靠近Zi的格点的附近通过.



4为利用Contour包绘制的某渗流区等水位线图.

4 用Contour绘制的某渗流区等水位线
5
 结 论
  本文总结了等值线绘制的方法、步骤.鉴于三角网格的通用性与优越性,本文详细介绍了三角网格上等值线追踪与生成的过程.三角网格法等值线追踪的原则是:等值线的游动必然穿过共棱边且有等值线通过的单元.与矩形网格法相比,有以下显著特点:
  (1)对于分布不均匀的离散点,无需变换成规则网格点,可直接利用原始离散点构成三角网,插补个别网格点,提高绘制等值线的效率;
  (2)直接利用原始离散点内插等值线,对特征高程点部位任意小的等值线图均可绘制,而矩形网格法却不行;
  (3)三角网格法边界自由、灵活.三角网格法等值线追踪过程较矩形网格法简单明了,易于实现.

参考文献
 1 黄淼云,张学忠,辛冬根,等.计算机图形技术.北京:人民交通出版社,1995.
 2 陆润民,杨惠英.计算机绘图.北京:清华大学出版社,1988.
 3 刘幸.直接法自动绘制等值线.武汉水利电力大学学报,199528(6)588593.

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值