Featurerequest Sketcher: equal means equal

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

WICHTIG: Bitte zuerst lesen, bevor Sie posten
HartmutG
Posts: 190
Joined: Fri Oct 21, 2016 10:13 am

Featurerequest Sketcher: equal means equal

Postby HartmutG » Thu Dec 01, 2016 11:45 am

Hallo,

mir ist beim Sketcher (<=mein ultimatives Lieblingsteil von FC) aufgefallen, dass es gelegentlich nerven kann, wenn Gleichheitsbeziehungen unnötig verschachtelt werden.
Hier mal am Beispiel von Kreisradien (betrifft andere Gleichheiten genauso), schaut mal auf anliegenden Screenshot: Alle vier Kreise haben den gleichen Radius. Rechts unten heißt die Gleichheit "=4", hmmmm das ist identisch mit links unten, das ist wiederum "=3", hmmmm, das ist wiederum identisch mit rechts oben "=2" hmmm wo war doch gleich "=2", ah ja, da ist es ja, meine gesetzten 5mm.

Und ja, mir ist klar, ich habe das so "angerichtet" und mir ist durchaus klar, wie man das vermeiden kann, vermutlich auch sollte, aber mit Eifer des Gefechts kommt sowas nunmal vor und warum sollte die Software einem da nicht helfend zur Seite stehen.

Also wäre es nicht schön, wenn der Sketcher bei verschachtelter Gleichheit das selber erkennt und entsprechend "rauskürzt"? Spricht irgendwas dagegen? Und richtig optimal fände ich es, wenn man den einzelnen Gleichheitskonstraint nur an einem Kreis anwählen und löschen könnte um ihn vom Rest der "Gleichheiten" zu befreien und einzeln neu vergeben zu können.

Meinungen?
Gruß, HG
Attachments
Gleichheit.PNG
Gleichheit.PNG (13.83 KiB) Viewed 729 times
ickby
Posts: 2922
Joined: Wed Oct 05, 2011 7:36 am

Re: Featurerequest Sketcher: equal means equal

Postby ickby » Thu Dec 01, 2016 12:02 pm

Also wäre es nicht schön, wenn der Sketcher bei verschachtelter Gleichheit das selber erkennt und entsprechend "rauskürzt"? Spricht irgendwas dagegen?
Sowas ist immer etwas schwierig, da die Software dann etwas tut das der User so nicht gesagt hat. FC würde dann also eine Vermutung anstellen, was der Nutzer wollte. Aber was wenn er es nicht so wollte, also wenn er bewusst einzelne Constraints gesetzt hat, dann ist er genervt das er sie nicht einzeln Löschen kann.
Wo diese Vereinheitlichung allerdings Sinnvoll ist, ist wenn der User alle 4 Kreise Ausgewählt hat und dann die Gleichheits-Beziehung setzt. Denn dann hat er sich ja bewusst dafür entscheiden, dann sollte das auch als eine Beschränkung auftauchen.

Ich vermute aber das das recht aufwendig zu Implementieren ist, da es so ein Verhalten aktuell nicht gibt. Man müsste also dafür erst die Infrastruktur schaffen. Klingt nach viel arbeit. Aber wie immer bei FC: wenn sich ein Entwickler findet der es machen möchte wird es gemacht. Daher ist es sicher sinnvoll es im Feature-Request im Tracker zu hinterlegen (hier wird es nur Vergessen)
User avatar
r.tec
Posts: 441
Joined: Thu Oct 23, 2014 4:06 pm
Location: Bad Münstereifel, NRW, Germany
Contact:

Re: Featurerequest Sketcher: equal means equal

Postby r.tec » Thu Dec 01, 2016 12:03 pm

...also echt, Du guckst auf Dinge, die mich seit meinem Einstieg bei FreeCAD nicht die Bohne interessiert haben, und die mich nie daran gehindert haben meine Konstruktionen anzufertigen. Für was soll das denn nun gut sein?

Langsam habe ich das Gefühl einem Troll aufzusitzen, der von einem der professionellen SW-Hersteller hingesetzt worden zu sein scheint um FC nach unten zu ziehen. Manchmal soll man ja auf seine Gefühle vertrauen...

Und wenn ich die Einstiegsmaske des deutschen Forums so ansehe, sehe ich vor lauter Hartmut G. nichts Anderes mehr.
HartmutG
Posts: 190
Joined: Fri Oct 21, 2016 10:13 am

Re: Featurerequest Sketcher: equal means equal

Postby HartmutG » Thu Dec 01, 2016 12:24 pm

ickby wrote:Sowas ist immer etwas schwierig, da die Software dann etwas tut das der User so nicht gesagt hat. FC würde dann also eine Vermutung anstellen, was der Nutzer wollte. Aber was wenn er es nicht so wollte, also wenn er bewusst einzelne Constraints gesetzt hat, dann ist er genervt das er sie nicht einzeln Löschen kann.
hmmm finde ich nicht wirklich, denn wenn ich sage a=b, b=c und c=d, dann befehle ich somit auch a=d.
So wie es jetzt zur Zeit ist, bringt das auch wenig. Ich hab' mal in dem Beispiel rumgespielt um einen einzelnen Kreis aus der Kette rauszunehmen/löschen, das was man dann vor sich hat, nervt auch. Da geht also IMHO an Bedienkomfort zum Status-quo nicht viel verloren.
Wo diese Vereinheitlichung allerdings Sinnvoll ist, ist wenn der User alle 4 Kreise Ausgewählt hat und dann die Gleichheits-Beziehung setzt. Denn dann hat er sich ja bewusst dafür entscheiden, dann sollte das auch als eine Beschränkung auftauchen.
ACK, die ist natürlich auch schon heute besser/übersichtlicher zu hantieren, aber ich meinte ja auch "im Eifer des Gefechts..."
Ich vermute aber das das recht aufwendig zu Implementieren ist, da es so ein Verhalten aktuell nicht gibt.
Man müsste also dafür erst die Infrastruktur schaffen. Klingt nach viel arbeit.
kann ich jetzt nicht so beurteilen, war eben nur etwas was mir aus Benutzersicht aufgefallen ist. (Sorry wenn das Arbeit ist ;) )
Daher ist es sicher sinnvoll es im Feature-Request im Tracker zu hinterlegen (hier wird es nur Vergessen)
Mal 'ne richtig blöde Frage: Wie geht das und ist das sinnvoll wenn ich als Ultra-Noob das mache?
Im übrigen dachte ich stell' ich die Idee hiermal so rein, vielleicht ist es ja auch totaler Blödsinn was ich da gedacht habe, bevor da der Tracker gespamt wird und ein qualifizierterer alteingesessener formuliert das, falls es Sinn macht, so das es jeder versteht.
Danke&Gruß, HG

P.S. Meine Ignoreliste ist um einen Eintrag gestiegen, ist echt traurig *kopfschüttel*.

P.P.S. Nun mag man sagen: "Peanuts, wer braucht so einen Müll": Ich finde gerade derartige Liebe zum Detail macht Software richtig angenehm zu benutzen. Und da wiederhole ich mich gerne: Der Sketcher hat viele derartige kleine Details mit viel Liebe, die keiner wirklich braucht, die dennoch wirklich Freude an der Software machen.
freecad-heini-1
Posts: 5910
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Featurerequest Sketcher: equal means equal

Postby freecad-heini-1 » Thu Dec 01, 2016 1:29 pm

r.tec und freecad-heini-1 stehen auf seiner Ignore-Liste, wer kommt als nächstes? :lol:
User avatar
r.tec
Posts: 441
Joined: Thu Oct 23, 2014 4:06 pm
Location: Bad Münstereifel, NRW, Germany
Contact:

Re: Featurerequest Sketcher: equal means equal

Postby r.tec » Thu Dec 01, 2016 6:00 pm

hey, damit kann ich sehr gut leben, Wilfried. Schade nur, dass ich durch diese latente miese Stimmung hier so gar nicht mehr eine richtige Lust habe ins deutsche Forum zu gucken....
User avatar
r-frank
Posts: 2181
Joined: Thu Jan 24, 2013 6:26 pm
Location: Möckmühl, Germany
Contact:

Re: Featurerequest Sketcher: equal means equal

Postby r-frank » Thu Dec 01, 2016 6:07 pm

Was glaubst Du wie es mir geht ?
Und ich als Mod muss ...

Ganz zu schweigen von dem Trubel privat und am Arbeitsplatz gerade ...
Deutsche FreeCAD Tutorials auf Youtube
My GrabCAD FreeCAD-Projects
FreeCAD lessons for beginners in english

Native german speaker - so apologies for my english, no offense intended :)
tom
Posts: 65
Joined: Sun Mar 29, 2015 9:20 pm

Re: Featurerequest Sketcher: equal means equal

Postby tom » Thu Dec 01, 2016 7:27 pm

Hallo,

mir ist es auch schon mal so gegangen, dass ich mir EIN Gleichheits-Constraint für alle Elemente gewünscht habe, die eben irgendwie gleich sind. In der derzeitigen Implementation ist es so, dass die Gleichheit sich immer nur auf zwei Elemente bezieht. Wenn man also mehr als zwei Elemente gleichsetzen will, dann müssen mehrere Gleichheitspaare erzeugt werden, die dann miteinander verkettet sind. Nun könnte man naiverweise sagen, dass man einfach für ein Gleichheits-Constaint eine Liste von Elementen pflegt anstelle eines Elementepaars. Wenn man nun ein weiteres Element der Gleichheit hinzufügen will, dann müsste einfach dieses Element in diese Liste aufgenommen werden. Doch hier kommt das Problem: Was passiert, wenn man zwei existierende Gleichheitsgruppen gleichsetzt? Dann müssten die Listen beider Gruppen miteinander verschmolzen werden. Das bedeutet, dass mindestens einer der beiden Constraints verworfen werden muss, was sicherlich negative Auswirkungen auf irgendwelche Referenzen hat. Für den User würde dann ein Constraint in der Lister der Constraints einfach verschwinden. Ob das akzeptabel ist, weiß ich nicht. Weiterhin gestaltet sich das Auftrennen einer solchen Gleichheitsgruppe schwieriger, denn ich wüsste jetzt kein Bedienkonzept, wie man man bestimmen kann, welche Elemente in welche Teilgruppe überfuhrt werden sollen. Das Einzige, was ginge, wäre das Herauslösen eines einzelnen Elements aus der Gruppe.

Meine Erkenntnis ist bis jetzt, dass sich dieser Wunsch rein vom Bedienkonzept (noch?) nicht erfüllen lässt.

VG Thomas
HartmutG
Posts: 190
Joined: Fri Oct 21, 2016 10:13 am

Re: Featurerequest Sketcher: equal means equal

Postby HartmutG » Thu Dec 01, 2016 7:57 pm

tom wrote:Doch hier kommt das Problem: Was passiert, wenn man zwei existierende Gleichheitsgruppen gleichsetzt?
Das gleiche wie jetzt?
Das hast Du doch jetzt auch schon genau so: setze die beiden oberen gleich und gib ihnen Radius, setze unten beide gleich und gib ihnen Radius. Nun versuche oben und unten gleich zu setzen => Richtigerweise eine Fehlermeldung
Diese Verhalten ist absolut korrekt und wird nicht durch die Anzahl der Elemente die sich in einer Gleichheitsmenge befinden beeinflußt.
Weiterhin gestaltet sich das Auftrennen einer solchen Gleichheitsgruppe schwieriger, denn ich wüsste jetzt kein Bedienkonzept, wie man man bestimmen kann, welche Elemente in welche Teilgruppe überfuhrt werden sollen.
zum Überführen _IN_ die Menge genauso wie jetzt: Du nimmst ein Element was keinen Gleichheitskonstraint hat und "machst gleich" mit einem was eine hat. Ist genau das "gleiche" (hehe, lustiges Wortspiel).

Das einzige was sich in der Bedienung leicht ändern müßte: gezielt ein Element zu entfernen. Denn bisher ist es Usus, dass wenn Du auf ein =-Konstraint klickst die Zweier-Verknüpfung aufleuchtet, Du es also markierst und ggf. diese einzelne Zweierverknüfung löschst. Das müßte sich dann ändern, indem Du das =-Konstraint _UND_ das zu betreffende Element markierst um es aus der Menge zu löschen. Würde sagen ist akzeptabel, selbst dreier-Markierungen wie Symmetrie im Sketcher lassen sich noch gut hantierten.
Programmiertechnisch isses so'ne Sache, wie das bisher angelegt ist, ob das viel oder wenig Arbeit ist. Python unterstützt Mengen, also von der Abstraktion noch halbwegs programmierbar. Man könnte es aber auch notfalls als Zweiergruppen (bzw. Zugehörigkeit) in der Konstraint-Liste führen und dort löschen, unschön, wäre die absolute Notlösung, aber ebenfalls machbar.
Gruß, HG
polymer
Posts: 228
Joined: Fri Sep 12, 2014 8:49 am

Re: Featurerequest Sketcher: equal means equal

Postby polymer » Thu Dec 01, 2016 8:04 pm

freecad-heini-1 wrote:r.tec und freecad-heini-1 stehen auf seiner Ignore-Liste, wer kommt als nächstes? :lol:
Hier!!! Ich!!! Ich!!!