[Behaviour suggestion] Merge 'Coincident' and 'point on object'

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
davidosterberg
Posts: 529
Joined: Fri Sep 18, 2020 5:40 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by davidosterberg »

user1234 wrote: Sat Jan 22, 2022 11:51 pm a few points:
Very good points. You have convinced me that there at least needs to be two distinct constraint symbols in the sketch. If we can come up with a good icon in the toolbar, we could still combine into one button though. Like the auto radius/diameter tool.

Internally the representation will be unchanged. So old files will work.
drmacro
Veteran
Posts: 8870
Joined: Sun Mar 02, 2014 4:35 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by drmacro »

Actually, I think combining the two is bad.

They are indeed separate and distinct in my mind, so separate icons are appropriate.

You might convince me that "Constrain coincident" needs a better tool tip or other documentation. But, I specifically am thinking about defining two end vertexes coincident when I click Image

When I click Image I intend to make the selected vertex coincident to a selected edge.

These icons represent those actions, in my mind.

My $0.02, and, I know, late to this thread... ;)
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."
User avatar
paddle
Veteran
Posts: 1392
Joined: Mon Feb 03, 2020 4:47 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by paddle »

user1234 wrote: Sat Jan 22, 2022 11:51 pm I think this suggestion completely is not thought-out.
Well thanks and I think that your comments are not thought-out at all.
user1234 wrote: Sat Jan 22, 2022 11:51 pm - which sketch below has 3 lines with a coincident and which has 2 lines with point on object?0.png
This is a made up situation. Hovering on top you would immediatly see if it's 2 or 3 lines with preselection. This is a non-sens argument, it makes no point. Why would you want to know if it's 2 or 3 lines? It's such a rare made up situation that in this case you just put your mouse on one line and see it's 2 separate lines.
user1234 wrote: Sat Jan 22, 2022 11:51 pm When all is one constraint (symbol), you can not see any difference, even though both have different meanings and are completely different sketches. For compare, if have made the symbols invisible.
--> bad overview
user1234 wrote: Sat Jan 22, 2022 11:51 pm - when you go through the list, because you have a complex sketch, many symbols are the same and you find the target constraint very bad. Also when you use this list, you are probably searching to 90% a coincident or a point on object and then you can not see the difference anymore?2.png
Those two are the same argument.
First I don't say we need separate icons in the backend. My point is that one TOOL should do both constraints.
Second, following you argument, why don't we create more constraints type then? We should have PointToLine and PointToCircle and PointToArc and PointToEllipse. Because the icons would be different so it would be much easier to find the constraints in the solver. How convenient would that be?
user1234 wrote: Sat Jan 22, 2022 11:51 pm - regardless from above, when you have 3 lines (or a complex sketch) and you want to delete the coincident of a line, because you want to replace it with more lines or an other object and the rest of them is constraint, all symbols will be congruent, because also all points are coincident, also when they are referred to an other neighbors object. To select and delete the correct constraint will depend on random luck, which is not the sense of CAD using.
--> bad overview, bad handling, need more time to solve, potential error source.
Sorry what? It's just not understandable. "the coincident of a line"? What does that even mean? Coincidence of a line endpoint to another line endpoint?
Today you have 3 lines which all have a coincidence at an endpoint, if you want to detach one of the lines you already depend on random luck.
If you have one line endpoint which is pointonObject on another line, then even if the constraint symbol is not here (which is not what I asked for again) then you would be able to know which constraint to delete because only one would highlight the endpoint of your line.
user1234 wrote: Sat Jan 22, 2022 11:51 pm What is the benefit? It is just annoying, nothing more.
--> bad overview, bad handling, need more time
--> a good overview is more important then 2 seconds more time to create a sketch, because you always must adapt the sketches and with a good overview, you will benefit more then the 2 seconds, you needed longer to create them.
Yes right. Let's then just in and create PointToLine and PointToCircle and PointToArc and PointToEllipse. I'm sure we could split up a lot more constraint to have a better overview.
Beside AGAIN my point was not to delete the different constraint symbols in the Task Constraints widget, just to merge the two TOOLS together to improve user-friendlyness.
user1234 wrote: Sat Jan 22, 2022 11:51 pm - point on object can go over the boundaries of the object, because is is based on the untrimmed base

If this would be a combined object, this would be completely misleading.
No it wont. A point to be concident to the infinite line makes sens.
user1234 wrote: Sat Jan 22, 2022 11:51 pm - what is when this happen?
Seriously who does that? Anyway, what happens then when you do that the way you did it? The way it is currently possible to do?
user1234 wrote: Sat Jan 22, 2022 11:51 pm If this happens, you will not see the difference, because the symbols are the same. Especially this will affect new users. Maybe this works for rectangles, but with circles, ellipse, splines, etc. i am sot so sure. Also this is a source of errors further operations (similar to bad tangents).

--> potential error source
Again I did not advocate for the deletion of the icon on the viewprovider.
Beside those situation can happen with current pointOnObject constraint. Perhaps the question is rather should double pointOnObject be caught programatically and replaced by coincidence to avoid errors ?
user1234 wrote: Sat Jan 22, 2022 11:51 pm Generally: not everything must be for new users. Not for gatekeeping (i also can not place a untrained people to a lathe, only because the lathe has comfort functions; only because CAD is a computer program, does not the damages smaller), just for the correct clean workflow. For that, some information or extra steps are needed. I have too often seen, that comfort functions causes big and expensive issues, more then the little extra steps. Because then users forget or does not recognize to work clean. And the generally workflow of FreeCAD have the best compromise between cleanness, overview and comfort (bugs, missing features and TNP excluded).
My suggestion is not aimed at new CAD users. But not expert-freecad-users. For the average user of CAD software who comes from paid packages, this is the kind of thing that make life harder than needs to be. If you don't know the shortcuts by heart after 10 years of using freeCad, the fact that there are so many constraint tools is annoying. You have to find the correct icon, click it, go back to the sketch, get an error message because you did not select the correct one, go back try again and so on and so on.
user1234 wrote: Sat Jan 22, 2022 11:51 pm And especially the handling of the Sketcher is top notch, especially when you compare it with commercial CADs. And then you must remark that FreeCAD is a FOSS and how well-thought-out this abdullah (many thanks and congrats!) made almost alone. And he had definitively had his reasons, why he made this how it is.
While I agree that FreeCAD has a lot of cool features and that Abdullah made an awesome work with the sketcher. And that commercial CADs also have very annoying stupid UI decision, FreeCAD is not perfect either, and refusing every and any improvement (because yes for everything I offered I got mostly negative comments. Even for the ARC SLOT tool which is totally and completely missing.)
abdullah wrote:Hello!
Could you please advise if there was a reason for making coincident and pointOnObject separate tools or if it was mostly because it was handled differently by the solver that they end up separated?
user1234 wrote: Sat Jan 22, 2022 11:51 pm tldr: merging constraints only for a few seconds (which i lost after create the objects and constraints) and new users makes no sense.
Small streams make big rivers.
user1234 wrote: Sat Jan 22, 2022 11:51 pm btw: this should not be the reason but, what will you do with old files?
Again I didn't said to delete the backend of both constraints, only the icon tool. So there isn't so much code that'd become obsolete.

Not thought-out... Yeah thanks.

Anyway I don't care keep it as is if you want, its not such a big deal. I didn't expected people to go crazy on this kind of discussion.
chrisb
Veteran
Posts: 53932
Joined: Tue Mar 17, 2015 9:14 am

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by chrisb »

I am rather unhappy with the tone this discussion has got. You should really listen to the arguments. It is not a good discussion if you just win, it is good if it leads to widely accepted improvement. Of course you propose things which you think are good, but you also should look around in the forum, into other discussions, especially those where sketches are discussed.

Some comments on your last post:
paddle wrote: Mon Jan 24, 2022 11:16 am A point to be concident to the infinite line makes sens.
May I qoute yourself :) :
Sorry what? It's just not understandable. "the coincident of a line"? What does that even mean?
Beside AGAIN my point was not to delete the different constraint symbols in the Task Constraints widget, just to merge the two TOOLS together to improve user-friendlyness.
I agree that it is definitely a must-have to be able to distinguish between these constraints (which by the way shows that they are indeed different). But I am not convinced that this is user friendly: you click the one and get the other?
My suggestion is not aimed at new CAD users. But not expert-freecad-users. For the average user of CAD software who comes from paid packages, this is the kind of thing that make life harder than needs to be. If you don't know the shortcuts by heart after 10 years of using freeCad, the fact that there are so many constraint tools is annoying. You have to find the correct icon, click it, go back to the sketch, get an error message because you did not select the correct one, go back try again and so on and so on.
It has nothing to do with shortcuts, I use them, but frequently I don't.
This sounds as if you haven't seen many sketches from other users. What you are advocating sounds like the awful srategy of "clicking until it becomes green". Actually it is not a plethora of icons we have. If you are serious about that, than it is the number of constraints which is the bottleneck. If you know what you are doing - and you really should know - then there is absolutely no misunderstanding possible between the coincidence and point-on-line icons.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Haavard
Posts: 217
Joined: Wed Feb 17, 2021 10:48 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by Haavard »

I must say i feel your frustration paddle. I was about to write a similar post last night, but disliked the negativity to this idea already so i didn't bother.

If i understand this suggestion correctly, the underlying functions for "Coincident" and "Point-on-object" will be there, only this tool will call the correct function for you dependent on if you select(ed) only points, or point(s) and an object.

The old functions will still be there, and the sketch icons will not change, only the toolbar will be simplified with one instead of two buttons.

Ignoring if this could work in practice, here are some points:
  • Easier to find the correct tool
  • Less thinking about which button to press, more about correctly constraining the sketch
  • Friendlier UI
  • Less cluttered toolbar
  • Sketches will look and stay the same
So why dismiss this idea so hard, and not even encourage paddle to give it a go? If he makes a pull request, we can test it and find out if it will work, and if not, it won't get merged. :?
User avatar
paddle
Veteran
Posts: 1392
Joined: Mon Feb 03, 2020 4:47 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by paddle »

chrisb wrote: Mon Jan 24, 2022 4:33 pm I am rather unhappy with the tone this discussion has got. You should really listen to the arguments. It is not a good discussion if you just win, it is good if it leads to widely accepted improvement. Of course you propose things which you think are good, but you also should look around in the forum, into other discussions, especially those where sketches are discussed.
I'm quite unhappy too. And I'm not the first to say nice things. @user1234
Beside even if my tone is not nice my reply comments on the arguments point by point so how do I not listen to the arguments?
And yes I'm not nice but I mostly mimicry most comments I got which were mostly negative. I mean have you seen comments I got on arcslot tool while it IS included in all the other CAD? I mean it's not like I ask you to do the job, no I do it for nothing and get only contempt.
chrisb wrote: Mon Jan 24, 2022 4:33 pm It has nothing to do with shortcuts, I use them, but frequently I don't.
This sounds as if you haven't seen many sketches from other users. What you are advocating sounds like the awful srategy of "clicking until it becomes green".
Actually it is not a plethora of icons we have. If you are serious about that, than it is the number of constraints which is the bottleneck. If you know what you are doing - and you really should know - then there is absolutely no misunderstanding possible between the coincidence and point-on-line icons.
I'm sorry but no I do not "click until it becomes green". I know what I'm doing and I want to do it fast because I work on pretty large projects. But the current constraint interface definitly bottleneck my speed. Of course it is because I don't know all the shortcuts. I understand that if I spent more time trying to learn them I'd get faster. But it stands that I'm using FreeCAD for years and still don't know the shortcuts. And I don't think I'm the only one. As you said yourself which seems to be the most expert don't use them all the time.

Obviously it is not this coincident/pointonobject suggestion which bottlenecks my speed. It's having to find the correct icon with the eyes, move the mouse to the correct icon, click it, then go back to click the geometries. It's not efficient. Which is why I made the constrain contextually tool. Which is also why I don't care about coincident and pointOnObject anymore because they're handled by this new tool.

From your comments I think you're maybe a teacher or an academic who don't really have to get a job done as fast as possible. But rather done it neatly taking the time necessary to get all the ducks in order in the proper fashion.
chrisb
Veteran
Posts: 53932
Joined: Tue Mar 17, 2015 9:14 am

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by chrisb »

The question is: optional or not. I think paddle didn't answer this yet and would rather convince everybody here that his workflow is better.
And if optional what woulkd be the default?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
paddle
Veteran
Posts: 1392
Joined: Mon Feb 03, 2020 4:47 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by paddle »

Haavard wrote: Mon Jan 24, 2022 5:11 pm I must say i feel your frustration paddle. I was about to write a similar post last night, but disliked the negativity to this idea already so i didn't bother.

If i understand this suggestion correctly, the underlying functions for "Coincident" and "Point-on-object" will be there, only this tool will call the correct function for you dependent on if you select(ed) only points, or point(s) and an object.

The old functions will still be there, and the sketch icons will not change, only the toolbar will be simplified with one instead of two buttons.

Ignoring if this could work in practice, here are some points:
  • Easier to find the correct tool
  • Less thinking about which button to press, more about correctly constraining the sketch
  • Friendlier UI
  • Less cluttered toolbar
  • Sketches will look and stay the same
So why dismiss this idea so hard, and not even encourage paddle to give it a go? If he makes a pull request, we can test it and find out if it will work, and if not, it won't get merged. :?
To be honest I don't understand. I have been thinking on it for a long time and the best I came up with is that Autocad and other commercial companies have employees which are asked to be active on freecad forum to hinder it's development by fussing around any good UI decision to keep it from improving. I mean if I was Fusion360 manager that's what I would do.
Alternatively they are people who like things square and neat and don't bother about productivity and UX. I guess what is optimal depends on the point of view. If I was a teacher and had to teach students how parametric CAD works and how to make a good sketch, I may not have the same point of view.

But I'm out of this discussion. Constrain Contextually handles both pointOnObject and Coincidence (and most other constraints really) automatically so it's a better solution than merging pointOnObject and Coincidence which was only a small step in the correct direction.
Last edited by paddle on Mon Jan 24, 2022 5:27 pm, edited 2 times in total.
User avatar
paddle
Veteran
Posts: 1392
Joined: Mon Feb 03, 2020 4:47 pm

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by paddle »

chrisb wrote: Mon Jan 24, 2022 5:21 pm The question is: optional or not. I think paddle didn't answer this yet and would rather convince everybody here that his workflow is better.
And if optional what woulkd be the default?
Yes it could be a setting in preference.
But I'm not doing that development. Neither actually, I'm out of this suggestion.
chrisb
Veteran
Posts: 53932
Joined: Tue Mar 17, 2015 9:14 am

Re: [Behaviour suggestion] Merge 'Coincident' and 'point on object'

Post by chrisb »

paddle wrote: Mon Jan 24, 2022 5:21 pm I have been thinking on it for a long time and the best I came up with is that Autocad and other commercial companies have employees which are asked to be active on freecad forum to hinder it's development by fussing around any good UI decision to keep it from improving. I mean if I was Fusion360 manager that's what I would do. Alternatively people who like things square and neat and don't bother about productivity and UX.
What an unfair comment! Here have very honourable helpers raised their voices, e.g. GeneFC, user1234, TheMarkster, openBrain, who have proven that they are willing and able to help others without any personal advantage.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply