|
SolidWorks API是SolidWorks的OLE应用程序开发接口,用户可以利用它并通过支持OLE编程的开发工具,如Visual Basici、VBA(Excel,Access)、C、VC、C++等对SolidWorks进行二次开发,建立适合用户需要的、专用的SolidWorks 功能模块。本文通过介绍“自定义属性”这个程序的开发和使用过程,来简单地说明一下SolidWorks API的应用,希望起到抛砖引玉的作用。
一、问题的提出大多数工程图纸的标题栏中应该包括一些基本的设计信息,如零件名称、零件代号、材料以及设计人员和设计日期等方面的信息,其中,零件的名称、代号、材料、数量、重量、一些重要的后处理要求等信息还应该出现在装配图的材料明细表(BOM)中。这些内容如果在工程图中一一进行编写和修改,其工作量是很大的,并且这种处理方法也不利于保证设计信息的一致性,对模型文件(零件或装配体文件)和图纸文件的管理来讲是脱节的。 SolidWorks是一个全相关的三维机械设计软件,模型文件中的设计数据,如尺寸、注释、文件属性等内容与工程图相关,因此,我们在处理上述工程图标题栏和材料明细表中的设计数据时,应该将这些内容保存在模型文件中,并且自动显示在工程图相应的位置上。当需要对工程图中的内容进行修改时,直接修改模型文件中的相应数据即可实现。这样的处理方法不仅保证了设计信息的一致性,而且可以大大提高设计效率。 根据这个设想,我们将这些设计信息进行了归纳,并将它们作为模型文件的自定义属性保存在模型文件指定配置的属性(在SolidWorks中,选择菜单“文件/属性”,单击“指定配置”标签,如图1所示)中,针对模型文件指定配置的这些属性可以自动带入到工程图的标题栏和材料明细表。
图1 指定模型当前配的属性 图1中自定义属性的含义和解释如下表:
采用这样的方法处理以后,需要在工程图格式文件的相应位置建立包含这些变量的注释文本即可。同时,对于材料明细表模板进行修改或建立新的明细表模板就可以在装配图中的材料明细表中显示所需要的设计信息(工程图格式文件的定义和材料明细表模板的定义,请参阅《SolidWorks2001中文版实用技术精粹》一书)。因此,无论何时需要修改设计信息,只需在SolidWorks中打开相应的模型文件,修改指定配置的属性就可以实现。 然而,即使采用的这样的处理方法,在修改文件当前配置的属性时仍然显得有些繁琐,能否为SolidWorks建立一个工作界面,可以更加方便地添加和修改这些信息就成了问题的关键。
二、自定义属性Cpbom为了更大程度地提高工作效率,我们利用VB6.0通过SolidWorks API建立了自定义属性设置程序——Cpbom,这个程序本程序通过一个对话界面直接对当前模型文件的当前配置添加或修改自定义属性,其基本功能如下:
图2 自定义属性界面 “自定义属性”程序就是通过SolidWorks API对当前模型文件中当前配置的自定义属性的名称和值进行“读”和“写”的操作,程序非常简单,这里介绍一下该程序中用到的一些SolidWorks API的对象和方法:
1.SldWorks对象:这是SolidWorks API的最高级别的对象。通过该对象可以控制SolidWorks软件的执行或退出,以及SolidWorks文件的建立、打开、关闭等操作。在VB中利用CreateObject方法来获得SldWorks对象,利用该对象的activedoc方法可以获得当前SolidWorks文件对象,文件对象为空时,表示SolidWorks没有打开任何文件。如:
2.获取当前文件信息自定义属性程序是对模型文件设置自定义属性,与工程图文件无关,因此需要利用GetType方法获得当前文件的类型,并利用Gettitle()方法和Getpathname()方法获得当前文件的名称和存盘路径。如:
3.获取文件配置名称SolidWorks API提供了按照配置名称访问自定义属性的方法——CustomInfo2(读取自定义属性的值)、deletecustominfo2(删除指定的自定义属性)、ADDcustominfo3(添加自定义属性的名称和参数值),这些方法都要求指定文件的配置名称。因此,为了对当前模型文件当前配置设定自定义属性,必须首先要获得当前配置的名称, 利用GetActiveConfiguration()方法可以获得当前模型文件配置的对象,并利用Name方法获得当前配置的名称,如:
4.按照配置访问自定义属性在本程序中,我们对于指定配置的属性设置按照如下的步骤: 1) 按照配置名称读取文件中的自定义属性值,并赋值于相应的文本框;
2) 判定当前文件和当前配置是否已经改变,如其中之一发生变化,则提示错误信息;
3) 根据配置名称删除指定的自定义属性;
4) 将相应文本框中的内容按照配置名称添加到模型文件自定义属性名称和参数值。
下面说明一下上述控制配置自定义属性的三种方法:
l CustomInfo2:获取或设置当前文档指定配置的自定义属性的值
value = ModelDoc.CustomInfo2 (configuration, fieldName)
其中: configuration为配置名称;
fieldName为自定义属性的名称;
l deletecustominfo2:删除当前文档指定配置的自定义属性的值
retval = ModelDoc.DeleteCustomInfo2( configuration, FieldName )
l ADDcustominfo3:向当前文档中指定的配置添加自定义属性以及值
retval = ModelDoc.AddCustomInfo3 ( configuration, FieldName, FieldType, FieldValue )
其中: FieldType为自定义属性的类型
FieldValue为自定义属性的值
下面这段代码是单击“确定”的子程序,为了简单起见,只给出了其中一个自定义属性的处理过程。
三、在SolidWorks界面中执行应用程序对于使用VB编译的EXE,DLL文件,目前SolidWorks还不能直接支持这些文件作为插件使用,如果要在SolidWorks 中直接调用通过VB编译的可执行程序,可以使用SolidWorks“宏”操作来进行。利用“宏”在SolidWorks界面中添加指定的应用程序后,就好像SolidWorks调用了自身的功能一样,利用类似的方法,可以在SolidWorks添加任何可执行的文件。下面利用“自定义属性”程序来说明一下步骤: 1.建立“宏”文件在SolidWorks中,我们利用录制并修改“宏”的方法来建立所需要的“宏”文件。 1) 选择菜单“工具/宏操作/录制”。
2) 停止录制,并保存宏文件。给定文件名称如:Cpbom.swp。
3) 选择菜单“工具/宏操作/编辑”,把Cpbom.swp “宏”文件录制的内容全部删除,并输入下面的内容,如图3所示:
4) 保存并退出宏编辑,返回到SolidWorks环境。
图3 编辑“宏”
2.指定“宏”操作在SolidWorks中可以指定宏命令的文件位置,并定制工具栏,将所执行的宏操作按钮添加到指定的位置上。 1) 选择菜单“工具/自定义/宏”,在“自定义”对话框中单击“宏”标签,如图4所示;
图4 自定义宏操作 2) 参考图4的内容添加宏,单击“应用”完成;
3) 在“自定义”对话框中单击“命令”标签,从“类别”列表框中选择“宏”,将所定义的宏(第1个)的图标按钮拖到相应的工具栏中,如图5所示;
4) 单击“确定”按钮,完成宏定义和工具栏定义。
图5 自定义工具栏 3.执行应用程序定义“宏”以后,单击相应的图标就可以在SolidWorks 中直接执行应用程序,如图6所示。 图6 在SolidWorks中执行应用程序 四、总结我们利用这个“自定义属性”程序,明显提高了工作效率。需要说明的是,SolidWorks API的对象和方法十分丰富,涵盖了所有SolidWorks数据模型,这里只介绍了其冰山之一角。另外,程序中提及的自定义属性与企业的要求有关,并根据自己的需要开发适合需要的自定义属性设置程序。 |

[摘要]针对级进模排样的特点以及人...

您知道全球最小的机器人到底有多小呢。这么小的机器人到底有什么样的法宝呢。中国台湾...

前言 线切割加工通过电极丝与导电工件之间放电腐蚀成型来完成工件加工,由于是非接触加...

--小巨人公司展示“中国第一座智能网络化机床制造工厂” 贺兰山下,黄河岸边,豪放的...

方亨志:迦南科技集团有限公司董事长、政协第八届永嘉县委员会委员、浙江省机械工业协...