大家好,有位老铁问了下面这个问题,在进行catia大型装配体设计的时候,有些装配体bom非常庞大,结构树中包含了成千上百的零部件下位,无法在结构树中快速锁定某一个零件位置,另外又希望实现如下图所示的一个功能“快速滚动到结构树的顶端或者底部”。可想而知,对于大型结构树,中键滚轮要面临极大压力!
于是乎,便有了下面这个想法,通过CATIA二次开发做一个简易的小插件实现上述功能,原理很简单,我们通过代码获取第一层子部件中的第一个和最后一个零部件,通过catia的startcommand方法对其进行Center graph(如果是中文环境应该是“将图居中”)操作即可,如下分别是装配体结构树置顶和置底部的代码。
我们可以将这两个功能的代码分别放到两个模块module1,module2中,然后分别为他们设定对应的快捷键,比如ALT+1,ALT+2。这样的话,我们再使用catia软件操作装配体设计的时候就可以很方便的实现结构树置顶或者置底的功能了。
以下代码的库文件,请回复[置顶]获取。
Sub CATMain() Set op = CATIA.ActiveDocument.Product.Products.Item(1) Set osel = CATIA.ActiveDocument.Selection osel.Clear osel.Add op CATIA.StartCommand ("Center graph") End Sub |
Sub CATMain() N = CATIA.ActiveDocument.Product.Products.Count Set osel = CATIA.ActiveDocument.Selection Set oproduct = CATIA.ActiveDocument.Product.Products.Item(N) osel.Clear osel.Add oproduct CATIA.StartCommand ("Center graph") End Sub |
另外图片中这位小伙伴的主要意思应该是想要快速定位到结构树中的某一个零件,这种情况就不单单是快速滚动到底部或者顶端的需求了,那么这个时候建议通过查找(search)对应的零件号来实现。注意将工作台设置成装配设计模块,在Name中输入零件编号,点击查找即可。
其实,想要解决上面小伙伴的疑问(即怎样快速滚动结构树到最底部或者最顶端),还有另外的一种比较有效的方法,不需要二次开发,毕竟并不是所有的guy对二次开发都有研究,都感兴趣,这个时候我们可以通过软件自带的结构树快速预览功能,specification overview,点击视图-规格概述,即可打开如下窗口,我们可以直接灵活的拖动矩形框到合适的位置,此时装配体结构树跟随一起移动,所以亦可实现快速定位的功能,大家不妨尝试一下,另外这个功能还可以通过shift+F2快捷键实现,还是比较方便的!