




已阅读5页,还剩74页未读, 继续免费阅读
(流体机械及工程专业论文)基于mdt的离心泵三维造型及应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
江苏大学硕士学位论文 摘要 当前,计算机辅助设计c a d 技术已经取得了蓬勃的发展,广泛应用于社会 生产的各个领域,各种专业性很强的c a d 软件应运而生在这场c a d 技术革 新中,泵作为流体机械的一个重要部分,从设计理念到设计方法直至最后的生产 应用都有了“质”的提高。但是在泵行业中,由于泵内流动状况与泵性能之间的 关系尚不完全清楚,即使给出了叶轮内的流速分布,设计出来的叶片形状也往往 不能满足强度、工艺等的要求,三维设计的方法没有得到充分的应用。 三维实体模型是决定整个c i m s 系统成败的关键因素,所以得到泵的三维实 体模型是完善泵的辅助设计与分析过程中必不可少的一个环节。 本文正是基于这样的技术背景,尝试对泵c a d 软件进行探索,为设计人员 提供一种方便快捷的设计方法,并对设计过程进行了充分的推理和论证,最后结 合实例做实体后处理分析。主要工作为: 介绍了当前国内外泵c a d 的现状,重点指出了存在的问题,剖析了本课题 的意义和依据,详细给出了程序开发的方法,建立了管理数据库,并扬弃了以往 泵c a d 开发成果,努力使软件做到简单、快捷、方便和实用。 重点对三维造型方法进行了详细的论证,指出了三维模型构建的机理和步 骤,给出了程序的流程,并对构造的模型进行了分析验证,结合实例说明了本系 统的运行特点。 充分发挥v b a 语言及组件技术的优势,系统程序简单、界面友好,并和支 撑软件具有良好的兼容性,为今后的泵c a d 开发探索一条全新的途径 介绍了三维模型的应用,说明了离心泵叶轮内部三维不可压湍流场的数值模 拟方法和步骤,简要叙述了模型在其他方面的用途,在软件后处理集成方面做了 简要的探索。 本文围绕m d t 5 0 ( m e c h a n i c a ld e s k t o p5 0 ) 开发平台展开,充分利用面向对 象的程序设计方法和a c t i v e x 技术,开发结果证实了研究方法的可靠性与先进 性,为进一步发展泵c i m s 系统提供了有力的帮助。 江苏大擘硕士学位论文 a b s t r a c t a tp r e s e n t , t h ec o m p u t e ra i d e dd e s i g nh a sb e e nd e v e l o p i n gd e e p l ya n d v i g o r o u s l y , p u t t i n gi n t op r a c t i c ei nv a r i o u sf i e l d so fs o c i a lp r o d u c t i o nb r o a d l y , a n d e m e r g i n gv a r i e t i e so fc a ds o f l w a r ee m b o d i e dt h es t r o n gc h a r a c t e r i s t i c so ft h e s p e c i a l i t y i nt h er e n o v a t i o no fp u m pc a d ,a sam a i np a r to fh y d r a u l i cm a c h i n e r y , a t t ma q u a l i t y e n h a n c e m e n tf r o md e s i g nt h e o r y , d e s i g nm e f l l l st op r o d u c t i o na n d p r a c t i c e b u tt h er e l a t i o nb e t w e e nf l o w i n gs t a t u sa n dp e r f o r m a n c eo f t h ep u m p i ss t i l l n o ts oc l e a ri np u m pi n d u s t r y w 硫sm o r e g i v e nt h a tt h ed i s t r i b u t i o no fv e l o c i t y a r o u n dp u m pv a n e ,t h es h a p eo f v a n ew eg e ta c c o r d i n 西ys t i l lc a nn o tf u l f i l lt h en e c d s o fi n t e n s i 够a n dt e c h n i q u e s s ot h e3 d - d e s i g nm e a n sh a sn o tb e e na p p l i e de n t i r e l yi n p u m pi n d u s t r y 3 d - m o d e li st h ed e c i d i n gf a c t o ro ft h ew h o l ec i m s i nt h a tc a s e a c h i e v i n g 3 d - m o d e lo fp u m pi sn e c e s s a r yi nt h ep r o c e s so fc o n s u m m a t i n gp u m p sc o m p u t e r a i d e dd e s i g na n da n a l y z i n gt e c h n o l o g y j u s tb a s i n g0 nt h i sb a c k g r o u n do f t e c h n o l o g y , t h i sp a p e rm e st oe x p l o r eak i n do f p u m pc a dt h o u g h t f u l n e s sf r e s h l y , a t t e m p t st og i v et h ed e s i g n e r sac o n v e n i e n ta n d e f f i c i e n td e s i g nm e a n s ,f u l l yi n f e r sa n dd i s c u s s e st h i sd e s i g np r o c e s s ,a n df i n a l l y c o n d u c t st h ea n a l y s i so f p o s tp r o c e s s i n gb a s e do na ne x a m p l e m a i nw o r k a c c o m p l i s h m e n t sa r e a sf o l l o w s : i n t r o d u c e st h ep r e s e n ts t a t u so fp u m pc a da th o m ea n da b r o a d ,m a i n l yp o i n t s o u tt h ee x i s t i n gq u e s t i o n s ,a n a l y s e st h em e a n i n ga n db a s i so ft h es u b j e c t , c o n c r e t e l y s h o w st h em e a n sa b o u tt h i sp r o c e d u r e ,e s t a b l i s h e sa nm a n a g i n gd a t a b a s e ,d e v e l o p st h e u s e f u la n dd i s c a r d st h eu s e l e s so ft h ef o r m e rr e s u l t so fp u m pc a dd e v e l o p m e n ta n d c o m e st oac o n c i s e ,r a p i d ,c o n v e n i e n ta n dp r a c t i c a lr e s u l t c o n c r e t e l yo f f e r sad e t a i l e da n a l y s i sa b o u t3 d - m o d e l ,p o i n t so u tt h ep r i n c i p l e s a n ds t e p so f3 d m o d e lc o n s t r u c t i o n ,a n a l y s e sa n dt e s t st h e3 d - m o d e l ,a n df i n a l l y s h o w st h eo p e r a t i o n a lc h a r a c t e r i s t i c so f t h es y s t e mt h r o u g ht h ee x a m p l e f u l l ye x e r t i n gt h es u p e r i o r i t yo fv b a a n dc o m p o n e n tt e c h n o l o g y , t h ep r o c e d u r e i sc o n c i s ea n dt h ei n t e r f a c ei sf r i e n d l yi nt h es y s t e m ;m o r e o v e r , t h ec o m p a t i b i l i t y b e t w e e nt h i ss y s t e ma n dt h es u p p o r t i n gs o f i w a r ei sw e l l ,w h i c he x p l o r e san e ww a yt o d e v e l o pp u m pc a d i nt h ef u t u r e i n t r o d u c e st h ea p p l i c a t i o no f3 d m o d e l i n c l u d i n gt h em e t h o da n ds t e p s 幻 c a l c u l a t et h ei n t e r n a l3 du n c o m p r e s s i b l eo ft h ep u m pa n do t h e rp o s tp r o c e s s i n g e x p l o r e st h ep o s tp r o c e s s i n go ft h e s o f t w a r ei nt h ef i e l do fs o f l w a r ei n t e g r a t i o n t e r s e l y i nt h i sp a p e r , m d t ( m e c h a n i c a ld e s k t o p5 o 、p l a t f o r mi su s e da sd e v e l o p m e n t b a s e ;a sw e l la so b j e c t - o r i e n t e dp r o g r a m m i n gm e t h o da n da c t i v e xt e c h n i q u ei s a p p l i e dc o m p l e t e l yi nd e v e l o p i n gp r o c e s s t h e r e s u l tp r o v e st h a tt h er e s e a r c h t e c h n i q u e sa r ef e a s i b l ea n da d v a n c e d ,i ta l s os u p p o r t st h e 砌d l e rd e v e l o p m e n to f p u m pc i m sc o n v i n c i n g l y k e y w o r d s :p u m p ,3 d m o d e l ,c a d , v b a ,n u m e r i c a ls i m u l a t i o n 1 i 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并 向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授 权江苏大学可以将本学位论文的全部内容或中英文摘要编入有关数据库进行检索,可 以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 本学位论文属于 保密口,在年解密后适用本授权书。 不保密 指导教师虢鸯豇 2 0 0 4 年占月f 5 日 矿狮舳 鸟肘 氢 年 签 舛 者 如 #文沧- v学 y l o l 6 如5 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进 行研究工作所取得的成果。除文中已注明引用的内容以外,本论文不 包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完 全意识到本声明的法律结果由本人承担。 学位论文作者繇缟乳 日期:阳争年f 月f 9 日 江苏大学硕士学位论文 第一章绪论 泵是一种输送液体或使液体增压的通用机械,它将原动机的机械能或其他外 部能量传送给液体,使液体能量增加。其主要工作介质包括水、油、酸碱液、乳 化液、悬乳液和液态金属等,也可输送液体、气体混合物以及含悬浮固体物的液 体等。在国民经济的各个部门,泵都有着广泛的用途。其主要应用范围是:农田 排灌、石油化工、动力工业、城市给排水航空航天、船舶工业等。 泵类产品种类繁多,设计工作量大,传统设计以手工设计为主,采用反复修 改,逐步逼近的方法,而每一步又涉及到许多数据查询、数据计算和绘图等,十 分繁琐。因此,按照现代泵的设计理论和方法,依托c a d ( c o m p u t e ra i d e dd e s i g n ) 技术,开发泵类c a d 软件,实现水力设计、立体造型、流场分析、有限元分析 及数控加工一体化乃是今后泵行业新产品开发的大势所趋。本文正是基于这样的 考虑,尝试在这一方面做出一些积极的探索。 1 1 国内外泵c a d 发展状况概述【4 2 1 1 4 3 1 1 4 4 1 : s 计算机辅助设计c a d 技术,作为电子信息技术的一个重要组成部分,很好 地将人的创造能力和计算机的高速运算能力,巨大存储能力和逻辑判断能力结合 在了一起,极大的提高了设计质量,减轻了设计人员的劳动强度,缩短了设计周 期,降低了产品成本,为开发新产品和新工艺创造了有利条件。随着c a d 技术 的迅速成长,c a d 技术的应用水平已经成为衡量一个国家、一个企业技术水平 的重要标志。 流体机械是较早运用c a d 技术的部门之一在国外,水泵c a d 在八十年 代初就已经具备了相当的水平,经过十几年的发展,现在像威尔泵业公司( w j i r p u m p s l t d ) 、沃信顿辛普森公司( w o r t h i n g t o n s i m p s o n d i v i s i o n o f p r e s s e r u k l i m i t e d ) 和日本三菱公司等,在水泵c a d 的技术研究上已经达到了比较成熟的 阶段。其主要的技术特点是: ( 1 ) 在软件方面,比较注重支撑软件的选择,软件开发的起点高,重复性少, 发展较快;系统软件在c a d 工作站几乎都采用u n i x 操作系统,开发语言倾向 于面向对象的c + + 语言。 ( 2 ) 在硬件方面,充分利用工作站可以处理大规模的应用程序,而且运行速 度快的特点,逐渐实现了从小型机向工作站的转变,进一步推动了泵c a d 的发 江苏大学硕士学位论文 展。 ( 3 ) 注重c a d 和c a m 的结合如欧洲最大的泵制造商威尔泵业公司( w 哳 p u m p sl t d ) 的两套c a d 系统靠i g e s ( 初始图形交换系统) 进行数据的双向传 输,c a d 系统输入参数后,可以直接输出刀具的走刀路线,并在图形终端模拟 刀具的行进轨迹,进而实现部件的仿真加工。目前,他们设计一台七级离心泵, 从参数输入到设计结果的屏幕显示,整个过程只需要十几分钟。 ( 4 ) 技术内容广泛,包括水力设计、性能预测、优化设计、功能模块化技术、 数据库管理、有限元分析等 我国泵c a d 的研究始于上个世纪七十年代,清华大学、沈阳水泵研究所、 江苏大学、中国农业大学等先后展开了这个方面的研究,取得了一定的进展,不 同程度的实现了泵的c a d 。 从上个世纪九十年代中期开始,由于w i n d o w s 操作系统和a u t o c a d 软件的 应用,人们开始应用a u t o l i s p 、c 语言和c 卜+ 等在w i n d o w s 操作系统和a u t o c a d 平台上开发泵的c a d 设计软件,研究工作向纵深方向发展,取得了一定的成果。 目前,泵c a d 在采用一元理论进行二维设计和绘型方面已经比较成熟,市场上 出现了实用商业化泵水力设计软件,如江苏大学开发的p c a d 2 0 0 0 等,一定程 度上满足了生产型用户的要求,在应用中体现了c a d 技术的优点。此外,国内 泵c a d 的研究内容也逐渐深入,从单一的离心泵研究到其他各类泵的广泛研究, 从单纯的水力设计软件开发到系列泵结构c a d 的研究,从二维水力设计到三维 造型模块的研究等,都取得了一定的进展,有力地推动了泵c a d 技术的应用和 发展。 综观我国泵c a d 技术的发展,与国外相比,由于起步较晚,总体应用水平 还比较低,没有完全体现c a d 技术特点,尚存以下不足: ( 1 ) 三维造型研究较少。国内泵c a d 的研究主要集中在二维水力设计,而 随着计算机集成制造技术在水泵制造中的应用的,三维造型将成为c i m s 技术的 关键所在。 ( 2 ) c a m 技术发展缓慢。加工路线仍以木模工手工刻制叶轮叶片模具来进行 铸造的方法,加工精度低,已经不能满足技术进步的需要。 ( 3 ) 离心泵研究偏多,而其他泵,如无堵塞泵、轴流泵等的研究较少。由于 输送介质的不同,不同的泵在设计方法上往往有着本质的区别。 ( 4 ) 软件所依据的理论和技术比较落后,与国外先进水平差距较大。如水泵 江苏大擘硕士学位论文 设计多采用一元理论,先进的三元粘性流动分析方法虽然有人研究,但是却不能 很好的融入到商品软件中。 ( 5 ) 缺乏合作,研究方向严重重合。各个研究单位横向合作较少,进行了很 多重复性的工作,既造成了资源浪费,也影响了泵c a d 的研究速度,同时也给 用户的使用维护带来了不便。 1 2 影响泵c a d 软件开发的主要因素 根据近年来泵c a d 的开发实践,影响泵c a d 开发的主要因素是: 1 支撑软件 目前可供选择的国际著名的c a d c a m 支撑软件比较多,如p t c 开发的 p r o e n g i n e e r 、i n t e r - g r a p h 的e m s ( e n g i n e e r i n gm o d e l i n gs y s t e m ) 和a u t o d e s k 公司的m d t ( m e c h a n i c a ld e s kt o p ) 等。国内的水泵c a d c a m 工作,目前大 多数在微机上进行,使用较多的是a u t o d c s k 的a u t o c a d 或m d t 。相对于其他 的三维软件而言,m d t 具有功能强大、界面友好、易学易用易等特点,它是工 作在w i n d o w s ( 或n t ) 平台上的微机三维设计软件包,是集a u t o c a d 全部功 能与参数化实体造型、曲面造型、装配造型、二维和三维双向关联绘图、与其他 c a d 系统交换数据的i g e s 、s t g p 转换器、丰富的标准件库、众多的机构生成 器和工程计算等模块与一体的机械设计系统。由于m d t 和a u t o c a d 兼容性好 且提供了丰富的二次开发工具,而国内泵软件以m d t 作为二次开发平台的还不 多见,因此选择m d t 作为二次开发平台不失为一种很好的尝试。 2 开发工具 在一般的c a d 支撑软件中均提供了内嵌的二次开发语言,如a u t o c a d 为 l i s p 、v b a 和a r x 等,e m s 为p p l ( p a r a m e r t r i cp r o g r a m i n gl a n g u a g e ) 。利用 这些在二次开发语言,可以设计绝大部分水泵c a d 模块。如在a u t o c a d 中 a r x 是a u t o c a d 提供的面向对象的应用程序开发接口( a p i ) 。这是一种特定的 c - 卜 编程环境,它包含一组动态连接库( d l l ) 。这些库与a u t o c a d 共享同一地址 空间,能被a u t o c a d 直接调用,因而具有执行效率高的优点。而v b a 是最为 常见的支持a c f i v e x 技术的完全面向对象的开发语言。a u t o d e s k 公司从a u t o c a d r e l e a s e1 4 0 1 版开始,内置了v b a 开发工具。a u t o c a dv b a 共享a u t o c a d 的 内存空间,通过a u t o c a d 的管理工具( v b a 管理器) 可以方便的对v b at 程 进行加载、卸载、保存、新建、嵌入和提取,其运行速度与o b j e c t a r x 应用程 江苏大擘硕士学位论文 序非常接近,比其他开发方式如a d s ,l i s p 要快的多。因此,水泵c a d 软件开 发应该优先选用这种内嵌式语言作为开发工具,这样开发的软件可与c a d 支撑 软件有机的集成到起,既充分发挥了支撑软件本身的优势,有效的贯彻了有关 c a d 技术标准,又可以在总体运行速度、软件升级、网络特性等方面获得益处。 3 曲面模型的构造 曲面模型的构建,一直是c a dt 作的热门话题,从c o o n s 曲面、b e z i e r 面、 b s p l i n e 曲面到现今流行的n u r b s 曲面,基本思路都是用曲面模型来插补三维 空间中的离散点群,使之成为某种光滑度的曲面。对于水泵c a d 雨言,关键问 题就是要生成叶片的曲面模型。从叶片木模图上可以得到叶片曲面上的离散控制 点,但是用这些离散的点还不足以确定叶片表面上任意一点的位置,必须得到描 述叶片曲面的连续性数学函数。由于叶片曲面的复杂性,数学模型的构建是十分 困难的,一般要进行复杂的数学推导、边界条件处理,计算量大且繁琐,生成的 曲面形状也很难控制。如果支撑软件本身提供了优秀的益面模型,那么就可以充 分利用现有的曲面造型技术来描述叶片,这样既避免了复杂数学模型的构建,同 时也为泵c a d 软件开发提供了方便 4 三维实体造型 传统的水泵设计,不论是手工方法还是计算机方法,大多在沿用借= 维工程 图( 如向视图、剖视图) 来表示三维实体的做法。这种做法的一个主要缺点是, 各个视图之间不能保证尺寸的一致性,即在一个视图上的修改,不能对应的反映 到其他视图上同时,这种方法生成的模型几何数据不能直接用于计算机数控加 工( c n c ) ,也不能用于对模型本身做各种物质分析( 如有限元计算) ,所以就造 成了c a d 和c a m 脱节。显然,用二维工程图描述三维模型的做法,已经不能 满足现代c a d 和c a m 的需要。现代c i m s 迫切需要直接对产品进行三维造型, 即用真实的几何数据对产品进行描述。因此,泵c a d 工作已经不能简单的局限 于水力设计和二维工程图的绘制而应该向更深的领域拓展 5 数据管理技术 泵c a d 开发过程中,需要采用大量的数据资料,对数据的管理就显得十分重 要,通常按照不同的情况可以采用数据库法、数据文件法和内存变量法来管理数 据。数据库法适合数据量很大的场合,数据的维护很方便,但编程量较大。数据文 件法适合于中等数据量的场合,相对于数据库法而言,编程量较小,模块之间的数 据传递可以采用此方法。内存变量法适合于数据量较小的场合( 如压水室隔舌角 与比转数之间关系的数据) ,优点是编程简单。运行速度快。 江苏大学硕士学位论文 数据管理的作用表现在:一是管理各个模块之间的数据流,将各个模块有机 的联系在一起;二是储存水力模型库,为相似换算法提供必要的数据来源 1 3 泵c a d 的发展方向 随着计算机技术的迅速发展和现代泵设计方法的不断完善,未来泵c a d 的 发展将呈现以下的趋势: 1 c a d 三维造型软件的开发。现有的水力设计软件在完成水力设计后,基 本上没有进行三维实体造型和c f d 分析的功能。而水力设计的完成,已为三维 造型提供了足够的三维信息。设计者可以借助支撑软件,充分利用这些信息来完 成三维实体造型。这样就可以进行流道和叶片的技术评估及强度、质心、有限元 等计算工作。 2 优秀支撑软件的利用。为了加速泵c a d 的开发过程,必须选择功能更 强的图形支撑软件,如高版本的a u t o c a d 、m d t 及p r o e 、u g 等。由于m d t 价格适中,易学易用,非常适合水泵行业的c a d 技术开发。 3 面向对象的高级开发语言。开发语言从一般的高级语言向面向对象的程 序编程转化,如m d t 内嵌的v b a 和a r x 等。它们和支撑软件融为一体,开发 环境良好,易于调试且功能强大。 4 c a d 与c a p p 和c a m 系统集成。未来机械行业的发展方向将是c i m s 系统。c i m s 可以大大缩短泵产品的设计和制造周期,提高产品质量,降低产品 成本,从而可以增强企业的市场竞争能力。 5 c a d 和c f d 技术相结合。泵的三维实体,以i g e s 格式输出到c f d 软 件中,就可以进行速度场和压力场分析,对泵的性能进行预测,验证设计结果, 减少泵产品设计制造费用,甚至还可以直接利用c f d 的反问题进行水力设计。 6 泵结构c a d 软件的开发目前,对泵结构c a d 的研究还很少。由于同 一系列的泵产品可能会有很多的规格,因此泵结构c a d 的研究具有广泛的应用 价值,可以极大的提高系列产品开发的速度和质量。 1 4 选题依据、主要内容和课题意义 泵属于旋转机械,内部流动十分复杂。目前开发的专业设计软件主要停留在 一元设计理论、二维水力设计的基础上,三维设计尚未得到充分的运用。在现代 泵设计系统中,c a d 、c a e 、c a m 、c a p p 等组成了一个新的c i m s 系统,其中 三维几何实体是系统的基础,代表了系统的几何信息,体现了c a d 的真正含义。 5 - 江苏大学硕士学位论文 在三维实体的基础上就可以进行流场分析、有限元分析、运动学分析等,并可以 进行数控加工、远程制造等 本课题尝试在现有水力模型的基础上,借鉴已经开发的泵c a d 软件的优秀 成果,充分利用m d t 5 0 及w i n d o w s 资源,以面向对象的v b a 编程语言作为开 发工具,依托m d t 5 0 支撑软件,运用a c f i v c x 技术来进行泵c a d 的三维造型 开发。在此基础上进行后处理,来进行流场分析等工作,以验证设计结果,进而 对设计过程进行必要的修正 本课题主要进行以下工作: 1 对离心泵的三维造型进行详细的研究,论证三维造型的理论依据和算法 表达,阐述三维模型构建的机理,给出叶轮和蜗壳的三维参数化表达方法,并创 建实体造型数据库。 2 用二维水力模型提供的信息,探索开发三维泵c a d 造型软件的方法。详 细给出实体参数化造型的步骤和程序实现的方法,并以实例验证了系统运行的有 效性本系统以v b a 为开发语言,充分发挥组件技术的优势,程序简单、界面 友好、思路清晰,易学易用,并和支撑软件具有良好的兼容性,为今后的泵c a d 开发探索一条全新的途径。 3 在实体造型的基础上对其应用做了阐述,就蜗壳流道的三维湍流场进行 数值模拟,给出流场分布图,分析验证计算结果。最后对三维造型的其他应用做 简要的介绍。 江苏大学硕士学位论文 第二章泵c a d 开发的环境与工具 2 1 泵c a d 软件开发环境 目前,对泵c a d 软件进行开发的主要开发工具有a u t o l i s p 、a d s ( a u t o c a dd e l o p m e n ts y s t e m ) 、o b j e e t a r x ( o b j e c t a u t o c a dr u n t i m ee x t e n s i o n s y s t e m ) 、v b a 等,它们各有特色。 a u t o l i s p 有很强的参数化绘图功能,但是没有友好的用户开发环境,用户界 面的设计必须用p d b 驱动d c l 语言实现,数据库访问要用a s e ( a u t o c a ds q l e x t e n s i o n ) 技术,开发和运行程序的效率都很低。 a d s 和o b j e c t a r x 要用c 语言和v c + + 进行w i n d o w s 编程,虽然功能强大, 运行效率高,但是较难掌握,加之开发周期长等原因,普及面较窄 v b a 具有友好的用户界面,强大的开发功能,但是因为其在参数化绘图方 面的缺陷,在c a d 开发中一直没有得到很好的应用。随着a e t i v e x 技术的出现, 这一状况得到了根本的改观 图2 1 所示为几种开发环境间的关系【5 9 1 : 图2 1a u t o c a d 的二次开发结构体系 a c t i v e x 技术是微软1 9 9 6 年推出的一项新技术,它是在o l e ( o b j e c t l i n k i n g a n de m b e d d i n g ) 技术基础上扩展形成的,其宗旨是在w i n d o w s 系统的统一管理 下协调不同的应用程序,准许这些应用程序之间相互沟通、相互控制。它不仅可 以跨越应用程序的界限,还可以跨越语言的界限,同时运行多个应用程序,并允 许这些程序间相互通讯,如图2 2 所示。这正是进行如a u t o c a d 等软件二次开 发所需要的功能。 。 江苏大学硕士学位论文 图2 2a c l i v e x 在开发语言与a u t o c a d 之间的作用 a c t i v e x 技术与其他的开发环境相比,具有突出的优越性: 开发语言多样化。如上图示,支持该项技术的语言很多,可以选择自己 熟悉的语言来开发,如:v b 、v c 和d e l p h i 等。 程序编制自由。用它编制应用程序时不受开发语言和接口的约束,可以 用自己的风格自由编写,提高了开发效率 可以充分利用已有资源以a u t o c a d 为对象的开发程序,既可以直接 调用a u t o l i s p 命令,又能直接调用其他应用程序 可移植性强。开发的应用程序有较强的可移植性,当主服务软件的版本 升级时,一般不做改动或者只做少量改动就可以应用。 系统安全性好。与a u t o l i s p 等其他的应用程序相比,系统的安全性易 于保证,也可直接进行加密。 效率更高。与d d e 等其他通信方式相比,用a c t i v e x 访问a u t o c a d 编 程更简单,效率高且性能佳。 2 2 a u t o c a d 中的a c t i v e x 技术【1 6 1 1 1 7 a u t o c a d a c t i v e x 提供了一种从a u t o c a d 的内部或外部来操纵a u t o c a d 的 机制,它是通过暴露a u t o c a d 的对象来实现的,一旦对象被暴鳝就可以用许多 不同类型的编程语言获取它,甚至于被其他的应用程序调用,从而达到对 a u t o c a d 实现编程的目的。这里a u t o c a d 程序被称为s e r v e r ( 服务程序) ,而 操纵它的程序如v b a 等被称为c l i e n t ( 客户程序) 。 2 2 1a u t o c a d 对象模型 对象是a u t o c a da c t i v e x 接口的主要单位,每一个开放的对象均代表一个 g 江苏大学硕士学位论文 a u t o c a d 的明确组件,它们都具有各自的方法和属性,应用程序就是通过对 a u t o c a d 的这些对象的方法和属性的操作来控制c a d 图形的。 a u t o c a da c t i v e x 接口提供以下五种类型的对象: 图元( e n t i t y ) 类对象。例如,直线、圆弧、多义线、文本、尺寸、o l e 图象等。 样式设置( s t y l e ) 类对象。例如,线型、尺寸样式等。 组织结构( o r g a n i z i n g ) 类对象例如,图层、组、图块等。 图形显示( v i e w ) 类对象。例如,视图、视窗等。 文档和应用程序( d o c u m e n t & a p p l i c a t i o n ) 类对象。例如,一个d w g 文 件或a u t o c a d 应用程序本身等。 以上这些对象有一个层次上的关系,这种层次间关系构成对象模型( o b j e a m o d e l ) 树,如图2 3 所示。引用对象时对于顶层和外部对象可以直接赋值,而 对于从属对象则需要间接引用,即从高层逐级访问对象。 一般对a u t o c a d 图形的操作,主要是存取a p p l i c a t i o n 、d o c u m e n t s 、m o d e l s p a c e 等对象,而a p p l i c a t i o n 对象是a u t o c a da c t i v e x 对象模型的根对象。通过 对a p p l i c a t i o n 对象及其子对象的的方法、属性等调用,可以实现对图形数据库 的调用。另外,通过a p p l i c a t i o n 对象的方法还可以方便的调入a d s 或a r x 程 序。 图2 3 对象模型间关系 2 2 2 利用a c t i v e x 技术进行a u t o c a d 的数据交换 目前对a u t o c a d 的图形数据库进行数据交换的方法主要有: 9 一t 江苏大学硕士学位论文 使用图形数据交换文件( d ) 脚本文件s c r 接口转换 利用o b j e c t a r x 开发工具 利用a c t i v e xa u t o m a t i o n 技术 a c t i v e x 部件使a u t o c a d 与外部应用程序间实现超级链结,从而获取 a u t o c a d 的图形数据。 一个应用程序支持的对象、方法和属性通常在应用程序的对象库中定义。类 型库是一个文件或文件的一部分,它描述了一个或多个对象的接口a u t o c a d 提供了一个名为a u t o c a do b j e c tl i b r a r y 的类型库,该库提供m o d e l s p a c e 类和 p a p c r s p a c e 类。通过对a u t o c a d 类型库的链结和对相关类的引用,向a u t o c a d 传递数据实现实体转换,就可以获取有用的a u t o c a d 图形信息。 2 2 3 作为客户程序的a u t o c a dv b a v b a ( v i s u a lb a s i cf o ra p p l i c a t i o n ) 是最为常见的支持a c t i v e x 技术的完全 面向对象( o b j e c t - o r i e n t e d ) 的开发语言。a u t o d e s k 公司从a u t o c a dr e l e a s e1 4 0 1 版开始,内置了v b a 开发工具。 a u t o c a dv b a 共享a u t o c a d 的内存空间,通过a u t o c a d 的管理工具( v b a 管理器) 可以方便的对v b a 工程进行加载、卸载、保存、新建、嵌入和提取, 其运行速度与o b j e c t a r x 应用程序非常接近,比其他开发方式如a d s 、l i s p 要 快的多a u t o c a dv b a 的开发能力取决于三个基本要素: a u t o c a d 本身含有的对象集合,封装了a u t o c a d 的所有实体、数据和 系统命令。 开放的a u t o c a d 体系拥有的多级开发接口,a u t o c a da c t i v e x 技术接口 建立了和a u t o c a d 对象进行消息传递的通讯机制。 v b a 编程环境有自己的对象集、关键字、常数等,提供了程序流程、控 制、纠错、执行、在线帮助等。 a u t o c a d v b a 通过工程来管理整个开发内容,工程即可以是内嵌在图形中 构成内嵌工程,也可以单独保存而形成全局工程。a u t o c a dv b a 提供了t h i s d r a w i n g 对象和当前图形建立联系,可以对当前的文档对象及其属性、方法和层 次图中的其他对象进行快速存取。 同时,a u t o c a dv b a 也提供了应用程序与其他v b a 程序( 如m se x c e l ) 的沟通路径,当使用其他应用程序的对象类型库时,a u t o c a d 可作为该程序的 客户程序。 v b a 的主要功能如下: 1 0 江苏大学硕士学位论文 v b a 可提供强大的窗体创建功能,为应用程序建立对话框及其他屏幕界 面。 可以创建自己的工具条 可以建立功能强大的模块级宏指令。 提供建立类模块的功能,对于a u t o c a d a c t i v e x 技术中的应用程序级和 对象级事件调用,将使用类模块。 具备完善的数据访问与管理功能,通过d a o ( 数据访问对象) ,可以对 a c c e s s 数据库或其他的外部数据库( 如:d b a s e 、f o x p r o 等) 实现访问与管理。 可以使用s q l 语句检索数据,与r d o ( 远程数据对象) 结合起来,建立 客户机服务器级的数据通信。 能够使用w i n 3 2 a p i 提供的功能,建立应用程序与操作系统之间的通信。 v b 和a u t o c a dv b a 都是基于a c t i v e x 技术的开发环境,两种开发方式 原理一样,只需要简单的改动就可以将两个环境下的程序代码互换。 2 2 4d a o 技术 d a o ( d a t a a c c e s so b j e c t ) 技术是建立在m i c r o s o rj e t 引擎上的一种对象化关 系数据库管理系统。j e t 引擎是微软创建的基于a c c e s s 的一种接口,现在已经完 全支持3 2 位数据操作,它为用v b 、v b a 等编程语言开发的应用程序与a c c e s s 数据间的通讯提供了如下基本功能: 支持对象化编程体系 支持对表、索引、查询的创建、修改和删除 支持域层( 非a c c e s s 数据库为字段级) 和记录层数据验证 支持数据的完整性检验 支持使用结构化查询语言 提供数据库安全机制 提供数据库修复、数据压缩和重新索引的功能 应用程序是通过一系列的数据访问对象( d a t a a c c e s so b j e c t ) 访问j e t 引擎提 供的各种对数据库的操作功能。d a o 可使用户通过设置对象的属性以及执行附 加到对象上的方法来操作数据库中的数据。 使用d a o 来创建数据库,对象层次的概念必须明确,d a o 的对象之间的层 次和依赖关系如表2 1 所示: 江苏大学硕士学位论文 表2 1 数据访问对象( d a o ) 层次关系 对象 功能介绍 d b e n g i n e 即j e t 引擎,数据库与外部程序的接口 w o r k s p a c e数据库的工作空间,数据库的建立、打开以及事务处理等均是建立在工作空 阃上的 d a t a b a s e数据库对象,包含了创立、修改和删除表,索引及关系等数据库元素的方法, 必须在该对象的基础上建立表、索引和关系 t h b l e d e f 数据表对象,也是表的物理结构的定义该对象包含了创立域和索引的方法 q u e r y d e f 存储在数据库中的、用s o l 对表进行查询获得的致据信息 r e c o r d s e t 从数据库中抽取的记录集合。简称记录集包含了对记录操作的各种方法与 属性 f i e l d域对象。即数据表中的一列在非a c c e s s 数据库中称为字段 i n d e x索引对象,针对已经定义的键标域对表的记录进行排序的有序表 r e l a t i o n表之间关系存储关于数据表之间关系的数据对象 2 3 图形支撑平台m d t 简介【3 】 a u t o d c s k 公司于1 9 9 6 年3 月推出了在w i n d o w s 9 5 和w i n d o w s n t 环境下的 m d t ( m e c h a n i c a ld e s k t o p ) ,它是基于最新版a c i s 3 0 几何造型核心,采用v c + + 编程和面向对象的数据库,是用先进的第二代面向对象技术组件开发的程序典 范,在p c 机上实现了当今高档u n i x 工作站c a d 系统引以为豪的混合建模技 术。 m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论