网站信息化建设,网站制作湖州,电商常用的erp系统有哪些,域名搜索引擎今天要讲的是关于在solidworks中如何自动创建虚拟零件的功能#xff0c;也就是solidworks中插入新零件这个功能。
实现这个功能需要使用的API如下所示#xff1a;
InsertNewVirtualPart#xff08;swFaceOrPlane1, out swcomp2#xff09;#xff1b;
其中这个方法中使…今天要讲的是关于在solidworks中如何自动创建虚拟零件的功能也就是solidworks中插入新零件这个功能。
实现这个功能需要使用的API如下所示
InsertNewVirtualPartswFaceOrPlane1, out swcomp2
其中这个方法中使用到了两个参数。
第一个参数为一个平面或是一个基准平面。
第二个参数为成功创建这个虚拟零件以后返回的Component2类型文件。
下面这个图片是官方给出的关于API的解释 下面展示一段使用这个方法的代码 Component2 swcomp2 null; int longstatus1 0; object swFaceOrPlane1 null; longstatus1 swAss.InsertNewVirtualPart(swFaceOrPlane1, out swcomp2);
当然一般的情况下这样使用是没有问题的只要设置了零件的模板。在使用这个方法的时候solidworks会自动寻找模板但是有的时候会有一些问题导致你在创建虚拟零件的时候返回的Component2类型文件为空。
下面介绍一下使用时候的注意事项
1、solidworks的一些配置会影响你在使用方法的方式如果你像我一样在使用上面方法的时候传入的第一个参数为空那么必须要做一些配置才能保证返回第二个参数不为空。具体设置为打开选项然后找到外部参考把允许创建模型外部参考勾选上。这样就没有问题了。操作如下图所示 2、如果你不想这样设置那么你在使用这个方法的时候就不能给第一个参数为空需要给一个平面或者基准平面。这样使用也没有问题。
下面要介绍的是如果你想自动把这个默认配置勾选上也是可以通过程序自动实现的。
如下面代码所示 public static void AutomaticSetting(ISldWorks swApp) { swApp.SetUserPreferenceToggle(((int)(swUserPreferenceToggle_e.swAllowCreationOfReferencesExternalToModel)), true); swApp.SetUserPreferenceToggle(((int)(swUserPreferenceToggle_e.swReferenceOnlyEnvelopeComponentType)), false); swApp.SetUserPreferenceToggle(((int)(swUserPreferenceToggle_e.swReferenceInContextOfTopLevelAssembly)), false); }
如上面所示代码可以实现自动默认配置solidworks。
当然这个位置还有一点需要说的当你在使用这两个方法的时候 swApp.SetUserPreferenceToggle(((int)(swUserPreferenceToggle_e.swReferenceOnlyEnvelopeComponentType)), false); swApp.SetUserPreferenceToggle(((int)(swUserPreferenceToggle_e.swReferenceInContextOfTopLevelAssembly)), false);
我给的参数是false当你给true的时候。就又是一个结果了这里我就不说区别了。
把这个验证留给评论区的大佬们吧。
本篇文章介绍到此结束我们下篇文章再见。