欢迎来到学术参考网

构建三维雨量面软件的研究与开发

发布时间:2015-07-04 20:19

作者:郭晓东 王世涛 赵斐苗

   [摘要]该应用软件采用borland公司c++builder6和opengl开发软件,利用delaunay三角形插入算法,完成了三维雨量面的模拟生成,具备三维雨量面的等雨量线和点雨量输出的基本功能。
  [关键词]三维雨量面 delaunay gis opengl bitmap
  
  我国是一个农业大国,对自然气候依赖比较重,容易受到农业灾害的影响。农业灾害最常规的表现形式就是干旱或洪涝灾害,而干旱、洪涝灾害的重要指标之一就是面雨量。如果能及时掌握了比较准确的面雨量,对于农业的抵抗灾害、江河的抗洪能力以及水库的蓄洪规模都具有重要的意义。
 
  随着非常规探测技术的迅猛发展,以自动气象站降水观测资料为主,结合雷达、卫星估测降水资料辅助修正模式正在形成,通过资料融合、四维同化来进行估算已成为流域面雨量估算技术的发展趋势。而以gis为平台,实现数据分析和显示一体化管理则代表了面雨量业务系统的发展方向。通过水文模拟与水文观测的比较,可以对面雨量估算结果进行间接检验。如何将雨量和上述资料融合在一起,提高降水量精度和降水数量的预测,是一个亟待探讨和研究的重要问题。
  三维雨量面,顾名思义就是固定时间段固定区域内任意一点上的降水不流失,整个区域所有点降水将形成一个立体的降水体。在不考虑地貌特征,认为地表是均匀平整的情况下,水体的上表面就是该区域某时段内的三维雨量面。构建三维雨量面要求有大量的数据支撑。
  三维雨量面可以更直观的反映面雨量的分布特征,善于表现降水空间分布的复杂性,同时可以非常方便的加入或融合到gis系统中去。如果结合gis地理信息提供的地貌资料,风场、温度场、气压场等综合资料,可以进一步揭示空间信息与降雨之间的关系,大大提高降水量预测的精度,还可以准确估算流域的平均降水量,从而更好的预测、预警灾情,对于农业的抵抗灾害、江河的抗洪能力以及水库的蓄洪规模都具有重要的意义。
  本文采用利用borland公司的c++builder6和opengl三维开发软件(如图1所示),开发设计了河南省雨量面模拟、分析软件,再现了河南省某时段的三维雨量面,现简介如下。
 
  
  一、雨量面的数据支持
  三维雨量面的构建必须有大量的数据作为支撑,必须选取合适的插入法。经比较,本文选取了delaunay三角形插值法。它是气象部门和gis研究都常用的一种插值方法,其优点如下:
  1.三角形插值法可以较好地表现雨量、地形、地貌和物体表面形状特征,准确性可以满足要求;作为主要的数字地形模型表示法,它的生成算法已趋于成熟。
  2.三角网保证了相同的观测站点生成的三角形插值图像唯一,可重复性好。易于更新,可适应各种分布密度的数据,减小运算量。
  3.结构良好,数据结构简单,数据冗余度小,存储效率高,可以表示线性特征和迭加任意形状的区域边界。
  4.三角网三角形数据可以直接用于三维物体的软件生成。
  本文将河南省121个气象观测台站作为插入点,根据经纬度利用三角形插值法生成了河南省二维delaunay三角形网络。程序设计过程如下图所示。
 

  如图3所示,为生成的二维delaunay三角形网络。
 
  
  二、三维开发软件的选择及技术开发
  
  构建三维的雨量面,常规的程序开发软件难以实现,更难以将多个面、场叠加,最好采用专业的三维开发软件。当前最主流的三维开发软件有directx和opengl,是两款非常优秀的软件。由于气象部门数据运算需求,经常要在unix、liunx等操作系统下操作,鉴于opengl(open graphic library)具有良好的程序通用性和可移植性,本文选择了采用opengl来解决面雨量的三维显示。
 


  
  三、雨量面的分析
  
  本文对于三维雨量面的分析分析包含最基本的功能,主要有两点:点雨量的获取和等雨量线的获取。
  1.点雨量的获取。点雨量的获取非常简单。我们只要知道了需要查找的点坐标位置,即可获得需要的坐标点上像素颜色,颜色和雨量之间关系换算即可得到该点雨量。
  2.等雨量线的获取。
  等雨量线是一种等值线。等值线是联结具有相同数量指标的空间分布现象与二维平面的图形,不同数值的等值线组成的图形可以精确表示自然现象的垂直变化和水平方向的强弱差异,是一项重要的分析指标。由于空间的限制,等值线可以是闭合的也可以是不闭合的。等值线一般不相交。
  本文提出一种新颖的等值线获取方法,就是通过对比位图色彩值来获取等值线。上文构建了三维的雨量面,同时生成输出该雨量面的彩色正视图。正视图是三维雨量面在水平面上的正投影。由于雨量面是内部连续的,雨量与色彩值是线性相关的,相同雨量值色彩值必定相同,在色彩值相同的地方,必定存在等雨量线。我们可以开发编写软件,通过对雨量面正投影位图的色彩分析,通过过滤生成等雨量线,设置多个雨量段对应的颜色段阀,通过与非运算,筛去不符合阀值的点,即可轻易获得任意等雨量线,仅生成一次雨量面,即可完成所有任务,对于生成的等雨量线还可以方便保存为位图。程序编写过程如下。
  
  
  四、结论
  
  本文通过采用delaunay三角形插值方法,保证了三维雨量面的数据需求;采用了opengl技术,完成了三维雨量面的生成;采用位图分析技术来获取三维雨量面上的点雨量输出和任意等雨量线的输出,将格点插入转换为对位图的处理,完成了雨量面的基本数据输出,不受格点限制,减轻了计算量,提高了工作效率。同时并为下一步引入gis地面系统奠定基础。
  
  参考文献:
  [1]r. k. l inslcg 等著. 刘光文等译.工程水文学.水利出版社, 1991.18~81.
  [2]hutchinson olating mean rainfall using thin plate smoothing splines [j ] . int . j . geogr. inf . sys. ,1995:385~403.
  [3] 叶飞跃等,等值线线性追踪算法及其在地图重建中的应用[j].计算机仿真,2003,20(6).

上一篇:C语言实行串行通信接口程序

下一篇:浅析计算机病毒的检测技术