当前位置: 首页 > 专利查询>金恒旭专利>正文

一种三维可视化条件下的交互式降雨等值线绘制方法技术

技术编号:32109183 阅读:16 留言:0更新日期:2022-01-29 18:51
本发明专利技术提供了一种三维可视化条件下的交互式降雨等值线绘制方法,包括以下步骤:三维可视化场景建立、水文站三角网建立以及降雨量等值线生成算法实现。依据本发明专利技术的降雨等值线绘制方法克服了传统二维降雨等值线抽象、交互性弱、沉浸感低的缺点,以直观全面的方式展示了等值线与地形之间的关系,提高了用户沉浸感,便于管理决策者对水情信息做出全面精准的判断与分析。判断与分析。判断与分析。

【技术实现步骤摘要】
一种三维可视化条件下的交互式降雨等值线绘制方法


[0001]本专利技术属于水利工程
,具体涉及到一种三维可视化条件下的交互式降雨等值线绘制方法。

技术介绍

[0002]我国疆域辽阔,洪涝灾害较为频繁。降雨等值线生成方法作为一种雨量分析手段,被广泛的应用于汛情服务系统与防洪调度决策系统中,对水文规划管理决策有重要意义。
[0003]传统二维条件下的降雨等值线较为抽象,只能放大缩小,不能从多角度观察区域降水情况,对降雨等值线与地形之间的关系做出的判断也不够全面。
[0004]因此,三维可视化条件下的降雨等值线可以直观全面地展示等值线与地形之间的关系,通过对降雨区域的多角度观察,提高了用户沉浸感,便于管理决策者对水情信息做出全面精准的判断与分析。

技术实现思路

[0005]为了解决传统技术中的不足之处,本专利技术提供了一种三维可视化条件下的交互式降雨等值线绘制方法,目的在于向水文管理决策者提供一种直观全面的降雨等值线生成方法。
[0006]本专利技术通过下述技术方案实现:
[0007]一种三维可视化条件下的交互式降雨等值线绘制方法,包括以下步骤:
[0008]S1:建立可视化三维场景;
[0009]S2:所述的可视化三维场景,建立水文站三角网;
[0010]S3:所述的水文站三角网,降雨等值线生成算法。
[0011]进一步地,所述S1包括以下子步骤:
[0012]S11:获取目标区域DOM(数字正射影像)与DEM(数字高程模型),并叠加合成三维底图;
[0013]S12:获取目标区域降雨站信息;
[0014]S13:基于站点建立三维测站模型;
[0015]S14:建成重点突出的三维孪生场景。
[0016]进一步地,所述S2包括以下子步骤:
[0017]S21:获取站点位置和雨量值,步骤如下:
[0018]步骤1:用模型叠加矢量图层表示站点位置;
[0019]步骤2:从数据库中获取雨量值。
[0020]若数据库中的雨量值是时段雨量值,则需要将时间段中每个降雨站的雨量值进行累加,得到最终雨量值;
[0021]若数据库中的雨量值是最终雨量值,则直接获取。
[0022]S22:生成雨量站三角网,步骤如下:
[0023]步骤1:将所有降雨站的位置和雨量值赋予节点,节点包含在Point[i]数组中;
[0024]步骤2:从Point[i]数组中任意取一点P1,找到距离P1点最近的点P2;
[0025]步骤3:将P
1 P2两点连线,构成三角网的一条边l;
[0026]步骤4:将边l记录到Line[i]数组中;
[0027]步骤5:采用右行原则,以Line[i]数组中每条边为起始边l1,遍历Point[i]数组中未被记录在Line[i]数组的点,记为点集A;
[0028]步骤6:选取点集A中在起始边l1右侧的点,并将其与两端点分别连线,三角形的新边l2、l3(方向与起始边l1保持一致),将新形成的边加入Line[i]数组中;
[0029]步骤7:获取点集A中的角度,并将角度最大的点构成的三角形,得到三角网中的一个三角形;
[0030]步骤8:判断新生成的边是否与已经生成的边重合,若重合就从数组中删去该条边。
[0031]步骤9:遍历Line[i]数组新生成的边,重复扩展边的操作;
[0032]步骤10:当没有新的边生成,将起始边l1从Line[i]数组中删除,雨量站三角网生成完毕。
[0033]S23:获取生成三角网的所有三角形,步骤如下:
[0034]步骤1:在三角网中,确定了三角形的生成路径;
[0035]步骤2:判断是否存在未能被记录的三角形,若存在,进行下一步,若不存在,直接进行步骤6;
[0036]步骤3:遍历三角网,筛选非首尾相接的三角形ABC;
[0037]步骤4:令该三角形ABC的起点为倒数第二个三角形的中点,终点为倒数第三个三角形的中点;
[0038]步骤5:分类讨论确定三角形ABC的中点;
[0039]步骤6:成功获取生成三角网的所有三角形。
[0040]进一步地,所述S3包括以下子步骤:
[0041]S31:获取特定雨量值所在位置点;
[0042]所述特定雨量值所在位置点提取,关键就是找到给定雨量值的位置。
[0043]假设线段两端点的坐标和雨量值记为Q1(x1,y1,z1,w1)、Q2(x2,y2,z2,w2),特定雨量值w的位置Q(x,y,z)依据下面公式计算:
[0044][0045][0046][0047]S32:获取特定雨量值的等值线线段,步骤如下:
[0048]步骤1:判断三角形顶点雨量值与给定雨量值大小关系,若相等,进行下一步,若不等,进行步骤3;
[0049]步骤2:将这个雨量值增加或减少一个很小的数;
[0050]步骤3:筛选一条边存在特定雨量值的三角形T1,并获取该三角形存在该雨量值的位置点;
[0051]步骤4:获取与三角形T1相邻的三角形T2,并获取T1、T2公共边上给定雨量值的位置;
[0052]步骤5:把所有特定雨量值的位置记录在数组中。
[0053]S33:等值线合成,步骤如下:
[0054]步骤1:将DZPoint[i]数组中单独线段进行合并处理;
[0055]步骤2:判断等值线类型;
[0056]步骤3:筛选起点、终点不重合的直线;
[0057]步骤4:筛选边界上只记录一次的点(给定等值点),存储于边缘点数组Byd[i];
[0058]步骤5:从Byd[i]中取一个边缘点Byd1,在DZLine[i]数组中查找存在边缘点的线段,取线段另一端点P3并删除该条线段;
[0059]步骤6:从另一端点P3开始在DZLine[i]数组中查找存在该点的线段,取该线段另一端点P4并删除本线段;
[0060]步骤7:将经过的端点依次记录在数组中,将数组中所有点进行连线并进行曲线拟合,得到的就是需要的等值线;
[0061]步骤8:迭代循环操作步骤4~步骤7,当找到另一边缘点Byd2,终止;
[0062]步骤9:删除遍历过的两个边缘点,对边缘点数组Byd[i]剩余边缘点进行步骤5~步骤8,直到数组Byd[i]为空;
[0063]步骤10:在DZPoint[i]数组中排除边缘点以及遍历过的等值点;
[0064]步骤11:在剩下的等值点中取一个等值点,并在DZLine[i]数组中查找存在该点的线段,取另一端点并删除该线段;
[0065]步骤12:重复步骤11,当另一端点与最初等值点相同时,终止;
[0066]步骤13:将经过的端点依次记录在数组中,将数组中所有点进行连线并进行曲线拟合,得到等值线。
[0067]步骤14:删除经过的所有点,重本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种三维可视化条件下的交互式降雨等值线绘制方法,其特征在于,包括以下步骤:S1:建立可视化三维场景;S2:所述的可视化三维场景,建立水文站三角网;S3:所述的水文站三角网,降雨等值线生成算法;所述的S2建立水文站三角网包括以下步骤:S21:获取站点位置和雨量值;步骤1:用模型叠加矢量图层表示站点位置;步骤2:从数据库中获取雨量值;S22:生成雨量站三角网;S23:获取生成三角网的所有三角形;所述的S3降雨等值线生成算法包括以下步骤:S31:获取特定雨量值所在位置点;假设线段两端点的坐标和雨量值记为Q1(x1,y1,z1,w1)、Q2(x2,y2,z2,w2),特定雨量值w的位置Q(x,y,z)依据下面公式计算:位置Q(x,y,z)依据下面公式计算:位置Q(x,y,z)依据下面公式计算:S32:获取特定雨量值的等值线线段,步骤如下:步骤1:判断三角形顶点雨量值与给定雨量值大小关系,若相等,进行下一步,若不等,进行步骤3;步骤2:将这个雨量值增加或减少一个很小的数;步骤3:筛选一条边存在特定雨量值的三角形T1,并获取该三角形存在该雨量值的位置点;步骤4:获取与三角形T1相邻的三角形T2,并获取T1、T2公共边上给定雨量值的位置;步骤5:把所有特定雨量值的位置记录在数组中;S33:等值线合成,步骤如下:步骤1:将DZPoint[i]数组中单独线段进行合并处理;步骤2:判断等值线类型;步骤3:筛选起点、终点不重合的直线;步骤4:筛选边界上只记录一次的点(给定等值点),存储于边缘点数组Byd[i];步骤5:从Byd[i]中取一个边缘点Byd1,在DZLine[i]数组中查找存在边缘点的线段,取线段另一端点P3并删除该条线段;步骤6:从另一端点P3开始在DZLine[i]数组中查找存在该点的线段,取该线段另一端点P4并删除本线段;步骤7:将经过的端点依次记录在数组中,将数组中所有点进行连线并进行曲线拟合,得到的就是需要的等值线;
步骤8:迭代循环操作步骤4~步骤7,当找到另一边缘点Byd2,终止;步骤9:删除遍历过的两个边缘点,对边缘点数组Byd[i]剩余边缘点进行步骤5~步骤8,直到数组Byd[i]为空;步骤10:在DZPoint[i]数组中排除边缘点以及遍历过的等值点;步骤11:在剩下的等值点中取一个等值点,并在DZLine[i]数组中查找存在该点的线段,取另一端点并删除该线段;步骤12:重复步骤11,当另一端点与最初等值点相同时,终止;步骤13:将经过的端点依次记录在数组中,将数组中所有点进行连线并进行曲线拟合,得到等值线;步骤14:删除经过的所有点,重复步骤2~步骤13,直到DZPoint[i]数组与DZLine[i]数组均为空,算法终止。2.根据权利要求1所述的一种三维可视化条件下的...

【专利技术属性】
技术研发人员:任东风金恒旭李晓燕王辰龙陈用贤
申请(专利权)人:金恒旭
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1