SOLIDWORKS 的属性和方程式界面支持使用VB语言进行写简单二次开发的语句,利用这种特性可以实现一些简单的属性提取。我将在此介绍如何利用这个特性实现一个以名称+图号的方式命名的零件体,solidworks的自定义属性可自动识别分离名称与图号,并填写入自定义属性栏中,为后期工程图的属性链接提供便利。
我将以一个实例,介绍如何实现SOLIDWORKS简单的二次开发功能
如:---某.sldprt文件的命名为:XXX零件 ICT-001-001
要实现以下的效果:在Solidworks的自定义属性自动输入
- 零件名称:XXX零件
- 图号:ICT-001-001
具体操作步骤:
1、编辑solidworks的自定义属性,额外添加两个自定义属性,属性名称的命名可自行定义。
2、为额外添加的两个自定义属性分别填写两条VB代码
- A:填入分离图号的VB代码
- Part.Extension.CustomPropertyManager("").Set("零件名称",Rtrim(Left(Part.GetTitle,InStr(Part.GetTitle," "))))
- B:填入分离零件名称的VB代码
- Part.Extension.CustomPropertyManager("").Set("图号",Trim(Replace(Right(Part.GetTitle,Len(Part.GetTitle)-InStr(Part.GetTitle," ")),".SLDPRT"," ")))
特别注意点:
- 代码表达式中的【图号】和【零件名称】要和对应的属性名称一致
- 关注(Part.GetTitle," ")引号内容为【空格】
- 创建两个方程式
"运行VB1"="A"与"运行VB2"="B"
特别注意点:
- 等于符号和引号符号在英文输入法的状态输入
- 额外添加的两个自定义属性要和【数值/方程式】输入的一致
- 方程式中两个全局变量名可以是任意符合语法规范的字符,对应的属性名称要输入正确,估算值为0代表自定义属性中的语句没有错误
- 重建并保存文件,可发现自定义属性已经自动填入分离的图号和名称
特别注意点:
- 【图号】和【零件名称】中间以空格分割,不限空格个数(表达式分离文字时对空格做了删除)
- 如果想修改为其他字符分割可以在两个表达式中的(Part.GetTitle," "),双引号中的内容做替换
例如零件命名为:XXX零件-ICT-001-001
将(Part.GetTitle," ")改为(Part.GetTitle,"-")结果为:
此时会发现零件名称带有“-”可修改VB代码:
- Part.Extension.CustomPropertyManager("").Set("零件名称",Rtrim(Left(Part.GetTitle,InStr(Part.GetTitle,"-")-1)))
- Part.Extension.CustomPropertyManager("").Set("图号",Trim(Replace(Right(Part.GetTitle,Len(Part.GetTitle)-InStr(Part.GetTitle,"-")),".SLDPRT"," ")))
- 其他也能实现目的的VB代码参考:(此代码得隐藏文件扩展名,只允许一个空格作为名称和图号的分割)
- Part.Extension.CustomPropertyManager("").Set("图号",Left(Part.GetTitle,InStr(Part.GetTitle," ")))
- Part.Extension.CustomPropertyManager("").Set("名称",Right(Part.GetTitle,Len(Part.GetTitle)-InStr(Part.GetTitle," ")))
5、将此文件保存为零件体模板,以便快速使用
结语:
我们不使用插件,进行SOLIDWORKS软件功能的二次开发,以方程式的方式运行简单规则,就能实现自动分离输入文件名中的名称与图号,不用手动在属性栏中输入重复的名称与图号,此后制作工程图也将更便利。