您的位置:网站首页 > Solidworks

SolidWorks接口开发技术的实现

时间:2010-06-02 08:00:00 来源:
副标题#e#

    SolidWorks是基于Windows平台的优秀三维机械设计软件,其参数化和特征造型技术,为设计人员提供了良好的设计环境。SolidWorks尽管功能非常强大,但要使其在我国企业中非常有效地发挥作用,就必须对其进行本体化和专业的二次开发工作。SolidWorks通过对象链接嵌入技术(OLE)为用户提供了强大的二次开发接口,凡支持OLE编程的开发工具,如VisualC++、VisualBasic、Delphi等均可用于SolidWorks的二次开发,创建出用户定值的、专用的SolidWorks功能模块。
   
    1 系统的关键技术
   
    1.1 SolidWorks的软件接口开发

   
    SolidWorks通过COM技术为用户提供了强大的二次开发接口,以Vc++为例来说明。
   
    (1)SolidWorksAPIObjects COM技术是由Microsoft提出的组件标准,不仅定义了组件程序之间进行交互的标准,而且也提供了组件程序运行所需的环境。OLE(对象链接嵌入)技术是COM的一个应用。利用OLE技术,用户可以通过使用来自两个或多个Windows应用程序的资源来解决复杂的应用课题。OLE提供了方便的技术,用来将文档和来自不同程序的各种类型的数据结合起来。SolidWorks支持COM技术标准,同时也支持OLE标准,并且已完全实现了OLE自动化。
   
    (2)SolidWorksAPI对象简介 SolidWorksAPI接口采用面向对象的方法,所有的函数都是有关对象的方法或属性。SolidWorks主要的API对象(如图。所示)涵盖了全部的SolidWorks数据模型。通过对这些对象属性的设置和方法的调用,就可以在用户自己开发的DLL中实现与SolidWorks相同的功能。
   
    (3)APICOM对象及属性的使用 COM对象与C++程序语言对象一样具有封装性和可重用性。COM对象的封装性表现在客户不能直接访问COM对象的属性,只能通过COM对象提供的方法来访问;COM对象的可重用性表现在COM对象的包容和聚合,一个对象可以完全使用另一个对象的所有功能,例如Drawing Doc对象派生于Model Doc对象,因此Drawing Doc对象可以通过接口指针使用Model Doc对象里的所有方法与属性。
 

   
    1.2 API接口查询技术

   
    SolidWorks作为基于Windows的原创软件,为方便用户开发的程序与SolidWorks通信,提供了采用COM技术开发应用程序的方法。用户开发的代码可以作为独立的EXE文件或DLL文件存在,它们就是COM模块。采用COM技术在SolidWorks平台上作二次开发时,通过直接访问SolidWorks底层对象可以方便地扩充SolidWorks的功能。采用COM技术开发SolidWorks时,COM调用的每个API函数都将有一个HRESULT类型的接口指针,可以按照你的意图使用该指针,但在使用完后必须释放指针。