Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

In diesem Forum Fragen und Diskussionen in Deutsch
Forum rules
Foren-Regeln und hilfreiche Informationen

WICHTIG: Bitte zuerst lesen, bevor Sie posten
freecad-heini-1
Posts: 5884
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Körper verbinden

Postby freecad-heini-1 » Sun Jul 14, 2019 11:36 am

chrisb wrote:
Sun Jul 14, 2019 8:39 am
Bei einem ersten Versuch verhält sich mein Modell anders als in Deinem Video, jetzt muss ich das erst mal untersuchen.
Hab meine Freecad-Config zurück gesetzt.
Innerhalb des Body haben die Sketche folgende Achsenausrichtung:
Sketch_Ausrichtung_mit_Body.png
Sketch_Ausrichtung_mit_Body.png (10.02 KiB) Viewed 322 times
Kopiert man die Sketche ohne Abhängigkeit und fügt sie in ein neues Part Dokument ein, dann verdrehen sich die Achsen, warum auch immer, siehe:
Sketch_Ausrichrung_unabhaengige_Kopie.png
Sketch_Ausrichrung_unabhaengige_Kopie.png (9.71 KiB) Viewed 322 times
Und hier noch der Vollständigkeit halber eine abhängige Kopie:
sketch_abhaengige_Kopie.png
sketch_abhaengige_Kopie.png (16.91 KiB) Viewed 322 times
Dabei werden zwei Ebenen mit kopiert und die Achsenrichtung ändert sich gegenüber dem Original.

Kann mir jemand erklären an was das liegt? Bug oder Feature?

@Chris, magst Du das Thema abtrennen in einen eigenständigen Thread?
Andererseits könnte dieses "Phänomen" erklären warum sich die Sweep's für den Z-Rahmen so seltsam verhalten, dann würde es zum Thema passen.
chrisb
Posts: 18842
Joined: Tue Mar 17, 2015 9:14 am

Re: Körper verbinden

Postby chrisb » Sun Jul 14, 2019 3:46 pm

freecad-heini-1 wrote:
Sun Jul 14, 2019 7:21 am
Z-Profil_FH-1.FCStd
Wenn ich das von Dir hochgeladene Modell nehme und das Video nachstelle, dann geht es bis vor das Extrudieren bei 1:00 so wie bei Dir. Dann gibt es einen Unterschied: Das Extrude bleibt nicht an der Stelle des Sketchs ...
Bildschirmfoto 2019-07-14 um 17.29.21.png
Bildschirmfoto 2019-07-14 um 17.29.21.png (13.18 KiB) Viewed 304 times
... sondern liegt dort, wo das Sketch ohne sein Placement im Body liegen würde.

Weil das Modell offensichtlich nicht genau dasselbe wie im Video ist (dort liegt es in der Mitte der einen Rechteckseite), würde ich Dich bitten, das Extrude noch mal mit dem hier hochgeladenen zu wiederholen, und ggf. ein Recompute auf alles zu machen.

Wenn das so bleibt wie im Video, dann nimm bitte mal das Sketch und bewege es per Drag-and-Drop aus dem Body raus und wiederhole das Extrude.

Das bei mir beobachtete Verhalten ist erklärlich:
- Part nimmt keine Rücksicht auf das Placement des Body, daher auch die Meldung "Link goes out of allowed scope"
- deshalb geht ein Extrude in Y-Richtung in Richtung der Sketch-Fläche
- ein Extrude in Z-Richtung polstert das Sketch wie erwartet auf.

OS: macOS High Sierra (10.13)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.17147 (Git)
Build type: Release
Branch: master
Hash: 251a3b1ff5517d929b4993d8836e17e01ae2623c
Python version: 3.7.3
Qt version: 5.9.7
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/Germany (en_DE)
freecad-heini-1
Posts: 5884
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby freecad-heini-1 » Sun Jul 14, 2019 5:03 pm

Jetzt mal ernsthaft. Ich habe zwei Zeugen geladen, Koordinatenkreuz und Navicube. Beide zeigen die Achsenrichtung korrekt an.
Alles andere kann ich nicht nachvollziehen.
Ich erinnere mich an die Zeit, als die 0.17 neu war und neben mir viele andere vorbelastete User von Creo, Solidworks, Catia, NX & Co. verwundert waren, warum man z.B. Abstandsebenen immer in Z-Richtung erzeugen muss - und nicht wie gewohnt in die wahre Koordinatenrichtung oder einfach nur wie üblich eine Ebene wählt, einen Abstand, plus oder minus. Damit nahm etwas seinen Lauf, was mir immer noch nicht gefällt.
Wer bitte entscheidet über ein so unübliches Verhalten?
Lässt sich das nicht durch einen demokratischen Mehrheitsbeschluss ändern?
Last edited by freecad-heini-1 on Sun Jul 14, 2019 5:36 pm, edited 1 time in total.
chrisb
Posts: 18842
Joined: Tue Mar 17, 2015 9:14 am

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby chrisb » Sun Jul 14, 2019 5:11 pm

Der Body ist ein Container mit einem eigenen Placement. Das Sketch wird relativ zu diesem Container platziert. Wenn Du einfach die Platzierung ignorierst, kannst Du nicht erwarten, dass alles so funktioniert als ob es diese Verschiebung nicht gäbe. FreeCAD macht sogar genau das, was Du auch tust: es ignoriert das Placement des Bodys.

Da hilft kein Mehrheitsbeschluss, da hilft nur, den Body einfach nicht zu verschieben und nicht zu drehen.
freecad-heini-1
Posts: 5884
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby freecad-heini-1 » Sun Jul 14, 2019 5:24 pm

chrisb wrote:
Sun Jul 14, 2019 5:11 pm
Der Body ist ein Container mit einem eigenen Placement. Das Sketch wird relativ zu diesem Container platziert. Wenn Du einfach die Platzierung ignorierst, kannst Du nicht erwarten, dass alles so funktioniert als ob es diese Verschiebung nicht gäbe. FreeCAD macht sogar genau das, was Du auch tust: es ignoriert das Placement des Bodys.

Da hilft kein Mehrheitsbeschluss, da hilft nur, den Body einfach nicht zu verschieben und nicht zu drehen.
Da sind wir am nächsten Problem, weshalb man ohne Part-o-magic und Ghost nicht zurecht kommt. Wegen diesem Fehlverhalten braucht man nämlich solche Auswege, oder was denkst Du warum Viktor DeepSOIC diese Workbench erschuf?
Von Anfang an hatte ich dieses Fehlverhalten kritisiert, man hat mich gehört, verstanden, Werner hat mir sogar den ein- oder anderen Klon als Tool geschaffen, aber das wahre Problem ist bis heute existent und wurde nie beseitigt.
Wie kann es denn sein, dass wenn ich einen Body verschiebe, oder ein Fremddatenteil importiere und es an Ort- und Stelle verschiebe - und dann boolsche Operationen ausführe dass die einem imaginären unsinnigen Phantasie Nullpunkt folgen und nicht dem Userwunsch? Das gibt es nur in PartDesign. Wie viele neue User und alte Hasen stolpern ständig über dieses Fehlverhalten? Wie viel Support ist nötig um das irgendwie mit Postulaten zu argumentieren?
Sehr schade!

Und Du schreibst:
chrisb wrote:
Sun Jul 14, 2019 5:11 pm
Da hilft kein Mehrheitsbeschluss, da hilft nur, den Body einfach nicht zu verschieben und nicht zu drehen.
Ja, nee, iss klar, Body niemals verschieben oder drehen, ist das Dein Ernst?
Was ist, wenn die Aufgabe das erfordert?
Deswegen meiden viele PartDesign. Bin ja nicht alleine. Frage doch bitte mal die Kollegen warum sie wie ich die Part-WB nutzen anstelle von PartDesign, den hammax, den herbk, den tschrader ... ?!?

Wenigstens ist ein Licht am Ende des Tunnels erkennbar, die Arbeit von Realthunder.

Und wer die Finger von PartDesign lässt und von Anfang an mit der Part-WB konstruiert, der bleibt von solch unlogischem-, am User vorbei gehenden Verhalten, zum Glück gänzlich verschont.
User avatar
saso
Posts: 1332
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby saso » Sun Jul 14, 2019 6:25 pm

:roll:
User avatar
saso
Posts: 1332
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby saso » Sun Jul 14, 2019 6:55 pm

I have been saying from the beginning about this (the "wheels on the roof" problem). Part Design and Bodies are following an correct logic based on their current implementation (chrisb shows to correctly understand why it behaves as it does). BUT this is not how bodies should work!

Wilfried, I respect your knowledge and experience in parametric design and I am always learning something from you, but you don't understand bodies (because Creo does not have them) and you seem to have been ignoring to get a proper understanding about them. And Part-o-magic, Ghost, Werners patches,... are all IMO making all this only WORSE, I don't like to use them and I don't like it every time when another such workaround is created because they are not solving the real problem but only make a patch on top of another patch, another level of complexity on top of the real problem. Good parametric design has beauty in its patterns and logic, same as good programming code.

And realthunder link and asm3 is also not solving this, he has some good things there but IMO there are also some that are questionable and can probably bring similar problems as the unfinished Part Design has bring with the wrongly implemented Bodies. He can be a great developer but he said it himself that he does not know how the common parametric cad systems work.

If some of the developers are willing to work with me (and other users that are willing to do it correctly) I am confident that we can make it work. But we should stop with this workarounds and patching on top of patching.

PS Why Wilfrieds extrusion in the video behaves different then what chrisb gets (and others since it is the normal behavior), I am quite sure it is because of the Part-o-magic, but no, I don't see it as the solution, my suggestion https://forum.freecadweb.org/viewtopic. ... 10#p320885
chrisb
Posts: 18842
Joined: Tue Mar 17, 2015 9:14 am

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby chrisb » Sun Jul 14, 2019 9:47 pm

@saso: Thanks for pointing out the connection to part-o-magic. It's always the first step to understand why things behave the way they do.

@ Wilfried: Das Hin und Her zwischen PartDesign und Part ist eigentlich recht einfach: In Part darf man nicht auf Innereien eines Bodies zugreifen. Insofern ist hier doch alles in Ordnung. Mein Problem waren früher die ShapeBinder, die eben auch nicht das Placement umfassender Container berücksichtigt hatten. Seit es die Eigenschaft "TraceSupport" gibt, kann man beides haben: Die ShapeBinder, die sozusagen als Vorlagen für Standardteile hergenommen werden und das Placement nicht berücksichtiggen und solche mit TraceSupport=true, die man verwenden kann, um Objekte einschließlich ihrer globalen Position zu referenzieren.
realthunder
Posts: 1194
Joined: Tue Jan 03, 2017 10:55 am

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby realthunder » Mon Jul 15, 2019 9:18 am

saso wrote:
Sun Jul 14, 2019 6:55 pm
And realthunder link and asm3 is also not solving this, he has some good things there but IMO there are also some that are questionable and can probably bring similar problems as the unfinished Part Design has bring with the wrongly implemented Bodies. He can be a great developer but he said it himself that he does not know how the common parametric cad systems work.
I seem to remember you said you'll going to open a thread about your ideas of how body should behave, and I said I am willing to join the discussion, no?
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
freecad-heini-1
Posts: 5884
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Part-Extrude eines PartDesign-Sketchs, Merkwürdigkeiten mit X-, Y- und Z-Richtung

Postby freecad-heini-1 » Mon Jul 15, 2019 11:08 am

saso wrote:
Sun Jul 14, 2019 6:55 pm
Ich habe von Anfang an darüber gesprochen (das Problem "Räder auf dem Dach"). Teileentwurf und Körper folgen einer korrekten Logik, die auf ihrer aktuellen Implementierung basiert (chrisb zeigt, warum es sich so verhält, wie es ist). Aber so sollten Körper nicht funktionieren!
+1
saso wrote:
Sun Jul 14, 2019 6:55 pm
Wilfried, ich respektiere dein Wissen und deine Erfahrung im parametrischen Design und ich lerne immer etwas von dir, aber du verstehst Körper nicht (weil Creo sie nicht hat) und du scheinst ignoriert zu haben, um ein richtiges Verständnis über sie zu bekommen.
Ja, dem stimme ich zu.
saso wrote:
Sun Jul 14, 2019 6:55 pm
Und Part-o-magic, Ghost, Werners Patches,.... sind alle IMO, die all dies nur schlecht machen, ich mag es nicht, sie zu benutzen, und ich mag es nicht jedes Mal, wenn ein anderer solcher Workaround nutzt, weil sie das eigentliche Problem nicht lösen, sondern nur einen Patch auf einem anderen Patch machen, eine andere Ebene der Komplexität auf dem realen Problem. Gutes parametrisches Design hat Schönheit in seinen Mustern und seiner Logik, ebenso wie guter Programmiercode.
Wenn das zur Zeit vorhandene PartDesign so "fehlerhaft" ist, ist man leider gezwungen sich irgend einen Ausweg zu suchen.
saso wrote:
Sun Jul 14, 2019 6:55 pm
Und realthunder link und asm3 löst das auch nicht, er hat dort einige gute Dinge, aber IMO gibt es auch einige, die fragwürdig sind und wahrscheinlich ähnliche Probleme mit sich bringen können, wie das unfertige Part Design mit den falsch implementierten Bodies. Er kann ein großer Entwickler sein, aber er hat selbst gesagt, dass er nicht weiß, wie die gängigen parametrischen Cad-Systeme funktionieren.
Realtunder ist fähig und hat ein offenes Ohr für die Belange von erfahrenen Usern.
saso wrote:
Sun Jul 14, 2019 6:55 pm
Wenn einige der Entwickler bereit sind, mit mir zu arbeiten (und andere Benutzer, die bereit sind, es richtig zu machen), bin ich zuversichtlich, dass wir es schaffen können. Aber wir sollten mit diesen Umgehungsmöglichkeiten aufhören und das Patchen auf das Patchen aufgeben.

Und hier beginnt jetzt der interessante Teil. Ich bin gerne mit dabei um zu helfen Freecad besser zu machen. Ich bin zwar kein Entwickler, aber ein erfahrener CAD-User, der Freecad bis an die Grenzen bringen kann. Außerdem hänge ich nicht an irgendeinem Programm oder irgendwelches Workflows, sondern bin offen für Neues.
saso wrote:
Sun Jul 14, 2019 6:55 pm
PS Warum sich Wilfrieds-Extrusion im Video anders verhält als das, was Chrisb bekommt (und andere, da es das normale Verhalten ist), ich bin mir ziemlich sicher, dass es am Part-o-Magic liegt, aber nein, ich sehe es nicht als die Lösung, meinen Vorschlag. https://forum.freecadweb.org/viewtopic. ... 10#p320885
Ich hatte meine Freecad Config umbenannt, nach einem Freecad Neustart wurde eine neue Config erzeugt, Freecad in den Werkszustand versetzt. D.h. es gab ab diesem Moment kein Part-o-magic.

https://forum.freecadweb.org/viewtopic. ... 10#p320885

Ich übersetze das mal, denn ich finde das richtig gut was Du schreibst:

Nun, es scheint mir, dass wir ständig versuchen, diese "Montagewand" mit Heads First Approach zu durchbrechen und es bringt uns nichts als Kopfschmerzen..... Wenn wir FreeCAD wirklich so funktionieren lassen wollen, wie es sollte, dann würde ich persönlich ein paar Schritte zurückgehen und versuchen, es in dieser Reihenfolge zu tun:

(nicht direkt mit Link/Asm3 verbunden, stellt aber eine wichtige Verbesserung für einen korrekten Teile-Workflow dar, der die Bausteine für eine korrekte Montage liefert).
1. die Bezugspunktelemente (Punkt, Linie, Ebene, cs) so ändern, dass sie überall verwendet werden können, nicht nur innerhalb von Körpern (sollte nicht ignoriert werden und sollte IMO Priorität haben, wir haben kurz vor dem Release 0.18 darüber gesprochen).
2. es ermöglichen, innerhalb des Part Containers zu arbeiten (sollte nicht ignoriert werden und sollte IMO Priorität haben, DeepSOIC hatte einige Ideen dazu, wenn ich mich richtig erinnere).
3. den Körper so ändern, dass er wie ein richtiger Körper funktioniert (das gibt uns eine Menge Probleme, aber es kann vielleicht später gemacht werden, ich weiß nicht, wie viel Arbeit das sein wird, aber es sollte nicht ignoriert werden, ich werde einen speziellen Beitrag dazu schreiben).
4. geeignete Strategien für die Verwaltung des Historienbaums (er ist eng mit dem Körperproblem verbunden und kann wahrscheinlich auch später durchgeführt werden, sollte aber nicht ignoriert werden).
5. korrekter Schritt Import/Export (sollte nach den oben genannten Änderungen durchgeführt werden, da er stark von ihnen abhängig ist und auch nicht ignoriert werden sollte).

(in Bezug auf Link/Asm3 würde ich eigentlich versuchen, zuerst viele der anderen Dinge, die damit entwickelt wurden, an den Master zu bekommen. Ich denke, viele von ihnen wurden viel besser überprüft und getestet und haben einen sehr hohen Wert für die Benutzer und hätten wahrscheinlich schon vor langer Zeit im 0,18er Entwicklungszyklus zum Master hinzugefügt werden können, persönlich würde ich das besonders gerne sehen....).
6. Kommissionierliste
7. Skizzierexporte
8. Skizzierer Toponaming (wäre toll, wenn ickby und DeepSOIC ihre Meinung zu dieser Implementierung teilen würden).
9. allgemeines Toponaming (wäre toll, wenn ickby und DeepSOIC ihre Meinung zu dieser Implementierung teilen würden).
.... es gibt viel mehr, aber einige davon können wahrscheinlich eine niedrigere Priorität für später haben.... gehen Sie die Release-Notes https://github.com/realthunder/FreeCAD_ ... mbly3/wiki durch.

(die grundlegende Link-Funktionalität, die ich persönlich in 0.19 sehen möchte, aber es könnte wahrscheinlich noch etwas mehr Überprüfung benötigen.... brauchen wir wirklich Link-Gruppen?)
10. Link

(das sollte wahrscheinlich warten)
11. Asm3
12. verbesserter Ausdrucksmotoru schreibst: