catia利用宏批量改名的方法_CATIA宏/VBA/二次开发——3 几何特征的批量创建与重命名...

而拿上面的实例来说,我们大胆猜测,中间某一段代码可能是这样:

For i = 1 to 6

创建圆(圆心=几何图形集中第i个点,半径=r)

Next

从0到1:

通过研究已经录过的代码,或者看Automation手册

我们可以通过下面的代码从CATIA(Application)开始,一级一级获取到需要的对象:

‘获取CATIA当前打开的文档

Dim Doc

Set Doc=CATIA.ActiveDocument

‘获取该文档的Part对象

Dim Prt

Set Prt=Doc.Part

‘获取该Part对象的所有几何图形集的集合

Dim GeomSets

Set GeomSets=Prt.HybridBodies

‘获取几何图形集集合中名为“Geometrical Set.1”的那个图形集

Dim GeomSet

Set GeomSet=GeomSets.Item(“Geometrical Set.1”)

‘此处也可写通过序号获取,写作GeomSets.Item(1),即获取第1个几何图形集

‘获取该图形集下所有特征/几何图形的集合

Dim HShapes

Set HShapes=GeomSet.HybridShapes

事实上,如果你思路明确逻辑清晰,上面的代码可以简写为一行:

Set HShapes=CATIA.ActiveDocument.Part.HybridBodies.Item(1).HybridShapes

完成了上面的工作,接下来我们就要看看如何用代码创建球面了。如果你懒得查下面的API,

我们也可以用录制的方法得到代码

Set hybridShapeSphere1 = hybridShapeFactory1.AddNewSphere(reference1, Nothing, 20.000000, -45.000000, 45.000000, 0.000000, 180.000000)

hybridShapeSphere1.Limitation = 1

对照上面的图,我们可以看出来AddNewSphere方法里的各参数,大概能和创建球面对话框里的命令对应的差不多。但最后的四个经纬角度我们无需太在意,因为随后的Limitation熟悉设置为1表示其为闭合的球面,相当于选了下图的选项。

最后需要注意的一点是,使用HybridShapeFactory创建出来的元素,我们需要用HybridBody的AppendHybridShape方法,将其在几何图形集中生成为一个特征。

hybridBody1.AppendHybridShape hybridShapeSphere1

完整代码:

到此,我们将上面所提及的点整理到一起,便可写出如下的完整代码(一共不到50行,还有一半是注释,精简一下会更少):

由于无法发动图,这里仅能放一张程序运行之后的结果截图。如你想看实际的运行效果,请自行想象,或亲自动手编写这段代码后运行一下吧!

什么?你到现在还在纠结为什么通篇都没提到标题里的“重命名”?如果你已经掌握了遍历的思路,重命名只不过是更改每个变体的.Name属性,和我们这个创建球的例子比,已经不值一提啦!

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页