catia利用宏批量改名的方法_CATIA批量改名功能大揭秘

原标题:CATIA批量改名功能大揭秘

CATIA Product中批量改名,或者批量重命名这种操作,想必是很多使用CATIA的攻城狮们的需求。

而这种操作,如果仅仅通过CATIA软件自带的功能,恐怕很难完成。

所以,我们不能满足于做一只攻城狮,我们要变身!

攻城狮进化——程序猿!

关于批量重命名这方面的二次开发工具,小编也发过一二,但与大家见面的都是最后的成品,并不能看见其内部工作的原理。所有今天,小编就来个大揭秘,看看如何用程序员的思想解决批量改名的问题。

程序的运行,无非就是顺序,分支判断和循环。而对于这种重复性的工作,想必各位看官最先想到的,就是循环。但是,当我们真正面对一个Product的时候,你会发现,循环这条路是行不通的。因为,Product的数量和装配级别,都不是一个定数。

这个时候,我们要引入一个概念,叫做递归,简单来说就是程序调用自身的过程。

如果还想不明白,诸位可以回忆一下你们昨晚看的那些小姐姐的直播:当她们***此处省略若干字***,然后中场休息时,在自己的桌面上显示直播画面时,会不会出现这样的情况:

直播画面里显示着另一个直播画面,画面的画面里还有一个画面,画面的画面的画面里还有一个画面(貌似是个凑字数的好方法)……一个无限循环到细思极恐的画面

回到我们的重命名问题。通过查阅Automation,获取Product及其下一级装配部件,然后对它做一些不可描述之事,这些对我们来说不难实现,比如:

Dim P

set P=CATIA.ActiveDocument.Product

Dim Pc

For Each Pc in P.Products

Pc.OOXX……

此处省略若干字

Pc.ZZZ

Next

而对我们来说,批量改名的关键,在于通过递归的思想,实现对当前打开总成RootProduct的每个子装配节点都访问到:

不知各位看官有没有注意到,上面“重命名”三个字为什么用黄色区分呢?

因为“重命名”,在这里充当的是一个子功能的角色。换句话说,它不仅可以是重命名,也可以是改名,可以是添加后缀,可以是添加/读取自定义属性,还可以是把读取的属性保存到Excel中……诶,等等,这不就是传说中的BOM导出吗!

因此,我们可以毫不客气地说:只要实现了遍历,那么这些装配节点对象将任我们摆布!

按照惯例,接下来,该放出一个包含源代码脚本的百度网盘下载链接了吧!但是小编转念一想:这次的内容有点超纲,因为它是小编录制的《从工程狮到程序猿》课程中的内容。如果把源代码都放出来了,那花钱购买课程的小伙伴心里得多不平衡!

所以,如果各位看官感兴趣,可以点击文章底部的“阅读原文”,查看视频课程中第七、八两章的详细内容哦!

文章的最后,小编还是要恬不知耻地插入一波广告,不想看的小伙伴可以散啦!我们下期再见!

CATIA常用的草图/实体/曲面模块,以及二次开发的视频教程

请登录www.chuanke.com

搜索关键词“CATIA”

排在前面的那些都是!

记得认准“小狼CATIA教室”哦~

以往发过的一些视频教程的整理:

责任编辑:

你可能感兴趣的:(catia利用宏批量改名的方法)