Hallo Thomas,
irgendwie habe ich Deinen Beitrag immer überlesen.
Hier die Lösung:
Der Zugriff auf Unterelelemente von Achsensystemen ist nur über BReps möglich (wie prosper schon schrieb).
'Achsenobjekt setzen:
Dim oPart As Part
Set oPart = CATIA.ActiveDocument.Part
Dim oSel As Selection
Set oSel = CATIA.ActiveDocument.Selection
Dim aSelElement(0)
aSelElement(0)="AxisSystem"
oSel.SelectElement2 aSelElement, "Achsensystem auswählen", False
Dim oAxisSystem As AxisSytem
Set oAxisSystem = oSel.Item(1).Value
Dim sAxisName As String
sAxisName = oAxisSystem.Name
'Jetzt die Referenzen
'Ursprung:
Set reference1 = oPart.CreateReferenceFromBRepName("FVertex Vertex Neighbours Face Brp " & sAxisName & ";2);None );Cf9 ));Face Brp " & sAxisName & ";3);None );Cf9 ));Face Brp " & sAxisName & ";1);None );Cf9 )));Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'Achsen:
'x:
Set reference1 = oPart.CreateReferenceFromBRepName("REdge Edge Face Brp " & sAxisName & ";1);None );Cf9 ));Face Brp " & sAxisName & ";3);None );Cf9 ));None Limits1 );Limits2 ));Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'y:
Set reference2 =oPart.CreateReferenceFromBRepName("REdge Edge Face Brp " & sAxisName & ";2);None );Cf9 ));Face Brp " & sAxisName & ";1);None );Cf9 ));None Limits1 );Limits2 ));Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'z:
Set reference3 = oPart.CreateReferenceFromBRepName("REdge Edge Face Brp " & sAxisName & ";3);None );Cf9 ));Face Brp " & sAxisName & ";2);None );Cf9 ));None Limits1 );Limits2 ));Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'Ebenen:
'xy:
Set reference1 = oPart.CreateReferenceFromBRepName("RSur Face Brp " & sAxisName & ";1);None );Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'yz:
Set reference1 = oPart.CreateReferenceFromBRepName("RSur Face Brp " & sAxisName & ";2);None );Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
'xz:
Set reference1 = oPart.CreateReferenceFromBRepName("RSur Face Brp " & sAxisName & ";3);None );Cf9 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR14)", oAxisSystem)
Gruß
Steffen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP