[gelöst] alle punkte/elemente im sketcher gleichzeitig markieren/auswählen/fixieren ?
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
[gelöst] alle punkte/elemente im sketcher gleichzeitig markieren/auswählen/fixieren ?
gibt es eine möglichkeit (eventuell auch python-zeile) alle punkte (auch endpunkte von linien ,mittelpunkte usw)
am stück auszuwählen. ich möchte gerne bei "importierten" skizzen alle punkte am stück mit dem schloß fixieren.
lg thomas
edit
wenn alles übrige anwählbar ist, außer punkte, könnte ich mit fixieren auch klarkommen.
am stück auszuwählen. ich möchte gerne bei "importierten" skizzen alle punkte am stück mit dem schloß fixieren.
lg thomas
edit
wenn alles übrige anwählbar ist, außer punkte, könnte ich mit fixieren auch klarkommen.
Last edited by thomas-neemann on Sat Nov 28, 2020 6:01 pm, edited 3 times in total.
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
Das ist schwierig, weil die Lock-Funktion ein anderes Verhalten hat, wenn mehrere Punkte ausgewählt sind, als wenn man es auf jeden Punkt separat anwendet. Stichwort: absoluter vs. relativer Modus
Somit kann man das tatsächlich nur in Python machen. Dazu geht man in Python die enthaltenen Geometrien eines Sketches durch und muss dann wohl oder übel eine Fallunterscheidung machen. Zum Beispiel für einen Kreisbogen benötigt man sechs Constraints, für einen Vollkreis nur zwei, usw.
Allerdings muss man noch darauf achten, für welche Punkte Koinzidenzen gesetzt sind, da man für diese nur 1x die Lock-Constraints setzen kann.
Ein Lock-Constraint wird z.B. so gesetzt:
Die 0 bedeutet die ID der Geometrie, also die Position in sketch.Geometry. Die 2 bedeutet der Punkt innerhalb der Geometrie, der je nach Typ zwischen 1 und 3 liegt. Die letzten Werte sind die Koordinaten des Punktes.
Somit kann man das tatsächlich nur in Python machen. Dazu geht man in Python die enthaltenen Geometrien eines Sketches durch und muss dann wohl oder übel eine Fallunterscheidung machen. Zum Beispiel für einen Kreisbogen benötigt man sechs Constraints, für einen Vollkreis nur zwei, usw.
Allerdings muss man noch darauf achten, für welche Punkte Koinzidenzen gesetzt sind, da man für diese nur 1x die Lock-Constraints setzen kann.
Ein Lock-Constraint wird z.B. so gesetzt:
Code: Select all
sketch.addConstraint(Sketcher.Constraint('DistanceX',0,2,-52.164278))
sketch.addConstraint(Sketcher.Constraint('DistanceY',0,2,-26.692561))
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
1000 dank für die info, ich vermute es ist vergleichbar komplex, alles außer punkte auszuwählen um mit fixieren arbeiten zu können.
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
Wenn du eine (importierte) Skizze ohne irgendwelche Constraints hast, dann kann ich mir vorstellen alle Punkte mit Python zu fixieren. Würde das weiter helfen ?
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
ja, wenn man dann wieder einzelne punkte manuell für die weiterkonstruktion befreien kann wäre das wunderbar.
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
Im Anhang ein Script, dass glaube ich das macht, was du dir wünscht:
Workflow:
- Eine Skizze im Modellbaum anwählen, oder eine Skizze öffnen.
- Script starten.
Das Script macht folgendes:
- Alle Constraints werden gelöscht.
- Alle Punkte werden in x und y fixiert.
- Wenn zwei Punkte verschiedener Elemente zusammen fallen, werden diese mit Coincidence zusammen gefügt, und nur einmal fixiert.
- Kreise erhalten ein Durchmessermaß
Einschränkung:
- Funktioniert nur für Gerade, Kreisbogen und Kreis.
Bekannte Probleme:
- Manchmal bekommt die Skizze redundante Einschränkungen. Häkchen für automatisches Entfernen anwählen, und Skizze etwas bewegen.
Workflow:
- Eine Skizze im Modellbaum anwählen, oder eine Skizze öffnen.
- Script starten.
Das Script macht folgendes:
- Alle Constraints werden gelöscht.
- Alle Punkte werden in x und y fixiert.
- Wenn zwei Punkte verschiedener Elemente zusammen fallen, werden diese mit Coincidence zusammen gefügt, und nur einmal fixiert.
- Kreise erhalten ein Durchmessermaß
Einschränkung:
- Funktioniert nur für Gerade, Kreisbogen und Kreis.
Bekannte Probleme:
- Manchmal bekommt die Skizze redundante Einschränkungen. Häkchen für automatisches Entfernen anwählen, und Skizze etwas bewegen.
- Attachments
-
- FixAllPoints.FCMacro
- (2.06 KiB) Downloaded 120 times
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
1000 dank. werde es im aktuellen projekt sofort testen
lg thomas
funktioniert wunderbar
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
nach berarbeitung solch einer skizze, werden die änderungen bei mir beim beenden vom skizziermodus nicht übernommen. ist da noch ein zwischenschritt erforderlich?
lg thomas
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
Nein, es ist gibt keinen weiteren Zwischenschritt.
- Hast du die Skizze geöffnet oder nur im Modellbaum ausgewählt ?
- Wenn die Skizze im geöffneten Zustand geändert wird, sieht man die Constraints in der Combo-Ansicht ?
Kannst du mir die Datei schicken.
- Hast du die Skizze geöffnet oder nur im Modellbaum ausgewählt ?
- Wenn die Skizze im geöffneten Zustand geändert wird, sieht man die Constraints in der Combo-Ansicht ?
Kannst du mir die Datei schicken.
- thomas-neemann
- Veteran
- Posts: 11919
- Joined: Wed Jan 22, 2020 6:03 pm
- Location: Osnabrück DE 🇩🇪
- Contact:
Re: alle punkte im sketcher gleichzeitig markieren/auswählen ?
danke für die mühe. hier ist sie:
ich habe im göffnetem zustand das makro gestartet
- Attachments
-
- sketch-mod.FCStd
- (6.66 KiB) Downloaded 62 times
Last edited by thomas-neemann on Tue Nov 24, 2020 1:22 pm, edited 1 time in total.