找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 16746|回复: 1
打印 上一主题 下一主题

CAD/CAM开发平台技术

[复制链接]
跳转到指定楼层
1
发表于 2005-3-13 12:30:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

1、引  言
  
  CAD/CAM技术从诞生至今已有三十多年的历史,历经二维绘图、线框模型、自由曲面模型、实体造型、特征造型等重要发展阶段,其间还伴随着参数化、变量化、尺寸驱动等技术的融入.通过三十多年的努力,CAD/CAM技术在基础理论方面日趋成熟,同时推出了许多商品化系统,诸如Pro/Engineer,UGII,I-DEAS,Euclid-IS,CATIA,Solid Works等.“美酒愈陈愈香”,但软件技术则不同,停止就意味着被淘汰,CAD/CAM系统的开发正伴随着计算机软硬件技术的高速发展向着更高、更深层次方向发展.CAD/CAM系统的开发主要可分为三种方式:(1)完全自主版权的开发,一切需从底层做起;(2)基于某个通用CAD 系统的二次开发,如基于AutoCAD软件的二次开发;(3)基于CAD/CAM软件平台的开发,此类开发界于前两种方式之间,较二次开发可以更深入核心层,具有开发周期短、见效快、系统稳定性好和功能强等特点,当然平台的价格也很昂贵.前两种开发方式在国内较普遍,有关书籍、论文也很多,而对于第三种开发中用到的开发平台方面的阐述则几乎没有,故我们对CAD/CAM开发平台做了较系统、深入的研究.当今比较流行的CAD/CAM平台很多,主要有ACIS,PARASOLID,CAS.CADE,Pelorus,DESIGNBASE等,本文主要阐述较具代表性的平台ACIS[1,2],CAS.CADE 和PARASOLID[7—10].因篇幅所限,本文重点分析ACIS,对CAS.CADE 和PARASOLID则侧重于功能特色的阐述.  
    2、ACIS平台
  
  ACIS是美国Spatial Technology公司推出的三维几何造型引擎,它集线框、曲面和实体造型于一体,并允许这三种表示共存于统一的数据结构中,为各种3D造型应用的开发提供了几何造型平台.Spatial Technology公司在1986年成立,目前ACIS 3D Toolkit在世界上已有380多个基于它的开发商,并有180多个基于它的商业应用,最终用户已近一百万.许多著名的大型系统都是以ACIS作为造型内核,如AutoCAD,CADKEY,Mechanical Desktop,Bravo,TriSpectives,TurboCAD,Solid Modeler,Vellum Solid等.
  
    2.1 ACIS的开发接口
  如图1所示,基于ACIS的开发接口有3个:API函数、C++类和DI函数.图中AMFC(ACIS Microsoft Foundation Class Component)是专门为Microsoft Windows平台提供的与MFC的接口.
  
图1 C++应用与ACIS的接口
  
  (1) API函数(Application Procedural Interface)
  API函数提供了应用与ACIS间的主要接口.应用通过调用API函数建立、修改或恢复数据,无论ACIS底层的数据结构或函数如何修改,这些函数在每一版本中均保持不变.当在API例程中发生错误时,ACIS可立即自动回溯到调用此API例程前的状态,从而保证模型不会崩溃.
  (2) 类(Class)
  类是ACIS以C++类的形式提供的开发接口,可用于定义模型的几何、拓扑以及实现其它功能.在应用中,可直接通过类的公共(public)数据成员和保护(protected)数据成员以及成员函数(member function)与ACIS相互作用.开发者也可以根据特殊的需要从ACIS类派生出自己的应用类,类接口在各版本中可能有变化.
  (3) DI函数(Direct Interface)
  DI函数提供了不依赖于API而对ACIS造型功能可直接访问的接口,与API不同的是,这些函数在各版本中可能有变化.DI函数并不能访问ACIS中的所有功能,它们通常用于那些并不改变模型的操作,如查询等功能.另外,DI函数提供了底层样条库的接口.
  
    2.2 几何与拓扑
  几何(Geometry)、拓扑(Topology)和属性(Attribute)构成了ACIS模型,三者统一由最基础的抽象类ENTITY所派生.虽然ENTITY本身不代表任何对象,但在ENTITY中定义了它所有子类应具有的数据和方法(如存储、恢复、回溯等).ACIS模型数据的C++类层次关系如图2所示.ACIS的拓扑包括BODY(体)、LUMP(块)、SHELL(壳)、SUBSHELL(子壳)、FACE(面)、LOOP(环)、WIRE(线框)、COEDGE(公共边)、EDGE(边)和VERTEX(顶点).ACIS把线框(WIREFRAME)、曲面(SURFACE)和实体(SOLID)存储在统一的数据结构中,这种共存机制使ACIS支持混合维模型和各种非闭合模型.图3描述了拓扑对象间的关系以及拓扑与几何间的关系.
  
图2 ACIS中模型的C++类层次关系
  
图3 ACIS中模型的数据结构
  
    2.3 主要功能和特色
    2.3.1 功 能
  ACIS产品由两部分构成:核心模块(ACIS 3D Toolkit)和多种可选模块(Optional Husks).在核心模块中提供了基本、通用功能,而在可选模块中提供了一些更为高级的和更专用的功能,其主要功能如下.
  (1) 构造曲面技术.可通过一个线框或一组边生成曲面,其方法包括覆盖(covering)、蒙皮(skinning)、放样(lofting)、网格曲面(net surfaces)、可变形曲面(deformable surfaces).可变形曲面是ACIS可选模块DS(Deformable Surface component)中提供的功能;变形曲面造型(deformable modeling)是一种交互定义合理、自由曲线曲面的方法,而不是一种曲线曲面的表示方法,它是一种基于能量优化策略的方法,用户可通过施加负载和约束来修改曲线或曲面的形状.
  (2) 求交、布尔运算和缝合.求交器(intersector)用于判断曲线和曲面是否相交并可求出交点.求交是通过底层的C++类实现的,用于对模型的几何进行操作,可进行曲线和曲线、曲线和曲面、曲面和曲面的求交运算;布尔运算(Boolean operations)包括并、交、差运算;缝合(stitching)是指通过共边或共顶点缝合两个体.
  (3) 过渡.ACIS具有强大而丰富的过渡功能,标准的过渡功能内置在ACIS核心模块中,而更高级的过渡功能在可选模块Advanced Blending Husk(ABH)中提供.
  (4) 模型分析.ACIS的模型分析功能主要包括:对象关系(object relationship)、物理特性(physical properties)、单元拓扑(cellular topology)、几何分析(geometric analysis)和光线测试(ray testing)等.
  (5) 显示与交互.ACIS的显示方式包括线框图、多面体图、多面体消隐图、光照图.在交互方面提供了拾取和过滤(picking and filtering)、橡皮线(rubberbanding)、网格管理(grid management)等功能.
  (6) 模型管理.
  .文件的存储与恢复. ACIS提供了两种存储模型文件的格式:以ASCII文本格式存储文件SAT(Save As Text)和以二进制格式存储文件SAB(Save As Binary).SAT文件的格式是开放的,为非基于ACIS的应用存取ACIS模型提供了途径.
  .零件管理. 通过ACIS的零件管理组件(part management component),可把实体组织成零件,并且可以以各种方式对零件进行操作.
  .回溯. 通过此功能可在ACIS模型的各状态间切换,支持线性或非线性的历史流,并支持多个历史流.
    2.3.2 特 色
  ACIS的产品线是采用软件组件技术设计的,在公司成立之时就打起了软件组件技术和开放系统的旗帜向传统的CAD/CAM领域发出了挑战.建立在软件组件技术基础上的开放式体系结构形成了ACIS的重要特色,其主要特色如下:
  (1) 基于组件的开放式体系结构.通过采用软件组件技术,可使不同用户、不同应用采用不同的组件组合,开发者也可以用自己开发的组件替代ACIS组件.ACIS的C++库由35个DLL组成,为开发者开发3D应用提供了极大的柔性和功能基础,开发者可以迅速把ACIS的新版本集成到产品中.例如Ashlar公司(Vellum Solids)和Visionary Design Systems公司(IronCAD)几乎在ACIS 4.0面市的同时宣布其基于4.0的应用推出.
  (2) ACIS的几何总线(ACIS geometry bus).ACIS的开放体系结构和它的SAT构成了ACIS几何总线.ACIS几何总线使线框、曲面、实体的几何与拓扑模型数据能够自由交换,当SAT模型在“bus”上流动时,不需任何解释与翻译.产品模型从概念设计到制造过程,可能使用多个商家提供的应用,通过几何总线摆脱了数据翻译的负担,无须为模型的互操作做任何工作,这在封闭式系统中是不可想象的.
  (3) 强大的组件功能.ACIS除了在它的ACIS 3D Toolkit中提供了各种功能强大的内置组件(如faceter、零件/模型管理、图形交互、基本显示、OpenGL显示等组件),还在Optional Husks中提供了满足更高级需求的可选组件,包括高级过渡(支持复杂拓扑、几何过渡)、高级渲染、可变形曲面、修补、网格曲面、局部修改、精确消隐、抽壳等组件.另外,还有许多第三方开发的组件,这些组件也同样可嵌入基于ACIS的应用中.
  
    3、CAS.CADE平台
  
  CAS.CADE是由法国MDTV(Matra Datavision)公司开发的CAD/CAM软件平台.虽然CAS.CADE是CAD/CAM软件平台中的一支新军,是MDTV仅经过4年开发就推出的产品,但它却是MDTV积其在工业软件和几何造型软件方面十几年经验的结晶.众所周知,著名的CAD软件Euclid-IS就是该公司的产品,而且据称该公司目前的CAD/CAM产品都是基于CAS.CADE开发的(如QUANTUM),所以MDTV本身就是CAS.CADE的第一用户.目前,CAS.CADE已应用于机械、船舶、地球科学、医学和土木工程等领域,其应用主要集中在专业性CAD/CAM/CAE、GIS、AEC等应用软件的开发.如法国土建机构SETRA开发的公路与桥梁设计软件ARCAD、法国地球科学结构B.R.G.M.开发的GIS系统、日本Nippon Steel集团开发的汽车电路/布线软件、日本Sanei公司开发的公路CAD系统等.
  
    3.1 类库结构
  CAS.CADE主要由两部分组成:类库(object libraries) 和软件开发工厂(software factory).类库是由完全可重用、面向对象的C++类构成,它提供了2D,3D的几何造型和对象操作等功能,包括图形实体的建立、编辑、显示和拾取等,具体的类库结构如图4所示.
  
图4 CAS.CADE类库结构
  
    3.2 主要功能和特色
    3.2.1 功 能
  (1) 几何造型.CAS.CADE除了提供一些基本的2D,3D曲线和曲面造型功能外,颇具特点的是它对于2D既可以直接生成几何也可通过约束生成几何,这便于参数化CAD系统的开发,而对于3D则提供了基本的特征造型功能.CAS.CADE通过BrepFeat类支持特征造型(BrepFeat类是对基本造型模块BRepAPI的扩展),通过BrepFeat派生出一些子类,其类的层次关系如图5所示.LocalOperation类提供了对局部修改类型特征的支持,避免了一些面面求交运算;MakeCylindricalHole类支持圆孔特征,包括through-all,from-to,through-next,until-end,blind等类型的圆孔;MakePrism类支持拉伸类(突起或凹陷)特征,包括given-height,through-all,until,from-until,until-end等拉伸类型;MakeRovol类支持旋转类特征,包括given-angle,until,from-until,through-all等旋转类型;Gluer类用于对两个实体进行粘合,包括面-面、边-边粘合;SplitShape类支持通过线框或边对面进行分裂.可见,BrepFeat类为特征造型系统的开发奠定了强有力的基础.
  
图5 BrepFeat类的层次关系
  
  (2) 可视化操作及交互对象.图形对象的显示方式包括线框、消隐、渲染、自定义,并可对图形对象进行动态拾取操作.在图形交互方面提供了强大的功能,对话框引擎中提供了对话框生成器(对话框命令语言DCL).交互可重用模块包括2D Viewer,3D Viewer,Tree browser,Copy&aste,2D草图工具等.
  (3) 数据存储.支持所有数据类型的存储,并提供了新颖的设计管理器(Euclid design manager),支持产品数据管理、Euclid数据库管理和Euclid数据库存取等功能.
  (4) 数据交换.提供了其几何与其它异构CAD系统的接口,接口是双向的(输入和输出),接口共有三种:STEP-AP214,IGES,DXF.
    3.2.2 特 色
  CAS.CADE不仅仅是一个几何造型系统,更确切地说它是一个CAD/CAM/CAE集成开发环境,它除了提供基本的造型功能外,还提供了更贴近应用开发的功能,主要特色如下:
  (1) 强大的软件开发工厂.通过基于并行工程原理的综合开发桌面系统,保证编程人员的最佳效率和代码生成;通过类浏览器,管理重复使用的和专用的软件组件;提供全套开发工具,包括C++代码生成器、执行代码程序生成器、与Motif兼容的GUI生成器.
  (2) 重复使用的对象库.提供可选择的系统访问、用户界面、数据管理、造型、运算、文档、参数、图形等C++类库;通过丰富的可重用软件组件,可为科研和工程领域开发功能强大的任务专用软件和用户专用软件;分别提供在UNIX和PC机平台上运行的对象库.
  (3) 重复使用的交互服务.提供用户界面专用资源,包括桌面系统生成器、多媒体在线帮助文件、3D-2D视图、数据库访问以及对话框;支持可完全用户化的界面菜单、对话框、图标、命令语言.
  
    4、PARASOLID平台
  
  PARASOLID是英国EDS(Electronic Data Systems)公司推出的CAD/CAM开发平台,它是由英国剑桥的Shape Data公司研制的,其前身是早期的实体造型先驱Romulus系统(Romulus最早期工作要追溯到70年代在剑桥大学的开发).Shape Data公司在1985年推出了一个面向工程师的新产品项目,此项目的目标是在以复杂曲面为边界的实体造型领域提供通用的开发平台,由此诞生了PARASOLID.目前,PARASOLID在世界上已有7000多个基于它的最终用户产品,其应用范围主要集中在机械CAD/CAM/CAE领域,它的用户群包括系统开发商、企业、大学、研究机构等.著名的CAD软件UGII,Solid Works等都是以它作为图形核心系统.应用PARASOLID的主要公司有EDS-Unigraphics,ICAD,Siemens-Nixdorf,Fujitsu,General Electric和General Motors等.
  PARASOLID支持流形造型与生成型拓扑(非流形造型、单元体造型、混合维造型),提供了布尔运算、局部操作、显示、查询等功能.PARASOLID的造型能力强而丰富,其主要特色表现在以下方面:
  (1) 复杂过渡.PARASOLID提供了丰富的边、面高级过渡和倒圆功能(如rolling ball,variable-radius,curvature continuous,conic-section等).
  (2) 容差造型(tolerant modeling).PARASOLID从其它CAD系统导入数据(尤其是裁剪曲面)时无须对模型进行修补,而是采用了独特的容差造型技术.通过为每个边赋予不同的容差,使模型交换可靠、精确,避免了几何数据的丢失、缝隙的产生及其它误差.
  (3) 抽壳、等距和变厚.抽壳、等距和变厚是生成薄壁零件的三种操作,作为可靠的造型器,PARASOLID支持复杂几何操作,并允许结果模型的拓扑与原始模型的拓扑相差很大.
  (4) 拔模.PARASOLID支持复杂零件的拔模操作,支持对复杂曲面几何的变形操作.这些功能与非均匀变比的结合,为各种模具设计提供了强有力的工具.
  
    5、CAD/CAM开发平台的发展趋势
  
  综上所述,可以看出CAD/CAM开发平台向着更深、更高层次发展,同时不断融入计算机软件新技术,并呈现出开放化、多元化发展趋势.CAD/CAM平台发展趋势概括如下:
  (1) 支持多种主流的计算平台,包括Windows 95&NT,Apple Power Macintosh、最流行的UNIX工作站(如Sun,SGI,DEC Alpha,HP 9000,IBM RS/6000等).
  (2) 采用面向对象技术.对象具有封装性、多态性、继承性,使对象模块化、即插化,从而提高应用开发和软件维护效率,增强了代码的可重用性和互操作能力,最终达到改善应用整体质量的目标.
  (3) 采用软件组件技术与开放式结构.基于组件的功能可为设计者提供很大程度的柔性,通过组件技术提供的功能模块,开发者可方便地把它嵌入到应用中,并能够快速适应前沿技术和扩展核心功能.采用组件技术的最好例证当属CAD软件新军SOLIDWORKS. SolidWorks利用PARASOLID作为实体几何建模器,D-Cubed公司的DCM作为尺寸约束管理器,Lightwork Design公司的 Lightworks作为带真实感的浓淡处理器,Microsoft的Foundation Class作为其基于Windows应用的接口开发工具.SolidWorks从开发到推出极其迅速,在很短的时间内就提供了优质的软件产品,而且从1995年推出至今,已成为很有竞争力的产品,这些均主要得益于它采用了组件技术.软件组件技术为开放奠定了基础,既然开放就应该统一标准.目前在软件技术领域有两个重要标准,即CORBA(Common Object Request Broker Architecture)规范和IDL(Interface Defination Language)规范.CORBA的目标是要使异构分布环境内的不同应用系统之间能够互操作,IDL则是一种用来定义组件如何与ORB交换信息的标准语言.
  (4) 支持混合维造型——线框、曲面、实体,在数据结构层采用统一的精确边界表示,支持流形与非流形拓扑,并在造型功能上做的越来越深入、广泛.如PARASOLID的复杂过渡处理、ACIS的可变形曲面、CAS.CADE的参数化和特征等功能.
  (5) 提供更用户化的功能.传统的CAD/CAM平台只提供最基本的几何造型功能,如基本图形的绘制、基本体素的生成.当今的平台则提供更上层的功能,如特征造型、约束造型.而且在提供造型功能的同时,提供诸如显示、交互、产品数据管理等功能,即提供了一个集造型、可视化、交互、数据管理为一体的集成化开发环境.这种集成开发环境可大大提高开发者的开发效率,更便于以CAD/CAM为核心的集成化、一体化产品的开发. 

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2005-3-13 12:54:43 | 只看该作者
想做大系统的话就考虑不要MFC了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-26 21:05 , Processed in 0.038323 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表