CREO vbapi二次开发-实用小工具-批量关系操作
本文继续使用C#和VB做一个稍微实用的小工具,实现批量prt文件关系的导入和清空。小工具将Creo操作和界面分离,使用C#编写控制台程序,通过命令行参数进行文件导出操作。
本文继续使用C#和VB做一个稍微实用的小工具,实现批量prt文件关系的导入和清空。小工具将Creo操作和界面分离,使用C#编写控制台程序,通过命令行参数进行文件导出操作。
本文继续做一个稍微实用的小工具,实现批量将Creo零件的参数批量增加、删除和打勾操作。为证明之前说明可以使用其他语言也可以开发,本工具在excel下的vba环境进行开发。小工具主要实现以下功能:
本文做一个稍微实用的小工具,实现批量将Creo文件导出Dwg、Pdf、Step以及Iges等格式。Creo VBAPI实际是对Toolkit函数的COM封装,故虽然其名称为VB API,使用其他语言一样可以进行二次开发。为此,本文采用C#和VB进行开发。小工具将Creo操作和界面分离,使用C#编写控制台程序,通过命令行参数进行文件导出操作。VB编写界面,设定好工作参数后使用shell调用c#编写的控制台程序完成操作。用户也可以自己编程调用相关程序,将小工具集成在自己的系统里。
在设备端我们引用了digiusb向PC机传输数据,对应PC端使用libusb与设备进行通信。同时我们将读取到的数据上传至第三方平台,这样完成数据的远程监控和查看。为简单起见,本程序采用控制台的方式进行操作,程序界面如下图所示:
本节介绍VBAPI的导出功能。查看VB API帮助手册可知,文件的导出通过调用IpfcModel类的Export方法完成。Export方法有两个参数,第一个FileName为导出文件的文件名,注意要指定正确的后缀名。第二个参数ExportData为IpfcExportInstructions类型,表示以何种文件类型、何种方式导出。IpfcExportInstructions为所有导出选项的父类,针对不用的格式如Dwg、Pdf等均有不同的的子类继承于IpfcExportInstructions,这样Export方法调用针对不同文件格式对应的IpfcExportInstructions子类即可完成各种文件格式的导出。
本节介绍关系的添加、修改和删除操作。查看VB API帮助手册可知,对参数的操作主要是对Istringseq、Cstringseq、IpfcRelationOwner、IpfcModel四个类进行操作。其中,IpfcRelationOwner、IpfcModel与上一节参数操作介绍类似;Creo中的关系采用Istringseq进行描述,Istringseq为一个字符串序列,提供了诸如Append、Clear等各种方法。根据手册应该是直接可以调用Istringseq的方法修改关系,但是在实际操作过程中发现不可以。参考VB API的示例代码,发现VB API也提供了一个Cstringseq,和Istringseq有着同样的属性和方法,只要对其操作,再将其赋值给IpfcRelationOwner的Relations属性(Istringseq对象)即可。添加一行关系的函数调用流程如图3-4所示,根据代码也可以完成关系的修改、某一行的增删等操作,在此不再赘述。添加一行关系的函数调用流程如图3-4所示,示例代码如下:
本节介绍参数的添加、修改和删除操作。查看VB API帮助手册可知,对参数的操作主要是对IpfcParamValue、IpfcParameter、IpfcParameterOwner、IpfcModel四个类进行操作。其中,IpfcParamValue用于存储参数的值;IpfcParameter表示整个参数对象,包括参数的名称、类型等信息;IpfcParameterOwner表示参数的所有者;IpfcModel表示打开的模型,为IpfcParameterOwner的子类,可通过会话等方式获得,一般操作可以是获得IpfcModel对象再调用其父类IpfcParameterOwner的方法和属性进行参数的操作。
选择对象为二次开发中最常用的操作,我们做二次开发大部分是通过选择对象后再对选中的对象进行操作。选择对象有两种方式,一种通过编程的方式主动要求用户进行选择对象后再操作,另一种是读取Creo系统中已选取的对象。