ImageVerifierCode 换一换
格式:DOCX , 页数:102 ,大小:720.05KB ,
资源ID:10230978      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10230978.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(CATIA二次开发.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

CATIA二次开发.docx

1、CATIA二次开发CATIA二次开发文件第一课:CATIAV5自动化及脚本语言结构内容列表:CATIAV5自动化及脚本语言介绍VB、VBScript、VBA之间的区别宏的兼容性、结构及文件进程中的宏2.1运行一个宏2.2在工具栏上添加一个宏外进程的编程3.1 使用VBA或VB 运行外进程例子:从Excel里导出螺钉3.2使用Windows Scripting Host运行外进程.Windows Scripting Host 下的VBScript例子:“BoltVBScript.vbs”3.2.2Windows Scripting Host 下的JavaScript 例子:“BoltJavaSc

2、ript.js”.用HTML运行外进程3.3.1用VBScript在HTML里运行外进程 例子:“BoltVBScript.html”3.3.2用JavaScript在HTML里运行外进程例子:“BoltJavaScript.html”1 CATIA自动化及脚本语言概述通用在Unix和NT平台上无论是在NT平台还是Unix平台上,脚本语言允许你使用宏以一个非常简单的方式来对CATIAV5进行编程。CATIAV5使用了NT平台下的VB脚本和Unix平台下的BASIC脚本中相同的部分,所以我们在两个平台下可以运行相同的宏。在NT平台下 自动化允许CATIA与其他程序共享对象,如EXCEL,WORD

3、,VISUAL BASIC。 CATIA可以使用WORD/EXCEL对象,反之也相同。在UNIX平台下 将来的CATIA的版本里,CATIA将允许同Java共享自己的对象,这将为Unix平台和NT平台提供完整的兼容性。CATIAV5 自动化:概述(仅限NT平台)自动化允许在不同的进程之间通讯COM:(对象组件模型):COM是微软公司提出的目的在不同程序中共享对象标准。Automation:Automation是一种微软公司的技术,目的是在开发环境里使用COM对象ActiveX组件是一种微软标准,目的是在开发环境里共享不同程序的对象。OLE:(对象链接及嵌入)意味着一个文件可以被另外的一个程序的

4、文件链接。这种链接及嵌入的对象可以被其他的程序在编辑区编辑。Visual Basic ,VBA,VBScript之间的区别Visual Basic(Visual Basic专业版):VB是个完全的版本。1 可以编制独立的程序。2 也可以创建ActiveX和程序服务器。3 可以被编译。4 VB提供了自己的文档在线帮助VBA(Visual Basic for Application):VBA是VB的一个子集。1 VBA是程序中的主机,就象Word,Excel。2 它提供了一个带有编辑器、除错器、帮助、对象浏览器、完成器的完整的开发环境。3 利用它的Tools-Reference菜单可以声明使用的对

5、象库。这在完成和对象浏览器之间建立了一个通道。VBScript(Visual Basic Script):VBScript是VB的一个子集。1 更简单的VB解释语言。2 可以调运CATIA对象。3 没有数据类型的区别。系统总是动态的调用函数和对象属性。(迟绑定调用对象通过他们的Idispatch接口)宏兼容性一个在无论是NT平台还是Unix平台已纪录的宏都可以运行在两个平台上(NT和Unix)。有面板的ActiveX被添加到宏里,但这个只可以在NT平台下。其他服务例如“ Scripting.FileSystemObject”可以被“ CreateObject”所调用,但这个也只可以在NT平台下

6、使用。对象类型的声明在宏中是被纪录的,即使是它未被使用,但它可以在下一步的编程中帮助你理解程序。CATIAV5脚本性能内进程应用:在CATIA里打开TOOLS-MOCROS菜单,当宏运行时,CATIA是不响应的。在两次调用之间,你不可以在一个宏中存储变量。宏起到了连接在Windows NT平台下的VBScript和nix平台下的BasicScript的作用。外进程应用外进程以AUTOMATION为基础,一个外进程可以调用CATIA,建立或修改草图,解码、定制、控制CATIA,与内进程不同的是,这个时候CATIA是可响应的。外进程对CATIA对象作出的每一步修改我们都可以视修改情况决定是否保留来

7、维持两个进程之间的同步,这种外进程可以通过一下工具来开发:1. Visual Basic2. Windows Script Host(VBScript,JavaScript)3. Windows Explorer HTML(VBScript,JavaScript)4. 其它的任何COM程序。在以后,将提供一种JAVA/CROBA封装的CATIAV5 的自动化对象,这些将使在NT平台和Unix平台下开发的语言变为Java,无论是外进程还是内进程。运行内进程的宏录制一个宏是指产生相应的脚本语言来纪录一串有次序的动作,如创建、修改对象。当我们结束录制时,我们可以保存、修改、回放,这些被称为宏。回放一

8、个宏之所以为一个“内进程”是因为脚本被和CATIA同一个进程的解释器所执行。宏可以存储为外部的文件或存储在自己本身所在的文件上。按照惯例,录制一个宏有利于我们了解怎样去编制程序。2.1运行一个宏1. 你可以象下面方式运行,这种方式时宏在CATIA一运行起时运行:2 也可以以混合的方式运行CATIA,这种运行方式执行时,这个命令会打开CATIA,运行宏,然后退出CATIA.你可以在宏菜单下以交互的方式运行一个宏,也可以在工具菜单上点击相应的按钮。2. 2在工具栏上添加宏1 点击Tools-Customize,打开对话框,点击Command页,选择Macros选项。2 拖动你想要添加的宏的名称到工

9、具栏上。3 选择另外一个代替默认的图标,点击这个图标会显示这个宏的属性。3. 运行外进程程序(仅限于NT平台)脚本运行在其他程序的其他进程上,如:1 Visual Basic。2 VBA(Excel/Word)。3 使用VB脚本或JAVA脚本的WSH(Windows Script Host)。4 使用VB脚本或JAVA脚本的HTML。 CATIA可以被其他任何的COM程序脚本化。3.1 从VBA或VB上运行外进程Visual Basic和VBA提供了非常有用的工具,使用这些工具,我们可以声明任何由Dassault Systemes提供的库文件(*。tlb)。库文件包含了所有对象的声明和所有外部

10、对象的方法和属性。1 因为有类型定义,所以有类型检查和“早期绑定”2 完整的帮助系统将提供对象的所有属性和方法,帮助系统也会提供对象方法参数的类型。3 对象浏览器将纪录所有的外部对象这里有使用从Visual Basic或VBA引导CATIA的说明:1 如果CATIA已经运行2. 如果CATIA没有运行:如果INFITF.tbl库文件被引用的话,我们可以用INFITF.Application来声明CATIA.示例:这个示例是演示如何引导CATIA和从Excel里创建一个螺钉的零件。在这个示例里我们将学习:-在Excel里的Visual Basic of Application(VBA)开发环境。

11、-怎么在Excel里创建一个按钮。-怎么去在这个按钮上连接一个宏。-这个宏将引导CATIA和创建一个螺钉。第二课CATIA的脚本语言内容列表:1 介绍2 基本特征的脚本语言2.1基本特征的脚本语言介绍3. 草绘脚本3.1草绘脚本介绍4.零件特征设计脚本语言4.1零件特征设计脚本语言介绍5.外形特征设计脚本语言 5.1外形特征设计脚本语言介绍6装配特征设计脚本语言 6.1装配特征设计脚本语言介绍7.草图特征脚本语言7.1草图特征脚本语言介绍8.测量 8.1注册和类型库9.混合10.常规的注释 -CATIA的注册和类型库 -关于数字、文字和单位 -关于安全数组变量 -关于set的使用 -关于cal

12、l的使用-如何将一个宏转换成Visual Basic程序-如何将一个Visual Basic转换成宏-宏1介绍外部对象的结构通过CATIA外部模式可以创建文档、零件、金属框架、产品、工程图和其他很多的包含在CATIA工作区的对象,这种外部对象提供了可以属性或方法去读取或修改现有的对象。所有的对象可以被交互的看到,可以被宏或外进程的程序所脚本化。内容列表: -关于对象、属性、方法。 -关于继承和聚合 -关于数字、文字和单位 -关于安全数组变量关于对象,对象数组,属性及方法。脚本语言依赖于对象,例如Visual Basic。在Visual Basic里,CATIA本身、文件、窗口、视图、零件、草图

13、甚至直线、曲线都有相对应的对象。1.对象:实体。例如:文档、直线、拉伸实体 2.属性:对应对象的特征。例如:DocName= CATIA.ActiveDocument.FullName3.方法:对象的一个动作。例如:CATIA.ActiveDocument.SaveAs “MyNewName”4.对象数组:对象的列表。(提示:CATIA里,以s结尾的才是数组)CATIA对象数组索引从1开始,并不是0。例如:For i=1 to CATIA.Documents.CountMsgbox CATIA.Documents.Item(i).NameNext我们还可以通过一个对象的名字来访问对象数组里的单

14、个对象,例如:Msgbox CATIA.Documents.Item(Product1.CATProduct).Name我们通过使用Add函数来添加对象到对象数组里去,例如:set myPartDoc= CATIA.Documents.add(Part) (备注:“Part”是个关键词)关于继承与聚合对象之间存在两种关系,分别是:1 继承:通过继承,你可以聚集很多通用的属性或方法与一个对象上以适应不同的要求。2 聚合:是指一个对象包含另一个对象的能力。下面的视图中,Application对象聚合了documents数组。PartDocument对象是个特殊的对象,它是从Document对象继承

15、而来,专门为了零件存在的。2.基本特征的脚本语言基本特征用来显示或管理所有的CATIA文件。内容列表:2.1基本特征的脚本语言介绍。-文档与窗口-基础对象结构-程序与文档-创建和打开文档-关闭和保存文档-窗口-视图及视点-摄像机 2.2编程任务:修改一个现有文件的视点 2.1基本特征的脚本语言介绍。 文档与窗口 CATIA Application对象聚合了两个主要的数组对象:Documents、Windows.Documents数组对象,Documents聚合了任何的文档对象,然后通过*.加以标识。Document对象是抽象的对象,只有他的起始类才可以被创建,为PartDocument、Pro

16、ductDocument和DrawingDocument. Windows数组聚集了很多的Window,而Window本身聚集了一个包含了全部的视图类的视图数组,在Windows对象和Documents对象之间的二元连接的关系表示了,Documents类是Windows类的父类。 基本对象结构 这些对象都为CATIA的Product对象所共享,根对象为Application对象,他聚合或包含了Documents和Windows对象。 程序和文档 Application对象是所有的CATIA宏的根对象,这和CATIA设计的窗口是相对应的,在内进程的宏里,CATIA程序一般被命名为CATIA。Do

17、cuments数组提供了Add方法来添加一个新的文档及Open方法来打开一个现有的文档,一个文档可以是个PartDocument,ProductDocument 或 DrawingDocument.每个Document对象自己提供了函数来保存或另存自己。创建一个新文档Dim Doc as DocumentSet Doc = CATIA.Documents.Add(“Part”)-创建一个PartDocument,同理,替换“Part”为“Product”或“Drawing”,将创建一个ProductDocument和DrawingDocument.打开一个现有文档Dim Doc as Docu

18、mentSet Doc=CATIA.Documents.Open(“E:PartsDocumentToOpen.CATPart”)-无论是Open还是Add函数都把Document对象添加到Documents数组里。关闭和保存文档关闭文档:关闭一个活动的文档: CATIA.ActiveDocument.Close()关闭一个被命名为Doc变量的文档:Doc.Close()关闭一个被命名为Name的文档: CATIA.Documents.Item(“TheName”).Close()-Close函数将把Document对象从Documents数组中删除。保存文档:保存一个活动的文档:CATIA.

19、ActiveDocument.Save()保存一个被命名为Doc变量的文档:Doc.Save()保存一个被命名为Name的文档:CATIA.Documents.Item(“The Name”).Save()视图:窗口数组聚集了窗口对象且使窗口系统和如何使文档可以被可视化的模式来显示之间建立了可靠的连接,这种显示主要以2D或3D的方式来显示,或者表现在特征树上。视图数组使得窗口可以以一个适当的方式来现实程序数据。SpecsAndGeomWindow对象聚集了2D或3D视图和特征树的特征。视图与视点视图是用来显示文档的,前提是给出了视点是显示选项。依赖于文档的属性,接下来的视图都可以在一个窗口里找

20、到。 摄像机摄像机是视点的一种稳定的形式,你可以使用视图对象的NewCamera方法从当前视点来创建一个新的摄像机3.草绘脚本草图包含了在一个支撑平面的2D特征(点、线、圆等),草图被用来创建3D特征,如长方体、轴、表面等。草图对象也被Drawing的2D视图所使用。内容列表:-Bodies和HybridBodies数组-草图的两种不同的包含器-打开和关闭-创建和编辑几何体-创建约束的简易方法-录制一个创建草图的宏3.1草绘脚本介绍Bodies和HybridBodies数组在PartDocuments里有两个数组-Bodies数组:聚集了所有的实体特征。 -HybridBodies数组:聚集了

21、所有的面、线、3D点(交互的称为OpenBodies)草图的两种不同的包含器草图在Bodies数组里和HybridBodis数组里都可以创建,打开和关闭一个草图为了在一个草图里创建一个2D元素,我们必须要打开草图和使factory2d被使用set myFactory2D = mySketch.OpenEdition每一个草图对象都有自己的Factory2D用来在草图上创建所有可用的2D对象。当你结束了创建几何对象,必须关闭草图。mySketch.CloseEdition创建和修改几何对象通常来说,对于每个元素类型,我们只有一个简单的构造器与之对应。举例来说,如果我们想创建一个圆,我们应该使用函

22、数:CreateClosedCircle(iCenterX As Double, iCenterY As Double, iRadius AsDouble) As Circle2D如果你想把圆心固定在一个现有的点上,你使用”CenterPoint”的属性可以修改它。创建约束的简易方法在草图类里有一个名叫Constraints的数组,通过这个数组,我们可以在2D元素之间添加约束。录制一个创建草图的宏4. 零件特征设计脚本语言 零件特征重组了所有的实体特征。内容列表:-取得或创建一个零件文件。-取得或创建一个零件体-ShapeFactory(外形)-布尔运算-引用4. 1零件特征设计脚本语言介绍零

23、件特征设计脚本就是说在一个零件文档上创建一个图形。取得或创建一个零件文件使用ActiveDocument或Documents.Item(“ Part1.CATPart”) 或Documents.Add(“Part”) 取得或创建一个零件体当我们创建一个零件文件时,系统会自动创建一个默认的零件体。我们可以获得并使用它:Set MyBody = MyDocument.Part.Bodies.Item(PartBody)或者我们也可以创建一个新的零件体并使用:Set MyNewBody = MyDocument.Part.Bodies.Add()-ShapeFactoryShapeFactory对象

24、位于Part对象里,通过使用它可以在一个“活动”的零件里创建长方体、凹槽、轴、孔等,你也可以使用InWorkObject对象的属性来重新定义“活动”的零件。布尔运算如果你需要和另个零件体进行布尔运算的话,可以先使用下面的函数来添加一个新的零件体MyDocument.Part.Bodies.Add(),然后再使用AddNewAdd, AddNewIntersect, AddNewTrim 或AddNewRemove方法来进行运算。引用有些函数要使用对象的引用来代替它们本身,引用被用来把一个对象绑定到另一个对象上。例如,你可以:Dim myRef as ReferenceSet myRef = P

25、art.CreateReferenceFromGeometry(myGeometry) 这样就在MyGeometry对象上创建了一个引用转载VB6.0环境下的CATIA二次开发简介(2010-07-02 21:30:29) 转载原文标签: 转载学习了,期待更多一些关于CATIA二次开发的文章,呵呵。 原文地址:VB6.0环境下的CATIA二次开发简介作者:星星 CATIA作为CAD/CAE/CAM/PDM一体化的软件,广泛用于航空航天、汽车、船舶及电子工业,尤其在航空航天业,有八成以上厂商使用CATIA的市场11。然而由于使用习惯和使用的侧重点不用,功能再强大的软件也不可能同时满足各类用户的需

26、求,因此,对CATIA进行二次开发已经受到国内外许多科研院所及高校的重视12。CATIA二次开发的过程和意义可用图3-1来表示。通过第三方开发工具对CATIA进行二次开发,可以开发出针对某一行业,甚至针对某一用户的特定模块,以方便该行业用户使用,是对CATIA功能的深入挖掘和拓展。 第三方开发工具VB、VC+.通用CATIA软件新的功能模块CATIA二次开发主要有两种方法,一种是采用CAA C+技术,另一种是采用Automation技术。CAA(Component Application Architecture)是CATIA的一套C+函数库,该函数库在CATIA运行时加载,用户可通过RADE

27、模块在VC+编程环境下编写程序,与CATIA进行通信。这种方法可进行最有效率的程序开发,但入门困难,在国内这方面的技术资料比较少见。Automation技术是建立在COM基础之上,其核心技术是允许一个应用程序操作另一个应用程序。Automation技术并不是直接获取及处理数据,而是间接的通过暴露的对象和属性,利用对象的方法和属性来获取、设置及处理数据。这种方法功能限制比较大,但入门比较容易。基于上述两种开发方法的特点和本次毕业设计任务难度,本文选择使用Automation方法对CATIA进行二次开发。由于CATIA宏录制生成的VBScript代码稍做修改就能在VB环境下运行,为编程提供了很大的

28、方便,所以本文选用的开发环境是Visual Basic 6.0。VB 6.0环境下的CATIA二次开发在CATIA Automation中所有数据都被封装成对象的形式,并形成树形结构,如图3-2,这样就可以通过根对象对所有的其他对象进行访问。图3-2中,Application对象是根对象,通过这个对象的Documents,Windows和SystemService等属性就可以访问CATIA所有的对象。本文研究中进行的CATIA二次开发主要涉及到CATIA的基本操作和零件对象下的各种属性、方法的操纵。CATIA的基本操作主要是通过几个API(Application Programming Int

29、erface)对CATIA进行文件操作,视图操作等。零件操作主要是进行CATIA实体建模,如草绘、约束、实体等操作。要对CATIA进行操纵,首先是要连接到他的COM接口,主要有GetObject和CreateObject两种方法,即:Dim CATIA As ObjectOn Error Resume Next如果CATIA启动,用GetObject连接到CATIASet CATIA = GetObject(, CATIA.Application)如果CATIA没有运行,则先用Create Object启动CATIAIf Err.Number 0 Then Set CATIA = Create

30、Object(CATIA.Application) CATIA.Visible = TrueEnd IfOn Error GoTo 0通过这段代码,程序即可访问到CATIA,如果CATIA没有启动,则程序先启动CATIA,再对CATIA进行访问。操纵零件文档的一般步骤如图3-3所示。Document对象 Add()方法获取Application对象获取Documents对象获取Part对象获取构造类ShapFactory建模获取OriginElements对象获取实体集合Bodies添加Body对象Part是零件文档最上层的对象,如图3-4所以,通过它可以操纵零件文档,可以对参考系、草绘、实体特征等属性进行操作,编程实现CATIA的实体建模。PartBodiesShapeFactoryOriginElementsBodySketches

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1