Probleme mit Draft Array
Probleme mit Draft Array
Hallo,
seit einiger Zeit habe ich verschiedene Probleme mit dem polarem Draft Arrays. Eines habe ich recht exakt seit Einführung des Array Typs "circular", ein anderes habe ich erst später bemerkt.
Der Reihe nach...
Früher bekam ich, auf einen in Part erstellten Zylinder, um 90° gedreht und x mm verschoben, bei darauf angewendetem Draft Array habe dieses Array: Erstellt mit FC 0.19.17646 Appimage,-
mache ich die gleichen Schritte mit FC 0.19.19020 sieht das so aus:
Das sieht für mich so aus als wurde das Array früher um die Koordinaten des Dokumentes gedreht, jetzt aber um die Koordinaten des Objektes. Was dabei besonders stört, ist, dass beim Drehen die Achsen mit drehen, es ist nicht mehr nachvollziehbar um welche Achse gedreht wird weil die Objekte ja kein Achsenkreuz haben.
Auch beim erstellen eines Arrays auf einer Fläche, z.B. um eine Felge zu Zeichnen, gibt es seltsames Verhalten. Vorgehen:
Erstelle einen Zylinder (groß genug um ein paar Durchbrüche zu machen.
Drehe den Zylinder (z,B. auf dem Mantel stellen) und verschiebe ihn
Erstelle eine an eine Fläche gebundene Skizze
Erzeuge aus der Skizze ein Array
Extrudiere die Skizze
Das Ergebnis sieht aus wie erwartet, die Durchbrüche lassen sich erstellen
Ändere jetzt die Reihenfolge der beiden letzten Aktionen, d.h.
Extrudiere die Skizze
Erzeuge aus dem Extrude
Das Ergebnis sieht jetzt so aus:
Um welchen Punkt hier das Array gebildet wird kann ich nicht direkt nachvollziehen. könnten aber die Koordinaten des Dokumentes sein...
seit einiger Zeit habe ich verschiedene Probleme mit dem polarem Draft Arrays. Eines habe ich recht exakt seit Einführung des Array Typs "circular", ein anderes habe ich erst später bemerkt.
Der Reihe nach...
Früher bekam ich, auf einen in Part erstellten Zylinder, um 90° gedreht und x mm verschoben, bei darauf angewendetem Draft Array habe dieses Array: Erstellt mit FC 0.19.17646 Appimage,-
mache ich die gleichen Schritte mit FC 0.19.19020 sieht das so aus:
Das sieht für mich so aus als wurde das Array früher um die Koordinaten des Dokumentes gedreht, jetzt aber um die Koordinaten des Objektes. Was dabei besonders stört, ist, dass beim Drehen die Achsen mit drehen, es ist nicht mehr nachvollziehbar um welche Achse gedreht wird weil die Objekte ja kein Achsenkreuz haben.
Auch beim erstellen eines Arrays auf einer Fläche, z.B. um eine Felge zu Zeichnen, gibt es seltsames Verhalten. Vorgehen:
Erstelle einen Zylinder (groß genug um ein paar Durchbrüche zu machen.
Drehe den Zylinder (z,B. auf dem Mantel stellen) und verschiebe ihn
Erstelle eine an eine Fläche gebundene Skizze
Erzeuge aus der Skizze ein Array
Extrudiere die Skizze
Das Ergebnis sieht aus wie erwartet, die Durchbrüche lassen sich erstellen
Ändere jetzt die Reihenfolge der beiden letzten Aktionen, d.h.
Extrudiere die Skizze
Erzeuge aus dem Extrude
Das Ergebnis sieht jetzt so aus:
Um welchen Punkt hier das Array gebildet wird kann ich nicht direkt nachvollziehen. könnten aber die Koordinaten des Dokumentes sein...
Gruß Herbert
Re: Probleme mit Draft Array
Aloha,
das Problem scheint mit LinkArray gekommen zu sein. Früher wurde der Inhalt eines Objektes kopiert und entsprechend verschoben. Mit Änderungen wird aber das Placement des Ursprungsobjekt kopiert und bewegt. Siehe Draft/Arch related changes.
Kannst du zum Testen deine Draft.py ändern? Zeile 5907 durch folgenden drei Zeilen ersetzen:
Code: Select all
import Part, FreeCAD
pl = FreeCAD.Placement(pl.Base, FreeCAD.Rotation())
center = center.sub(pl.Base)
Viele Grüße
Benjamin
Probleme mit Draft Array
Hallo Herbert, scheiter grad am gleichem Problem das sich die Array Funktion zwischen der 18 und 19 unterschiedlich verhält. Bin schon auf die Lösung gespannt.
- Attachments
-
- Lochzylinder 19.FCStd
- (919.17 KiB) Downloaded 33 times
-
- Lochzylinder 18.FCStd
- (916.17 KiB) Downloaded 36 times
Re: Probleme mit Draft Array
Herbert, vielen Dank für's Ausprobieren. Ich war mir nicht sicher, ob ich mich falsch erinnert habe oder ob sich da tatsächlich etwas geändert hat. Nun ist klar: es hat sich was geändert.
Damit würden womöglich viele Modelle, die mit 0.18 oder früher erstellt wurden, ungültig.
Magst Du das im englischen Forum mal ansprechen?
Damit würden womöglich viele Modelle, die mit 0.18 oder früher erstellt wurden, ungültig.
Magst Du das im englischen Forum mal ansprechen?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Re: Probleme mit Draft Array
Hi Benjamin,
kann ich leider nicht...: Unter OpenSuse läuft die 0.19 nur als AppImage bei welchem die ganzen Basis WBs nichts im "mod Ordner" sind.
Gruß Herbert
Re: Probleme mit Draft Array
Moin Moin Felderfans,Gift wrote: ↑Mon Dec 23, 2019 9:59 pmAloha,
das Problem scheint mit LinkArray gekommen zu sein. Früher wurde der Inhalt eines Objektes kopiert und entsprechend verschoben. Mit Änderungen wird aber das Placement des Ursprungsobjekt kopiert und bewegt. Siehe Draft/Arch related changes.
Kannst du zum Testen deine Draft.py ändern? Zeile 5907 durch folgenden drei Zeilen ersetzen:
Das bitte mal testen.Code: Select all
import Part, FreeCAD pl = FreeCAD.Placement(pl.Base, FreeCAD.Rotation()) center = center.sub(pl.Base)
Viele Grüße
Benjamin
war doch nicht so einfach. Commit
3ea6583. Das ist aber noch im eigenem Repo. Kann das jemand Gegentesten? Evt. ist die Lösung auch einfacher.
Gruß
Benjamin
Re: Probleme mit Draft Array
Moin Moin Felderfans,Gift wrote: ↑Mon Dec 23, 2019 9:59 pmAloha,
das Problem scheint mit LinkArray gekommen zu sein. Früher wurde der Inhalt eines Objektes kopiert und entsprechend verschoben. Mit Änderungen wird aber das Placement des Ursprungsobjekt kopiert und bewegt. Siehe Draft/Arch related changes.
Kannst du zum Testen deine Draft.py ändern? Zeile 5907 durch folgenden drei Zeilen ersetzen:
Das bitte mal testen.Code: Select all
import Part, FreeCAD pl = FreeCAD.Placement(pl.Base, FreeCAD.Rotation()) center = center.sub(pl.Base)
Viele Grüße
Benjamin
war doch nicht so einfach. Commit
3ea6583. Das ist aber noch im eigenem Repo. Kann das jemand Gegentesten? Evt. ist die Lösung auch einfacher.
Gruß
Benjamin
Re: Probleme mit Draft Array
Ich habe gegenüber meiner Version auch noch eine Änderung in Zeile 1792:
alt:
neu:
Soll ich da auch die neue Variante übernehmen?
alt:
Code: Select all
if hasattr(obj,'Shape') and (getType(obj) not in ["WorkingPlaneProxy"]):
Code: Select all
if hasattr(obj,'Shape') and (getType(obj) not in ["WorkingPlaneProxy","BuildingPart"]):
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Re: Probleme mit Draft Array
Oops, doppelt gepostet.
#edit: Bist du auf deinem Mac unterwegs?
In der Konsole
Falls du FreeCAD offen hast und Draft bereits genutzt wurde, kannst du Draft.py neu laden:
Das Array muss dann aber neu erstellt werden. Anschließend kannst du wieder auf den gleichen Weg die original Draft.py laden.
Kannst du, hat aber für den Test keine Bewandtnis. Das wird eine Erweiterung für Arch sein.chrisb wrote: ↑Tue Dec 24, 2019 8:52 am Ich habe gegenüber meiner Version auch noch eine Änderung in Zeile 1792:
alt:neu:Code: Select all
if hasattr(obj,'Shape') and (getType(obj) not in ["WorkingPlaneProxy"]):
Soll ich da auch die neue Variante übernehmen?Code: Select all
if hasattr(obj,'Shape') and (getType(obj) not in ["WorkingPlaneProxy","BuildingPart"]):
#edit: Bist du auf deinem Mac unterwegs?
In der Konsole
Code: Select all
cd /Applications/FreeCAD.app/Contents/Resources/Mod/Draft/
curl -O https://raw.githubusercontent.com/ageeye/FreeCAD/master/src/Mod/Draft/Draft.py
Code: Select all
import importlib
importlib.reload(Draft)
Re: Probleme mit Draft Array
Ich habe mal insgesamt die neue Version genommen und es sieht gut aus! Das Verhalten ist wieder so wie früher.
OS: macOS High Sierra (10.13)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18947 (Git)
Build type: Release
Branch: master
Hash: 91f6a5e5ee1b48063d5d4b59cc6250fc2a1021b1
Python version: 3.7.3
Qt version: 5.12.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/Germany (en_DE)
OS: macOS High Sierra (10.13)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18947 (Git)
Build type: Release
Branch: master
Hash: 91f6a5e5ee1b48063d5d4b59cc6250fc2a1021b1
Python version: 3.7.3
Qt version: 5.12.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/Germany (en_DE)
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.