Danke für die Antwort, aber das ist es nicht.
Liegt wahrscheinlich an meinem Unverständnis für die Übergabe von Variablen. Wenn ich alles am Stück schreibe funktioniert es. Habe hier mal das Beispiel nochmal komplett. Allerdings mit der Auswahl der gesuchten Intersects als Function. Sobald ich aber die Funktion wieder verlasse ist die Sel ja wieder leer. Wie übergebe ich meine Selektion also ans Sub Main? Das gleiche Vorgehen ist ja dann bei der Übergabe an "Koordianten vom Hilfspunkt bestimmen".
Sub CATMain()
Version = "1.0"
Makroname = "Finden von Extrempunkten und Hinzufügen zu Spline"
On Error Resume Next
Set Messung = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench")
Set MessungKP = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench")
Set part1 = CATIA.ActiveDocument.Part
'----Überprüfung ob Dokument geöffnet ist
If CATIA.Documents.Count = 0 Then
MsgBox ("Kein Dokument geöffnet!")
Exit Sub
End If
Call Auswahl
'----Auswahl der Intersects einer Ebene
For variable = 204 To 206
Set inspeicher = sel.Item(variable)
'----Bestimmung der Ebene
If (inspeicher.Value.Parent.Parent.name = "Output_1") Then
'----Koordianten vom Hilfspunkt bestimmen
Dim aktP As HybridShapeIntersection
Set aktP = inspeicher.Reference
Dim ocoor As Object
Set ocoor = Messung.GetMeasurable(aktP)
Dim Coordinates(2)
ocoor.GetPoint Coordinates
MsgBox ("X=" & Coordinates(0) & " Y=" & Coordinates(1) & " Z=" & Coordinates(2))
End If
Next
End Sub
Function Auswahl()
CATIA.HSOSynchronized = False
Dim sel As Selection
Set sel = CATIA.ActiveDocument.Selection
sel.Clear
sel.Search ".Intersect.name=Intersect_*;Alle"
CATIA.HSOSynchronized = True
End Function
------------------
Hihihi, lol, hihihi
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP