欢迎来到天天文库
浏览记录
ID:42113083
大小:215.26 KB
页数:7页
时间:2019-09-07
《面向对象技术在CAD集成中的应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、面向对象技术在CAD集成中的应用彭元诚(中交第二公路勘察设计研究院)摘要面向对象技术是软件科学的最新发展,以面向对象的软件开发技术进行CAD系统的数据结构设计和工程数据管理,并以此为核心进行整个系统的集成,是一次有益的、成功的尝试,对象的抽象性、继承性和多态性有助于提高数据的封装性、安全性和可维护性,有利于减少数据冗余,有助于增强整个系统的稳定性。本文就CAD系统开发中的面向对象的数据结构设计、工程数据库管理作简要介绍。关键词面向对象技术,数据结构设计,对象数据管理参考模型1引言“九五”国家重点科技攻关项目“GPS、航测遥感、CAD集成技术开发”课题中的
2、软件开发研究包含数字地面模型系统、路线与互通立交集成CAD系统、桥梁设计集成CAD系统、虚拟景观等部分组成,实现各类信息数据的集成是整个课题研究的关键。按软件工程的原则和方法进行组织、协调与开发,是克服人型软件开发屮经常遇到的风险人、效率低、质量难以保证等问题的有效手段,面向对象技术是软件工程技术的最新发展方向,它可应用于软件开发的各个阶段,包括面向对象系统分析(00A)、面向对象系统设计(00D)和面向对象软件编程(OOP)。相对于传统的软件技术,面向对象的思想以更加自然的角度看待问题,因而能有效地降低系统整体设计的复杂性,提高软件开发的效率。课题软件
3、开发采用VisualC卄开发环境,以类(class)对客观事物进行抽象与封装,以类的实例来模拟客观实体,设计了路线、桥梁CAD系统的数据结构与管理层次,提高了数据的完整性、一致性,降低了数据冗余和信息互联的复杂性,实现了CAD系统的数据集成和模块集成。2面向对象技术Coad和Yourdon对于“而向对象”给出了这样的定义:“而向对象二对象+类+继承+通信”。面向对象技术是当前软件工程学中非常热门的技术,具有许多不同于传统的结构化软件技术的特点,它把分析(00A)、设计(00D)和程序(OOP)统一起来,在软件生存期的各个阶段具有高度的连续性和唯一性,它是
4、结构程序设计、信息隐藏、数据封装、知识表示、并行处理等各种基本概念和方法的综合,是解决克服软件复杂性障碍和自然表示客观世界这两个问题最有效的工具。对象是面向对象开发模式的基本成分。每个对象是由一组属性和一组操作或服务來定义的,在C++中,属性对应于数据成员,而操作或服务对应于成员函数。从设计方面看,对象是一些概念的实例,它们把有关的实体模型化,这些对象常常直接对应于问题中的物理实体,即现实世界的实体,从实现方面看,一个对象是表达在应用的可执行代码屮的数据与操作的混合体,是数据抽象(如C++类)的实例化。类是具有相同数据结构和相同操作的对象的集合,是具有相
5、似特性与共同行为的对象的模板,例如在路线CAD中,交点数据用交点数据对象來表达。IP1IP3交点IP1交点IP2交点IP3坐标X:2650.254Y:7821.624曲线半径R:1200坐标X:2245.542Y:5856.632曲线半径R:3500坐标X:3021.121Y:8511.714曲线半径R:4200修改、保存等操作<修改、保存等操作丿修改、保存等操作图1表示平而交点数据的三个对彖2.1数据抽象数据抽彖的目的,是为了使设计者集中于问题的要点而不被细节所干扰,并为软件部件的复用提供最大的可能。路线设计中有大量的段落数据,如横坡分段、加宽分段等,
6、通过抽象,定以分段数据类和段落查找、操作界面函数,可统一处理路线CAD屮各类段落性质的数据:classCSgtRegion:publicCObject{public:DECLARE_SER1AL(CSgtRegion)virtualvoidSerialize(CArchive&archive);CSgtRegion0;CSgtRegion(double_chainl,double_chain2,PString_name);CSgtRegion(constCSgtRegion©);CSgtRegion&operator^(constCSgtRegi
7、on©);doublechainl,chain2;//分段起终点桩号PStringname;//指定的横断血模板名称};2.2信息隐藏数据的封装或隐藏是指隐藏一个类的内部工作细节从而支持或加强抽象性。要实现隐藏性,就要在类的界而和它的实现Z间作出明确的划分,界面具有公共可见性,即对程序的其它部分是透明的,类的实现则只具有局部可见性,即在类的内部才是透明的,类的界面描述这个类能做什么,而类的实现是解决如何做的问题,为支持抽彖性,界面对外暴露尽可能少的实现细节,使用这个类时只需通过界而了解这个类的功能、能进行哪些操作就足够了,修改这个类的实现细节不会
8、彫响使用到这个类的其它地方,从而提高软件系统的稳定性和可维护性。2.3类的继承继
此文档下载收益归作者所有