付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种多通道雷达回波图的深入分析方法
滴水是巴彦布尔地区作物生长季节的主要农业气象灾害之一。据1954~2001年的冰雹资料表明,48年成灾雹日为516次,平均为10.8次,其年际变化很大,最多的1973年出现31次,最少的1970、1978年均出现2次。1973年受灾乡镇苏木最多达167个,最少的1955年有3个,平均每年受灾9033hm2,2001年为36016hm2。目前实施人工防雹作业是减轻和预防冰雹灾害的有效途径。近年来随着人影事业的发展,特别是713C天气雷达的投入使用,要求我们最短时内做出科学的正确的判断,可是,目前我们所使用人影工作的作业流程比较零乱,虽然人影作业设备的投入越来越多,但指挥工作较零散,人为判断过多,造成人影指挥人员工作量过大,难免出现力不从心的时候,为了提高工作的效率和作业的科学性、准确性,我们用面向对象的VC++6.0开发了《713C天气雷达回波图的处理和分析应用软件》(以下简称《软件》),在软件编写的过程中,充分利用MFC提供的基础类,从而提高了软件的易编性和运行的可靠性,目前《软件》实现了如下功能:雷达回波图的自动传输、实时显示3个量程(62.5Km、125Km、250Km)的回波图、以渐变动画方式显示同一量程的回波图、自动关联RHI和对应的PPI回波图、计算任意两地距离、计算云团区域面积、以文字方式显示云团影响到的地点名,并发布实时指挥信息。下面对各功能实现的技术方法进行详细说明:1回波图的自动传输和软件的实时响应1.1《软件》需要的数据是什么?这一功能是《软件》的关键,否则其它的功能将失去意义。我们的设想是:让713C天气雷达终端电脑只进行回波的采集和保存,把《软件》装到局域网上的另一台电脑,进行回波图的处理和分析,这样有利于提高指挥的时效性而又不漏采数据。《软件》需要的数据是:PPI扫描62.5Km、125Km、250Km的个量程的位图文件以及RHI扫描的位图文件和dBz基数据文件(以下简称“dBz文件”),713C天气雷达终端电脑每保存一张以上文件,就自动给《软件》所在的微机拷贝一张,然后《软件》自动响应,读入后进行显示和分析处理,对于PPI位图,《软件》将它的路径和文件名累加保存到对应量程的数组内,以便进行多位图渐变动画显示和手动向前和向后选择显示,对于RHI位图:《软件》自动关联到前一张PPI位图上,关联的结果是在PPI位图做过RHI扫描的方位上显示一个长条矩形进行标识,在矩形框内双击鼠标左键即可显示关联上的RHI位图。雷达终端电脑自动拷贝数据到《软件》所在电脑和《软件》实时响应的原理一样,下面以“《软件》实时响应”的实现方法来说明。1.2监视的基本原理使用MFC的框架函数AfxBeginThread创建一个工作线程,原型如下:CWinThread*AfxBeginThread(AFX_THREADPROCpfnThreadProc,LPVOIDpParam,intnPriority=THREAD_PRIORITY_NORMAL,UINTnStackSize=0,DWORDdwCreateFlags=0,LPSECURITY_ATTRIBUTESlpSecurityAttrs=NULL),用它的第一个参数pfnThreadProc(线程控制函数),等待是否有新的回波图文件产生;用它的第二个参数pParam将View类指针传进来(使用强制类型转换),用它进行新回波图的显示、分析和处理,其他参数都使用默认值,所以不进行传参。框架函数的返回值是一个CWinThread对象的指针,此新线程的句柄就是CWinThread对象的成员变量m_hThread,将这个变量传给API函数::TerminateThread(HANDLEhThread,DWORDdwExitCode)就可以结束这个新线程,从而释放了线程所占有的内存资源。函数pfnThreadProc是通过调用如下的三个API函数来实现监测新回波的产生和结束监测的,三个函数的原型如下:①HANDLEFindFirstChangeNotification(LPCTSTRIpPathName,BOOLbWatchSubtree,DWORDdwNotifyFilter);②DWORDWaitForMultipleObjects(DWORDnCount,CONSTHANDLE*lpHandles,BOOLfWaitAll,DWORDdwMilliseconds);③BOOLFindCloseChangeNotification(HANDLEhChangeHandle);API函数FindFirstChangeNotification监视指定的三个目录下是否产生了新的文件(这三个目录是《软件》所在机器上存放PPI位图、RHI位图、RHI的dBZ文件的地方,也即我们需要的数据目录),然后马上调用API函数WaitForMultipleObjects将该线程挂起,当有新的文件产生后线程就会继续向下执行。这时就可以调用API函数FindCloscChangeNotification停止对产生新文件通知句柄的监视,根据API函数WaitForMultiplcObjects的返回值dwResult,由IF语句判断是《软件》所在的微机上的那个文件夹内收到了新文件,然后由传进来的View类对象指针调用View类内的相关成员函数对回波图进行显示、分析和处理。在View类的构造函数中调用AfxBeginThread函数,使得《软件》一启动就进入等待新文件产生状态,当713C雷达终端将回波图自动传过来时,《软件》就会自动读取。2显示新特性的hlmag根据PPI位图的路径和文件名信息,调用API函数LoadImagc(),得到一个位图句柄hlmage,再由此句柄作为参数,调用位图类CBitmap对象的Attach成员函数,构造一个位图对象m_Bitmap,最后在View类的成员函数OnDraw()中调用API函数BitBlt(),将位图拷贝到显示设备场景(屏幕),进行显示。3如何将pp位图和在它所作的rhi位图自动关联到同一首先需要说明:RHI的位图文件和dBZ文件必须都传了过来,才能将RHI位图关联到对应的PPI位图上,即在窗口显示的PPI位图上的矩形长长条才能出现。所以,在RHI位图文件传来的响应过程中,要对RHI的dBz文件是否已传来进行判断,同样,在RHI的dBz文件传来的响应过程中,要对RHI的位图文件是否已传来进行判断;那么,在这两个响应过程中就存在相同的一段代码,这段相同的代码就是:条件“RHI的位图文件和dBz文件都存在于于本机”成立的一段代码,这段代码也就是实现“自动关联”的代码,也是本程序的关键之一。下面详细说明技术方法:在Document类中定义一个数组变量:CArray<PPItoRHI,PPItoRHI>m_PPImapRHI。PPltoRHI是一个结构,保存PPI位图和关联上的RHI位图的的文件名以及作RHI扫描的方位角,定义如下:intposition;/*一个PPI位图可以关联多个RHI,用它来标识序号,这是从实际考虑的,因为不可能总是保证一张PPI上只有一个方位上出现对流云团。*/};RHI扫描的方位角信息是通过读它的dBz文件得到的,dBz文件是一个二进制数据文件,方位角信息在第828个字节处。将PPI位图的文件名、RHI位图的文件名及方位角保存到数组m_PPImapRHI内,并通过调用API函数WritePrivateProfileString(),将以上信息保存到一个ini文件内,实现关联信息的永久化。4计算回波图中任何两处的距离根据平面内任意两点的距离公式:其中(x5发布防雨通知5.1流云团的rhi位置计算和描述我市在套区分布了100门高炮,我们原来的做法是在雷达终端软件的PPI平显图上叠加了一个用绘图软件制作的炮点地图,因为是用人眼观察,受到回波颜色和炮点密集的影响,使得很难判定究竟是哪一个炮点需要作业,造成指挥失误较多,这一功能基本解决了这个问题。具体的思路是:将所有炮点的名称、经纬度、重要性等信息放到一个ini文件中(还可以放入水库、山洪沟口、黄河易决口段的经纬度等信息),如果出现对流云团,保存一张PPI位图,再在强中心处作RHI扫描,并进行保存,这时《软件》所在微机就出现了刚保存的并关联有RHI的PPI位图,双击指示关联的长条矩形,就打开了对应的RHI位图,并根据我们地区的降雹判据指标,决定是否发布防雹指挥信息,如果需要发布防雹指挥信息,就根据云团的形状和大小用鼠标左键按下拖动的办法得到云团区域(Rgn),根据ini文件中炮点的经纬度信息判断是否在此区域内,并以文字的方式在窗口的右侧显示云团的面积、所在方位、中心强度、云体顶高、强中心高度以及影响到的炮点。将指挥信息以位图的方式保存下来,传到服务器上,供旗县局人影办参考。5.2模式4:逐点线条类本功能是在WM_LBUTTONDOWN、WM_LBUTTONUP、WM_MOUSEMOVE三个消息的响应函数中完成的。下面对三个消息的响应函数的实现进行分别说明。5.2.1消息WM_LBUTTONDOWN的响应函数OnLButtonDown(UINTnFlags,CPointpoint)在此函数的实现中,首先对云团的面积变量、绘制线条类对象(包含一个点数组和一个逐点划线函数-是MoveTo和LineTo函数的组合使用)、区域变量进行清零,使得计算对流云团的面积、搜索云团影响到的炮点的过程重新开始。然后重新new—个绘制线条类对象,将参数point传入它的点数组成员。5.2.2消息WM_MOUSEMOVE的响应函数OnMouseMove(UINTnFlags,CPointpoint)首先以第一个点坐标为中心创建一个小正方形并显示出来,便于当鼠标左键放开时的最后一个点和起点基本重合(由于回波的颜色混杂,一个像素的线宽不易找到起点),保证区域基本封闭,以提高计算面积的准确性。再将鼠标移动路径的所有点添加到绘制线条类对象的点数组成员中,并由它的逐点划线函数将所有的点用线连接起来,实现鼠标拖动划线。5.2.3消息
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 1.3地球的历史课件高中地理人教版必修一
- 无人机微控制器技术课件 25、16x16的LED点阵电子广告屏实现
- 2026年中级注册安全工程师职业资格 道模拟题库及完整答案详解(历年真题)
- 2026年军训考核模考模拟试题及答案详解(新)
- 2026年体育考核题库高频重点提升附参考答案详解【预热题】
- 【低空经济】低空交通服务管理平台设计方案
- 2026年幼儿园好喝的花茶
- 2026年幼儿园叙事文稿
- 2026及未来5年中国CZZ新型验算码防伪系统软件市场数据分析及竞争策略研究报告
- 2025福建省国思教育科技有限公司招聘7人笔试参考题库附带答案详解
- 2026年青山湖区住房和城乡建设局下属事业单位招聘工作人员8人笔试备考题库及答案解析
- 2026中国中煤能源集团有限公司春季校园招聘备考题库及答案详解一套
- GB/T 214-2026煤中全硫的测定方法
- 水泥基渗透结晶防水涂料安全交底
- IT系统运维流程与管理方案
- 2026年上海市徐汇区高三下学期二模化学试卷和答案
- 会诊转诊服务中心工作制度
- 小学五育并举工作制度
- ISO9001 认证辅导服务协议
- 20S515 钢筋混凝土及砖砌排水检查井
- 永辉生鲜采购制度
评论
0/150
提交评论