Hallo alle zusamen
Ich Arbeite Seit kurzem an eine Automatisierungsaufgabe mit NX7.5/Journal/VB.
Bis Jetzt Habe ich Ein Journal das mir per For-Schleife Drei Punkte erzeugt und Daraus Dreiecke Macht. Die sache ist, ich möchte bei Jedem Durchlauf Den Erzeugten Dreieck Extrudieren. Das Programm Extrudiert nur den Ersten Dreieck, und bei dem zweiten durchgang bekomme ich die Fehlermeldung "Selected objects will result in a self intersecting section".
ich habe die Vermutung bei der zeile
" section1.AddToSection(rules1, line1, nullNXObject, nullNXObject, helpPoint1, Section.Mode.Create, False)"
dass ab dem zweiten durchlauf der schleife, Werden die Neuen Linien(1,2,3) in Section1 hinzugefügt, und gleich mit den alten Linien vom vorherigen durchlauf mit Extrudiert.
Hat jemanden einen vorschlag wie ich es hinkrige bei jeden durchlauf nur die Aktuellen Linen zu extrudieren? Wäre für eure Hilfe sehr Dankbar
Ein Bild Gibt's dazu auch.
Hiermal Meine Schleife:
Dim i As Integer
For i = 1 To (NXInputBox.GetInputString("Anzahl Wiederholungen : ", "Anzahl", "3"))
'### verschiebung in X Richtung
WcsPt6(0) = Wcspt1(0) + (3 * (i - 1))
WcsPt6(1) = Wcspt1(1)
WcsPt6(2) = Wcspt1(2)
'### transformation in Absoluten koordinaten System Wcspt2 ->>>> Wcspt3
theUfSession.Csys.MapPoint(UFConstants.UF_CSYS_ROOT_WCS_COORDS, Wcspt6, UFConstants.UF_CSYS_ROOT_COORDS, WcsPt7)
Dim startPoint As Point3d = New Point3d(WcsPt7(0), WcsPt7(1), WcsPt7(2))
'### verschiebung in X Richtung
WcsPt2(0) = Wcspt1(0) + (3 * i)
WcsPt2(1) = Wcspt1(1)
WcsPt2(2) = Wcspt1(2)
'### transformation in Absoluten koordinaten System Wcspt2 ->>>> Wcspt3
theUfSession.Csys.MapPoint(UFConstants.UF_CSYS_ROOT_WCS_COORDS, Wcspt2, UFConstants.UF_CSYS_ROOT_COORDS, WcsPt3)
Dim endPoint1 As Point3d = New Point3d(WcsPt3(0), WcsPt3(1), WcsPt3(2))
'### verschiebung in X und Y Richtung
WcsPt4(0) = Wcspt1(0) + (3 * (i - 1))
WcsPt4(1) = Wcspt1(1) + 3
WcsPt4(2) = Wcspt1(2)
'### transformation in Absoluten koordinaten System Wcspt4 ->>>> Wcspt5
theUfSession.Csys.MapPoint(UFConstants.UF_CSYS_ROOT_WCS_COORDS, Wcspt4, UFConstants.UF_CSYS_ROOT_COORDS, WcsPt5)
Dim endPoint2 As Point3d = New Point3d(WcsPt5(0), WcsPt5(1), WcsPt5(2))
Line1 = WP.Curves.CreateLine(startPoint, endPoint1)
line2 = WP.Curves.CreateLine(startPoint, endPoint2)
line3 = WP.Curves.CreateLine(endPoint1, endPoint2)
curves1(0) = line1
curves1(1) = line2
curves1(2) = line3
Dim curveDumbRule1 As CurveDumbRule
curveDumbRule1 = WP.ScRuleFactory.CreateRuleCurveDumb(curves1)
Dim rules1(0) As SelectionIntentRule
rules1(0) = curveDumbRule1
Dim nullNXObject As NXObject = Nothing
'Section1 fügt jedesmal neue Linien hinzu
Dim helpPoint1 As Point3d = New Point3d(0, 0, 0)
section1.AddToSection(rules1, line1, nullNXObject, nullNXObject, helpPoint1, Section.Mode.Create, False)
Dim feature1 As Features.Feature
feature1 = extrudeBuilder1.CommitFeature()
Array.Clear(curves1, 0, 2)
curveDumbRule1.Dispose()
Next i
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP