Hallo Leute,
nachdem ich diese Foren seit 3 Wochen lieben lerne, komme ich jetzt zu dem Punkt selber eine 'klitzekleine' Frage zu stellen.
Mit CATIA arbeite ich schon über 4 Jahre lang, nun beschäftige ich mich seit 3 Wochen mit dem Thema Makro Programmierung. Und habe mich jetzt damit als Laie geoutet
Nun zu meinem Problem:
ich habe diverse Kurvenzüge, die alle rechteck-ähnliche Formen bilden, nur sind diese 'Rechtecke' nicht eben sonder sphärisch gekrümmt. Nicht jedes 'Rechteck' besteht aus 4 Kurven, sondern kann auch aus 1, 2 oder 3 Kurven bestehen. Das kriegt man ja mit einer kleinen Schleife hin. Allerdings muss ich PRO Rechteck alle Kurvenzüge auf eine sphärische Surface projizieren und diese Projektion dann mit 'extract' bearbeiten. Somit erreiche ich, egal wie viele Kurven ein Rechteck bilden, dass ich pro Seite einen extract bekomme; also wenn das 'Rechteck' aus einer Kurve besteht, projiziere ich diese und wende 'extract' 4 mal an. Besteht mein 'Rechteck' aus 3 Kurven à jeweil 2 Seiten muss ich jede Kurve 2 mal extracten.
So, ich hoffe das war einigermaßen verständlich.
Mein Problem liegt bei dem 'extract' Befehl, den ich auf die Projektion anwenden will. Um die jeweiligen Seiten/Wire aus den Projektionen zu lösen, brauche ich den CreateReferenceFromBRepName-Befehlt, da ich ja die verschiedenen Seiten/Wire der Projektion ansprechen muss. Diese werden ja aber nicht im Strukturbaum angezeigt, da eine Projektion einer Kurve eben nur eine Projektion ist und ich mit extract diese Kurve aufsplitten möchte.
Meine Struktur sieht so aus:
part1
geometrisches Set
> geometrisches Set 2
Kurve 1 'oHybridShape'
Kurve 2
Kurve 3
> geometrisches Set 3
Projektion 'hybridShapeProjekt1'
geometrisches Set4
> Fläche 'oFlaeche'
Wie gesagt: das was ich 'extracten' will ist die Seite/Wire einer Projektion 'HybridShapeProjektion1' einer Kurve 'oHybridShape' auf die Fläche 'oFlaeche'
Der betreffende Ausschnitt meines bisherigen Skripts sieht so aus:
Dim refToElement3 As Reference
MsgBox hybridShapeProject1(0).Name & " " & oHybridShape(0).Name & " " & oFlaeche.Name
Set refToElement3 = part1.CreateReferenceFromBRepName("WireREdge Wire Brp " & hybridShapeProject1(0).Name & ";(Brp " & oHybridShape(0).Name & ";1); Brp " & oFlaeche.Name & ";Brp GSMBiDim.1;1))));None Limits1 );Limits2 ));Cf11 ));WithPermanentBody;WithoutBuildError;WithSelectingFeatureSupport;MFBRepVersion_CXR15)", hybridShapeProject1(0))
Dim hybridShapeExtract1 As HybridShapeExtract
Set hybridShapeExtract1 = hybridShapeFactory1.AddNewExtract(refToElement3)
hybridShapeExtract1.PropagationType = 2
hybridShapeExtract1.ComplementaryExtract = False
hybridShapeExtract1.IsFederated = False
hybridBody3.AppendHybridShape hybridShapeExtract1
part1.InWorkObject = hybridShapeExtract1
part1.Update
Der Fehler taucht schon direkt nach der Nutzung von BRep auf, kann mir jemand sagen, wo mein Fehler liegt? Ich versuche von der Variable oHybridShape(0).Name die 1.Kante anzusprechen und diese zu 'extracten'.
Ich freue mich über Antworten und hoffe mein Problem genügend erläutert zu haben
LG!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP