天天看點

CATIA二次開發——周遊幾何圖形集下的軸系及控制軸系生成位置

軸系相關問題

    • 1.周遊幾何圖形集下的軸系
    • 2.解決軸系生成位置的問題

1.周遊幾何圖形集下的軸系

近期遇到的問題:周遊軸系的時候發現,AxisSystem屬性的軸系隻有放在軸系集合下,才能被找到,放在幾何圖形集或其他位置均不能被找到。本來想周遊幾何圖形集下的軸系元素,但是發現沒有對應的屬性,隻能查找 幾何圖形集、幾何元素、草圖等元素,無法直接周遊軸系。

CATIA二次開發——周遊幾何圖形集下的軸系及控制軸系生成位置

解決辦法:(加入選擇集,在選擇集中篩選軸系類型)

HybridBody axisHB = activePart.HybridBodies.GetItem("定位軸系") as HybridBody;
Selection oSel = activeEditor.sel;
oSel.Clear();
oSel.Add(axisHB);//将要周遊的幾何圖形集加入選擇集
oSel.Search("CATPrtSearch.AxisSystem,sel");
//按軸系類型篩選,注意sel的位置必須寫sel才是預設的按目前選擇篩選,如果寫all或其他,則預設篩選全部軸系

           

運作結果如下:

CATIA二次開發——周遊幾何圖形集下的軸系及控制軸系生成位置

2.解決軸系生成位置的問題

CATIA二次開發——周遊幾何圖形集下的軸系及控制軸系生成位置

“在軸系節點下”,該選項在VBA裡無法設定,解決辦法如下:

//利用複制粘貼,間接控制軸系生成位置
Selection oSel = activeEditor.Selection;
oSel.Clear();
oSel.Add(capAxis);
oSel.Cut();
oSel.Clear();
oSel.Add(targetHB);
oSel.Paste();
           
CATIA二次開發——周遊幾何圖形集下的軸系及控制軸系生成位置