| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Sketch der senkrecht auf Fläche steht (1076 mal gelesen)
|
Colli123 Mitglied Maschinenbau Student
Beiträge: 32 Registriert: 18.10.2014 Inventor 2013 Visual Studio 2010
|
erstellt am: 26. Nov. 2014 20:05 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen! Ich hab gerade folgende Kopfnuss: Ich hab auf einer Würfel-Oberfläche eine Linie. Entlang dieser Linie würde ich nun gerne einen Sweep ziehen. Ich hab ein Bild angehängt wie der Sweep aussehen soll. Für den Sweep brauch ich ein Profil, wie der Sweep aussehen soll. Für das Sweep-Profil würde ich gerne am Anfang der Linie einen Halbkreis(=Kreis der zur Hälfte im Würfel liegt) zeichnen. Diese Kreisfläche soll senkrecht auf der Würfel-Oberfläche stehen. Der Sweep soll damit ein Halbrohr auf der Würfel-Oberfläche werden, bzw ein Voll-Rohr das zur Hälfte im Würfel liegt. Wie bekomme ich nun eine senkrechte SketchFläche die am Anfang der Linie liegt? Die Methode AddWithOrientation von Sketches sieht brauchbar aus, allerdings hab ich noch keinen Weg gefunden sie für diese Problem zu nutzen. Ich freue mich über jede Idee Schöne Grüße Colli [Diese Nachricht wurde von Colli123 am 26. Nov. 2014 editiert.]
[Diese Nachricht wurde von Colli123 am 26. Nov. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 26. Nov. 2014 20:42 <-- editieren / zitieren --> Unities abgeben: Nur für Colli123
Hallo Es gibt keine Sketchfläche. Die AddWithOrientation Methode hilft dir nicht weiter, da dir die Basisfläche zum Erstellen der Skizze fehlt. Aber du kannst eine Arbeitsfläche erstellen, auf diese Fläche deine Skizze legen und den Endpunkt der Pfadskizzenlinie in deine neue Skizze projizieren. Versuch mal die Arbeitsfläche mit der WorkPlanes.AddByNormalToCurve Methode zu erstellen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Colli123 Mitglied Maschinenbau Student
Beiträge: 32 Registriert: 18.10.2014 Inventor 2013 Visual Studio 2010
|
erstellt am: 26. Nov. 2014 20:52 <-- editieren / zitieren --> Unities abgeben:
|
Colli123 Mitglied Maschinenbau Student
Beiträge: 32 Registriert: 18.10.2014 Inventor 2013 Visual Studio 2010
|
erstellt am: 29. Nov. 2014 13:43 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich wollte grad mal die AddByNormalToCurve Methode ausprobieren, allerdings schaffe ich es nicht auf die Linie die im Sketch angelegt wurde zuzugreifen. Probiert habe ich es mit:
Code: Dim oLine As SketchLine = oLastSketch.SketchLines Dim oStartpunkt As Point = oLine.StartSketchPoint
Allerdings gibt es eine Fehler wenn ich probiere oLastSketch in eine Linie zumwandeln. Anscheinend enthält oLastSketch nicht nur die gezeichnete Linie sondern auch den Umrisse von der Fläche die man als Sketch Grundlage ausgewählt hat. Hier im Foto blau markiert: Sketch5 = oLastSketch, dazu die Linie blau und der Flächenumriss als Sketchgrundlage auch blau. Wie komme ich nun an die Linie aus oLastSktech heran, um dann mit StartSktechPoint den Startpunkt der Linie zu kriegen? Schöne Grüße Colli [Diese Nachricht wurde von Colli123 am 29. Nov. 2014 editiert.] [Diese Nachricht wurde von Colli123 am 29. Nov. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 29. Nov. 2014 16:38 <-- editieren / zitieren --> Unities abgeben: Nur für Colli123
Hallo Code: Dim oLine As SketchLine = oLastSketch.SketchLines
kann nicht funktionieren, da oLine als einzelne SketchLine definiert ist und oLastSketch.SketchLines eine Collection aller SketchLines deiner Skizze ist. Wenn du mal in den Anwendungsoptionen das automatische Projizieren der Flächenkontur ausschaltest und nur bei Bedarf die wirklich notwendigen Kanten in deine Skizze projizierst, fallen diese schonmal weg und du hast weniger Müll in deinen Modellen. Wenn du statt der ersten Linie auch den Endpunkt der letzten Linie akzeptierst und dann halt in die andere Richtung sweepst, könntest du es mit: Code: Dim oLine As SketchLine = oLastSketch.SketchLines.Item(oLastSketch.SketchLines.Count) Dim oStartpunkt As Point = oLine.EndSketchPoint
versuchen. Ansonsten müßtest du der Reihe nach jede SketchLine untersuchen, ob sie zu den projizierten gehört. Das müßte über das ReferencedEntity Property gehen. Die erste mit ReferencedEntity=Nothing sollte deine erste Skizzenlinie sein. Da Mittellinien und Konstruktionslinien nicht als Sweepingpfade akzeptiert werden, solltest du auch darauf prüfen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Colli123 Mitglied Maschinenbau Student
Beiträge: 32 Registriert: 18.10.2014 Inventor 2013 Visual Studio 2010
|
erstellt am: 29. Nov. 2014 18:21 <-- editieren / zitieren --> Unities abgeben:
Hallo, Danke für deine Antwort! Die Funktion SketchLines.Count hab ich vorhin auch in der API Hilfe entdeckt. Hab dann dass hier zusammengschraubt, wobei es hier auch mit Startpunkt funktioniert:
Code: 'Count = 6, bei zwei gezeichneten Geraden im sketch, sind die restlichen 4 die Umrisslinien der ausgewählten sketch-fläche Dim oAnzahl As Integer = oLastSketch.SketchLines.Count Dim oStartpunkt As WorkPoint = oCompDef.WorkPoints.AddByPoint(oLastSketch.SketchLines.Item(5).StartSketchPoint) Dim oWorkPlane As WorkPlane oWorkPlane = oCompDef.WorkPlanes.AddByNormalToCurve(oLastSketch.SketchLines.Item(5), oStartpunkt)
Grüße Colli
[Diese Nachricht wurde von Colli123 am 29. Nov. 2014 editiert.] [Diese Nachricht wurde von Colli123 am 29. Nov. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |