为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

(DOC) 基于软件总线的作战标图软件设计

2018-03-28 15页 doc 33KB 64阅读

用户头像

is_435706

暂无简介

举报
(DOC) 基于软件总线的作战标图软件设计(DOC) 基于软件总线的作战标图软件设计 基于软件总线的作战标图软件设计 总第213期 2012年第3期 舰船电子工程 ShipElectronicEngineering Vo1.32No.3 86 基于软件总线的作战标图软件设计 陆宏 (中国电子科技集团公司第二十八研究所南京210007) 摘要作战标图软件是实现指挥自动化的一种重要手段,该文提出了基于软件总线的作战标图软件结构,扩展性强,支持图标统一编 辑,处理;设计了图标对象数据结构,对所有图标进行统一描述,便于各个模块流水化处理;最后对图标算法...
(DOC) 基于软件总线的作战标图软件设计
(DOC) 基于软件总线的作战标图软件设计 基于软件总线的作战标图软件设计 总第213期 2012年第3期 舰船电子工程 ShipElectronicEngineering Vo1.32No.3 86 基于软件总线的作战标图软件设计 陆宏 (中国电子科技集团公司第二十八研究所南京210007) 摘要作战标图软件是实现指挥自动化的一种重要手段,该文提出了基于软件总线的作战标图软件结构,扩展性强,支持图标统一编 辑,处理;设计了图标对象数据结构,对所有图标进行统一描述,便于各个模块流水化处理;最后对图标算法,人机交互等关键模块进行了设 计.该文提出的设计方法已成功应用于某海军指挥自动化软件中,应用结果明,该方法极大提高了软件的灵活性和复用性. 关键词军事标图;软件总线;作战标图软件 中图分类号TP311.5 DesignofOperationPlottingSoftwareBasedonSoftwareBusTechnique LUHong (The28ResearchInstituteofChinaElectronicsTechnologyGroupCorporation,Nanjing210007) AbstractOperationplottingsoftwareisanimportantmeanofachievingcommandautomation.Operationplottingsoftwarestructure basedonsoftwarebustechniqueisbroughtoutinordertosupportunifiededitingandprocessingoficon.Iconobjectdatastructuredesigned todescribealliconisusefulforprocessingofallmodule.Thekeymoduleoficonalgorithmandman-machineinteractionisdesignedatlast. Themethodinthispaperisappliedtonava1commandsoftware,andimprovesfiexibleandreusableofsoftware. KeyWordsmilitaryplotting,softwarebus,operationplottingso[tware ClassNumberTP3l】.5 1引言 军事标图是在地图或其他专用底图上以规定的符号, 文字标绘军事情况的作业u],军事标图具有形象直观,概括 力强,清晰易读,一目了然等特点,它不仅可以弥补文字材 料不易说明的各种复杂情况,而且可以代替繁琐的文字材 料成为战斗文书的重要组成部分. 随着指挥自动化技术以及电子地图技术的发展,作战 标图也提出了自动化标图的迫切要求,军事标图逐步由手 工向计算机标图发展,计算机标图具有工作效率高,成图效 果好,存储信息多,更新速度快,表现形式灵活等优点. 本文提出了一种基于软件总线的作战标图软件设计方 法,对软件的结构,关键模块,图标对象结构进行了设计,支 持图标统一编辑,处理,具有结构开发,扩展性强,复用性高 等优点,同时也提高了软件的开发效率. 2基于软件总线的软件结构 2.1软件总线 随着软件技术的发展,软件规模迅速增长,软件系统的 集成难度也越来越大.为了有效地控制系统的复杂性,具 有灵活,可扩展特征的软件体系结构变得非常重要[2]. 在这些方面,软件总线技术体现了极大的优势. 所谓软件总线结构,就是所有的功能模块以相同的方 式连结在一个用来相互通信的结构性模块上,这个结构性 模块就是软件总线[5].在基于软件总线的构架中,软件由 *收稿日期:2011年8月28日,修回日期:2011年9月30日 作者简介:陆宏,女,工程师,研究方向:软件技术,电子海图技术. 多个负责系统不同功能的模块组成,各个模块之间是相互 独立的,各个模块之间的联系都是通过软件总线来实现,软 件总线上的模块可以根据具体需要进行加装,软件总线只 关心总线上模块提供的接口,而不关心模块中的具体实现, 软件总线上的模块可以做到即插即用,就像计算机主板上 的总线一样,大大提高了系统的可靠性和灵活性?6]. 目前软件总线已得到了广泛的应用,如Microsoft公司 的COM技术l_8],OMG的CORBA技术,爱尔兰IONA公司 的Orbix总线等. 2.2系统功能 本文设计标图软件具备以下功能:支持点状,线状,面 状等多种符号和文本的添加,删除,修改;支持图标平移,旋 转和缩放;支持线宽,线色,是否填充,填充颜色等属性设 置;支持鼠标选取;支持图标复制,剪切,粘贴,删除和撤销 等;支持图标数据的存储. 2.3系统结构 基于软件总线的标图软件如图1所示,总线管理器和 各个标图模块采用Windows系统中动态连接库(DLL)方 式实现.动态链接库是一种基于Windows的程序模块_9], 不仅可以包含可执行代码,而且还可以包括数据,各种资 源.在软件开发时,利用DLL技术将软件分为一系列 DLL,提高了软件的复用性和可扩展性. 总线管理器是总线的核心模块,负责标图模块加载和 2012年第3期舰船电子工程87 卸载,消息分发,数据同步,事件调度等;图标数据管理模块 管理图标对象数据,包括图标对象的新增,删除和属性更 改,以及图标对象的存储和加载;图标算法模块封装了平 移,旋转和缩放等常用算法,用于计算变换后图标对象各个 定位点的位置;坐标变换算法模块封装了WGS-84大地坐 图标数 据文件 霎illl蓁fI萋 总线 管理器 软件总线 图1作战标图软件系统结构 制与显示等功能. 2.4消息 人 机 交 互 标系与直角坐标系,直 角坐标系与屏幕坐标系 之间的相互转换算法; 撤销重做管理模块对撤 销重做的动作进行管 理;人机交互是标图软 件与用户交互的窗口, 提供命令编辑,图标绘 标图模块之间使用消息来传递信息,消息的格式如图 2所示.命令标识指示图标正在执行何种命令,如添加,删 除,复制等;命令参数,通过界面输入的数据,如填充颜色, 线宽,旋转角度等;消息处理标识指示消息当前要采取何种 处理,每个功能模块对应一个或多个处理标识,例如图标算 法模块有平移,旋转,缩放三个处理标识.图标对象数据描 述了图标的类型,属性等数据,详细说明见本文第3节. I竺堡l皇!兰鳖l堂皇竺璺堡l望塑翌墨塾塑I 图2消息格式 一 个命令需要多个标图模块按顺序完成,如图标添加 命令需要由四个不同的模块按顺序完成,见表1.因此模 块之间的调度可以使用命令标识和消息处理标识来驱动. 消息处理标识的设置由总线管理器根据命令和当前的处理 标识来确定. 表l图标添加命令执行过程 序号模块执行的操作消息处理标识 1图标数据管理生成一个图标对象新增 2撤销重做管理新增命令压人撤销队列命令入栈 3坐标变换算法囊标系转化为屏基坐标转屏幕 4人机交互绘制图标对象绘制 2.5信息处理流程 以消息处理标识为驱动的信息处理流程如图3所示, 简要描述如下: 1)模块1将数据封装成消息m; 2)将消息m发往软件总线; 3)消息m进入总线的全局消息队列; 4)通过总线管理器的消息调度,发现未处理的消息 m,并设置消息处理标识,将消息m发送给处理模块2; 5)模块2接收消息m并处理. 图3信息处理流程 3图标对象数据结构 为了便于各个标图模块的处理,需对图标对象进行统 一 描述.图标,如点,线,矩形,椭圆,多边形等,其属性包括 五个部分:标识,标注,位置,大小和其他属性.标识用于区 分图标的类型;标注描述图标的含义,如”威胁区”,”警戒 区”,”台风路径”等;位置属性描述图标在地图上的具体位 置,使用经纬度表示;范围属性描述图标的大小和方向;其 他属性描述图标是否填充,颜色,方向等属性. 根据图标的构成方式和属性,本文定义了的图标数据 结构,如表2所示. 表2图标数据结构 属性数据项鬈说明 标识标类型标1 标注标注大小1 属性标注颜色3 标注角度2 标注文本N1(变长) 位置坐标点数l 属性中心点位置16 定位点坐标16*N2 范围长半轴8 属性 短半轴8 轴向28 其他线宽l 属性点/线颜色3 是否填充1 填充颜色3 标识图标是何种形状,如点,线,圆 等 标注文本的长度Nl 描述标注的颜色 标注在地图上的角度0~360. 描述图标的含义 定位点或控制点坐标个数,v2 中心点(.,,w)的地理位置,以经 纬度表示,定位点的坐标 定位点相对于中心点的位置,即定 位点的坐标是以中心点为原点的, 以(xl,Y)表示,单位为m. 当图标类型为圆,圆弧或扇形时, 该数据项为圆半径;当图标类型为 椭圆时,该数据项为长半轴;当图 标类型为矩形时,该数据项为半长 度;当图标类型为圆环时,该数据 项为外圆半径. 当图标类型为椭圆时,该数据项为 短半轴;当图标类型为矩形时,该 数据项为半宽度;当图标类型为圆 环时,该数据项为内圆半径. 图标类型为矩形,椭圆,圆弧或扇 形时,该数据项有效,当图标类型 为圆弧或扇形时该数据项为起始 方位. 图标类型为矩形,椭圆,圆弧或扇 形时,该数据项有效,当图标类型 为圆弧或扇形时该数据项为终止 方位. 线的宽度,以像素为单位 点或线的颜色 如果当前区域是封闭区域,指示是 否需要填充 填充的颜色 4关键模块的设计 4.1人机交互模块 人机交互模块分为四个子模块,如图4所示:菜单与工 菜 盟 与 工 具 条 图形界而模块 属 性 设 置 对 话 框 鼠 标 事 件 检 测 图 标 绘 制 图4人机交互模块组成 具条,提供添加,删除,拷贝,剪 切,粘贴,撤销,移动,缩放,属性 设置等用户编辑命令;属性设置, 提供设置对话框,以便更改图标 标注,大小,线宽等属性;鼠标事 件检测,支持鼠标左键单击,右键 单击,移动等事件的检测;图标绘 88陆宏:基于软件总线的作战标图软件设计第213期 制依据图标标识绘制各种图标. 人机交互模块中的难点是在绘制图标或刷新背景地图 时,经常会产生严重的闪烁,本文采用基于内存位图的绘制 方法加以解决.内存位图的原理[]则是在内存中创建一 个设备环境对象DC,然后再创建一个与显示区域相兼容的 内存位图,并将该位图选到创建的DC之中,以此作为画板 将所有图标以及地图绘制在上面,然后将位图上复制到显 示设备上.由于将位图复制到显示设备的速度很快,用户 根本感觉不到画图工作的存在,这就可以得到很好的刷新 速度和画图效果. 4.2图标算法 在保持图标基本形状不变的情况下,用户可以通过鼠 标和属性设置对话框调整图标位置,大小,方向,通过分析, 将图标调整分为平移,旋转,缩放三类.图标变换都是以图 标的中心点为中心进行的. 本文通过对二维图形的平移,旋转,缩放变换公式进行了 和归纳,设计了如式(1)所示的通用二维图形变换公式,式 中,Y,1]表示变换前坐标,[,,1]表示变换后坐标. 6O_ [,Y,1]一[,Y,1]?lcd0l(1) f1j 从变换功能上,可以将式(1)中的变换矩阵分为两部 分,其中1.b,1是对图标进行旋转,缩放变换,[_厂]是LC-J 对图标进行平移变换. 平移变换只改变图标的位置,不改变图标的大小和形 状,因此式(1)可变换为 r1oo] [,Y,1]=[,Y,1]?『010l一[z+,+L,1] LT1J (2) ,为平移量. 缩放变换只改变图标的大小,可以通过乘以缩放系数 ,S来实现,式(1)可变换为 oO] [z,Y,1]=Ix,Y,1]?l0S0I一[s?z,S?y,1] loo1J (3) 式(3)中,当—Sy一1时,为恒等比例变换,图标大小不 变;当—S>1时,图标沿两个坐标轴等比例放大;当 — Sy<1时,图标沿两个坐标轴等比例缩小;当?时, 图标沿两个坐标轴方向作非均匀的比例变换; 旋转变换将图标以中心点旋转,以逆时针方向旋转 为正值,以顺时针方向旋转为负值,式(1)可变换为 60] [,Y,1]一Ix,Y,1]?lcd0l 1001l 一?x+c?,b?x+d?Y,1](4) ? l 由式(2),(5)可知,图形的平移,旋转,缩放可以统一 进行处理,其实现过程如图5所示. 从软件总线中收到一条消息 从消息中提取消息标识和图标坐标x,Y 平移I缩放 从命令参数中 提取平移参数 , ?,并置 a=d-1.b=c=0 5结语 从命令参数中 提取缩放参数 ,S,并置 b,C,e,伪0 i堑 从命令参数 中提取旋转 参数0 二二工二二 按式(5)计 算口,b,c,d 并置e,,为O 按式(1)计算变换 后的图标坐标X,Y 生成新消息,并将消 息发给软件总线 图5图标算法模块实现过程 图6作战标图软件 本文提出的基于软件 总线的作战标图软件设计 方法已成功应用于某海军 指挥自动化软件中,软件 界面如图6所示.由于采 用了基于软件总线的软件 结构,软件模块之间的耦 合性降为最低,能够适应 软件的升级而无需对现有 的软件进行更改,支持软件持续改进.该软件较好地满足 军事标图需求,并受到用户好评. 参考文献 [1]蒋定定,赵友庚.军事标图系统的自动化设计EJ3.兵工自动化, 17. 2004,3(23):15— [2]白涛.一种基于软件总线可重用构件框架的设计与实现EJ].微 电子学与计算机,2005,22(1):47—49. [3]杨威,周传生.基于软件总线及多Agent的ERP架构的研究与 设计[J].沈阳师范大学(自然科学版),2006,24(4):442— 445. E41孙志安,窦强.软件总线:体系结构分析与设计EJ].指挥控制与 仿真,2009,31(2):77—80. rs]FMcGirt,J.F.Wilkerson.AnobjectOrientedsoftwarebus. [6]李军,于守谦,刘亚斌.基于软件总线技术的测控系统框架实现 LJ].计算机测量与控制,2005(8):849—850. [7]袁占亭,张秋余,张冬冬.基于软件总线技术的软件开发_J].计 算机工程,2005(1):105—107. [8]Rogerson,Dale.COM技术内幕[M].杨秀章译.北京:清华大 学出版社,1999. [9]孙鑫,余安萍.Vc++深入详解[M].北京:电子工业出版社, 2006. [1O]侯俊杰.深入浅出MFCEM].武汉:华中科技大学出版社, 200】.
/
本文档为【&#40;DOC&#41; 基于软件总线的作战标图软件设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索