摘要:本文阐述了一种河床断面图控件绘制方法,该河床断面图控件具备水深、距离、流速、我岸土质坡度、对岸土质坡度等显示功能,能够形象直观地展示测量的江河数据及河床变化情况,并可对关心的数据区域进行重点研究。本文对该方法进行介绍并给出了该方法在VC++6.0下的实现方式。实验结果证明,该方法具有可操作性和实用性。
加入收藏
本文阐述了一种河床断面图控件绘制方法,该河床断面图控件具备水深、距离、流速、我岸土质坡度、对岸土质坡度等显示功能,能够形象直观地展示测量的江河数据及河床变化情况,并可对关心的数据区域进行重点研究。本文对该方法进行介绍并给出了该方法在VC++6.0下的实现方式。实验结果证明,该方法具有可操作性和实用性。
在江河测量过程中,存在数据类型多、数据量大且部分数据不准确、误差大的现象,无法准确直观地为用户呈现测量位置的河床情况。本文提供了一种河床断面图控件绘制方法,能够加载包括水深、距离、流速等在内的多类测量数据,基于滑动窗口过滤法对水深数据进行提取,对异常值进行修正,形成真实准确的河床断面图。
1、绘制步骤
数据保存:
针对江河测量过程中参数比较多的特点,定义河床断面结构体;针对数据动态变化的特点,构建河床断面数据动态链表,具体结构如下所示:
其中nIndex用于标示浅水区采集点顺序,flag为枚举值表示采集位置(0:我岸浅水区1:深水区2:对岸浅水区3:岸边),dSS表示当前位置水深,dJD表示经度,dWD表示纬度,dJl表示离我岸距离。将采集的水深数据结构体HCDM-Data逐一追加至河床断面数据链表m_HCDMdataList中。
绘制流程:
将采集的水深数据结构体追加至m_HCDMdataList后,采用内存绘图方式实现绘图更新,降低绘图闪烁。通过发送绘图消息触发OnPaint(),在函数体内处理m_HCDMdataL-ist链表,基于滑动窗口过滤法进行数据提取、坐标转化,实现绘图更新。
1.1数据加载
将采集的水深数据结构体追加至数据列表m_HCDMdataList中,并将追加数据与当前最大最小值进行比较,及时更新数据最大值最小值,用于后续Y轴计量单位的调整与自适应。使用m_fHCDMStartY、m_fHCDMEndY记录Y轴适应范围。针对控件放大需求,使用m_nHCDMEndindex、m_nHCDMStartindex记录数据索引值。m_nHCDMStartindex为开始索引;m_nHCDMEndindex为结束索引。正常状态下m_nHCDMStartindex值为0,m_nHCDMEndindex为数据链表长度减1;放大状态下,nHCDMStartindex为选定区域最左侧数据索引值,m_nHCDMEndindex为选定区域最右侧数据索引值。
1.2图形绘制
绘图函数主要基于滑动窗口过滤法对数据链表中结构体数据进行提取,对异常值进行修正,完成河床断面图绘制。算法流程如图1所示。
图1算法流程
intnSize=m_nHCDMEndindex-m_nHCDMStartindex+1;
nSize为河床断面图中需要绘制的数据元素数量,遍历所有数据元素进行坐标转换。
其中X轴坐标转换如下:
longlHCDMTemp=m_rcHCDMGrid.left(long)(m_rcHCD-MGrid.Width()*sIndex/(m_nHCDMEndindex-m_nHCDM-Startindex));
sIndex记录遍历循环索引值,m_rcHCDMGrid为矩形绘图区域。
Y轴坐标转换如下:
longlHCDMTemp=(m_rcHCDMGrid.bottom)-(long)(((fValue-m_fHCDMStartY)*m_rcHCDMGrid.Height())/(m_fHCDMEndY-m_fHCDMStartY));
fValue为数据节点值,即河床断面数据结构体中的fdata。
完成坐标转换后,采用VC自带函数Moveto(),Lineto()等绘制图形。
1.3放大功能
鼠标通过在显示区域内拖动选择某一块,能够进行放大显示。此功能核心点为坐标信息的逆转换。
在左键响应的OnLButtonDown函数中,获取m_nHCDMStartindex和m_fHCDMEndY。
fY=m_fHCDMStartY+(m_rcHCDMGrid.bottom-point.y)*(m_fHCD-MEndY-m_fHCDMStartY)/m_rcHCDMGrid.Height();
将计算获得的fy作为下一步绘图的m_fHCDMEndY。
intindex=
m_nHCDMStartindex+(int)((pt.x-m_rcHCDMGrid.left)/m_rcHCD-MGrid.Width()*m_nHCDMEndindex-m_nHCDMStartindex);
将计算获得的index作为下一步绘图的m_nHCDMStartindex。
在右键响应的OnLButtonUp函数中,参照上述策略,获取m_nHCD-MEndindex和m_fHCDMStartY。
最后通过发送绘图消息完成重绘操作。
2、结论
本方法在VC++6.0开发环境下,进行河床断面图控件的绘图实现。
所绘河床断面图如图2所示:
图2河床断面图
实验结果表明,本绘制方法能够真实准确地反映河床变化情况,并可根据需要进行放大。
刘子龙.一种河床断面图控件的绘制方法[J].电子世界,2020(08):76-77.
分享:
鲁北地区地处黄河下游冲积平原地带,饮用水源为深层地下水及黄河水,深层地下水中氟含量普遍偏高,造成氟中毒,属于深层地下高氟水型地氟病病区,是全省受地氟病危害比较严重的地区。其中济阳、博兴、高青、广饶、夏津、宁津等16县777个村受危害人口65万余人[1,2,3,4],出现氟骨症、氟斑、尿氟等症状,严重危害当地群众的生命和健康[5,6]。
2023-11-08渗透系数(K)和影响半径(R)在探讨地下水动力学问题与计算地下含水层允许开采量中是非常重要的水文地质参数[1,2],因此求取可靠的水文地质参数是正确评价地下水资源及其合理可持续开发利用,以及兴利除害的重要前期基础工作[3]。
2023-11-08随着我国经济发展的有效提升,改善水环境污染、实现水资源配制优化、促进经济和环境协调发展是亟待解决的问题。污水处理站的建设有效解决了这一问题,但在水文站上下游修建污水处理站对水文监测具有重要的影响,因此如何降低污水处理站对水文监测的影响是我们值得思考的问题。
2021-08-09基于服务器集群、集成语言查询、实体数据库、动态链接库等技术,采用后台监听技术实现了水文信息收集、检查、分析、计算、信息报送、成果归档全自动一体化处理及水文监测数据在线审查,并与全国水文资料整编系统无缝对接,构建了辽宁省水文站网综合管理系统。研究成果对于提升水文监测数据处理能力、水文资料成果审查效率及水文站网管理水平具有重要的研究和推广价值。
2021-06-16森林生态系统垂直结构涵盖林冠层、枯落物层和土壤层[1,2]。枯落物作为植物群落水文效应的第二活动层,凋落过程是生态系统中物质循环和能量流动的重要环节[3],在保持水土和涵养水源方面具有非常重要的意义[2]。枯落物层具有较好的持水能力及透水性,枯落物的分解也能为林木提供养分[4]。
2020-11-25土地利用作为人类对自然利用的一种途径[1],随着社会的发展,土地经营与改造方式不断变化,下垫面粗糙程度及入渗特性也随之改变,对植被截留、地面下渗及地表蒸散等水文过程造成深刻影响,从而导致径流发生变化,流域内水量平衡遭到破坏[2,3],引发水土流失等一系列生态环境问题[4]。
2020-11-25汉江是长江中游重要的一级支流,干流全长1577km,流域面积约为15.9×104km2。汉江发源于秦岭南麓,于武汉市汇入长江干流,丹江口水库和钟祥水文站将汉江流域划分为上游、中游和下游3部分。汉江流域属于我国典型的湿润区,全年降水量介于800~1200mm之间,降水量在时程上分配不均,4~9月降水量占全年降水量的75%左右,降水量约为600~1000mm。
2020-11-13刚体极限平衡法是现行的各行业规范规定的边坡稳定性分析方法,同时一些规范也推荐使用数值分析方法进行复杂的边坡稳定性分析。目前工程上常用极限平衡法分析边坡稳定性,方法包括:瑞典圆弧法、毕肖普法、简布法和传递系数法等,但这些方法不能很好的反应真实破坏机制,具有一定的局限性。基于有限差分法的数值分析方法可以解决这方面问题。
2020-09-05地下水的化学成分是地下水与外界环境长期相互作用的产物[1],开展地下水化学特征及主要成分来源的研究有助于阐明地下水的来源与形成过程,揭示地下水环境状况,同时也为地下水开发与保护提供科学合理的依据。岩溶地下水是淄博市博山区石马镇主要供水水源,在保障供水、支持社会经济发展及维持生态平衡等方面具有重要地位。
2020-07-16三峡工程运用以来,荆江三口汛期分流量总体变化不大,分沙量急剧减少,松滋口分流、分沙量最多,藕池口次之,太平口最少。分流比变化不大,年均分流比为15.0%,由于三口口门段沿程冲刷,三口分沙比总体呈递增趋势,年平均分沙比为23.4%,最大分沙比达40.0%(2016年),其中松滋口、藕池口增加趋势较明显,占比分别为13.1%、7.3%,太平口变化不大,占3.0%。
2020-06-19人气:3267
人气:3019
人气:2303
人气:2024
人气:1883
我要评论
期刊名称:大学物理
期刊人气:2173
主管单位:中国科学技术协会
主办单位:中国物理学会
出版地方:北京
专业分类:科学
国际刊号: 1000-0712
国内刊号:11-1910/O4
邮发代号:82-320
创刊时间:1982年
发行周期:月刊
期刊开本:大16开
见刊时间:10-12个月
影响因子:0.735
影响因子:0.645
影响因子:1.369
影响因子:0.874
影响因子:0.385
您的论文已提交,我们会尽快联系您,请耐心等待!
你的密码已发送到您的邮箱,请查看!