轴系相关问题
1.遍历几何图形集下的轴系
近期遇到的问题:遍历轴系的时候发现,AxisSystem属性的轴系只有放在轴系集合下,才能被找到,放在几何图形集或其他位置均不能被找到。本来想遍历几何图形集下的轴系元素,但是发现没有对应的属性,只能查找 几何图形集、几何元素、草图等元素,无法直接遍历轴系。
解决办法:(加入选择集,在选择集中筛选轴系类型)
HybridBody axisHB = activePart.HybridBodies.GetItem("定位轴系") as HybridBody;
Selection oSel = activeEditor.sel;
oSel.Clear();
oSel.Add(axisHB);//将要遍历的几何图形集加入选择集
oSel.Search("CATPrtSearch.AxisSystem,sel");
//按轴系类型筛选,注意sel的位置必须写sel才是默认的按当前选择筛选,如果写all或其他,则默认筛选全部轴系
运行结果如下:
2.解决轴系生成位置的问题
“在轴系节点下”,该选项在VBA里无法设置,解决办法如下:
//利用复制粘贴,间接控制轴系生成位置
Selection oSel = activeEditor.Selection;
oSel.Clear();
oSel.Add(capAxis);
oSel.Cut();
oSel.Clear();
oSel.Add(targetHB);
oSel.Paste();