|
<P>摘 要:SolidEdge提供了多种二次开发的途径,可以方便地开发出自己的应用程序来扩展SolidEdge的功能。两种最常用的途径是:采用SolidEdge数据在SolidEdge环境中进行开发,或者利用ActiveXAutomation技术扩展SolidEdge的功能。本文主要介绍采用VisualBasic开发SolidEdge的基本原理和方法,以及自定义事件驱动的Solid-Edge命令的过程。</P>
<P>关键词:SolidEdge;VB;二次开发</P>
<P>中图分类号:TP391 文献标识码:A</P>
<P>SolidEdge是由美国UGS公司开发的基于Windows环境的中端CAD软件包,它具有强大的二维和三维绘图功能,界面友好,广泛应用于机械设计行业。</P>
<P>1 SolidEdge的基本特性<BR>SolidEdge具有以下主要特性:<BR>1) 具有强大的实体建模功能和直观的Windows用户界面;<BR>2) 全面应用STREAM技术,通过改善用户交互速度和效率,从而全面优化工作效率;<BR>3) 具有强大的特征管理器,提供的特征设计树同具体的实体建模是实时的动态联接;<BR>4) 支持Internet技术,实现数据共享;<BR>5) 双向并联的尺寸驱动机制;<BR>6) 采用标准的WindowsOLE自动化和组件对象模型(COM)技术,SolidEdge提供的应用程序接口(API)可使用户和软件开发者能够以VB,VC++或其他标准程序语言对SolidEdge进行二次开发。<BR>2 ActiveXAutomation技术与SolidEdge的对象层次结构<BR>2.1 ActiveXAutomation技术<BR>ActiveXAutomation是Microsoft公司提出的基于COM的技术标准,以前又被称为OLE技术,其宗旨是在Windows系统的统一管理下,协调不同的应用程序,使这些应用程序之间相互沟通、相互控制。每个应用程序可以决定自己的哪些信息可以暴露出来,这些暴露出来的信息可以被其他程序操纵。<BR>ActiveXAutomation技术通过在两个程序间安排对话,达到一个程序控制另一个程序的目的;但这种对话不是双向的,对话双方也不是平等的。客户程序(client)是开始要求对话的应用程序,服务程序(server)是响应client的应用程序。ActiveXAutomation的代码在客户程序上运行,而这些代码所控制的动作由服务程序执行。<BR>用VB开发SolidEdge时,可将SolidEdge理解为一个服务程序,而二次开发出来的程序为客户程序。用户只要在客户程序上进行操作,客户程序就会驱动SolidEdge完成相关的工作,用户无需全面掌握SolidEdge。</P>
<P>2.2 SolidEdge的对象层次结构<BR>对象之间一般通过被称为对象模型或者对象层次结构的形式互相联系。只有很好地理解各种构成自动操作界面的层次结构,才能顺利地进行SolidEdge的二次开发工作。SolidEdge的对象层次结构可以描述为自上而下的树结构,其根节点对象通常是一个应用。SolidEdge拥有4种工作环境:零件(Part)、钣金(SheetMetal)、装配(Assembly)和工程图(Draft),其中,零件和钣金共用一个对象层次结构,而装配和工程图分别拥有各自独立的层次结构。<BR>3 用VB创建SolidEdge命令<BR>3.1 引用SolidEdge类型库<BR>首先必须在VB的环境中引用SolidEdge有关类型库,才能通过ActiveXAutomation访问SolidEdge提供的主要对象。引用类型库的方法:在VB的集成环境中,在“工程”菜单中选择“引用”命令,弹出如图1所示的对话框,将所需要用的库选中即可。</P> |
|