I wonder if it would make sense to combine the yellow tools
FreeCAD_yellow_tools.png
and the red tools
FreeCAD_red_tools.png
(excluding the hole-tool) into one combined tool each.
I.e. the pad tool and the pocket tool work quite similar but of course with a different effect. One adds material while the other one reduces material.
I think these two tools could be combined into one tool by simply adding ONE more checkbox in the tool dialog. This would nicely reduce the number of tools in the toolbar.
One more checkbox in the tool dialog of these tools (add material / remove material) like the already existing (inverse, symmetric to a plane), and we get rid of 6 almost redundant buttons in the toolbar.
I think it even could be easily autodetected if it should add or remove material. In case there is material on one side of the sketch. If you pull it out of the material, you usually want to add material. If you push it in, you usually want to remove the material. So if there is no material in the direction you want to extrude, usually you might want to add material. In all other cases, you want to reduce material. Or, to put it in other words: Whenever material would be removed - propose the ‘remove material’ option. In all other cases propose to ‘add material’. In the few ambiguous cases where you want it the other way, you could manually change it by the checkbox.
This approach is used in Autodesk Inventor and Fusion 360. It makes sense but I’m not a big fan of it. I prefer the approach used by SolidWorks, CATIA and FreeCAD so separate tools for additive and subtractive operations. However, maybe we could introduce this as a preference so that users can choose the behavior they like the most (if it’s not too much work).
This suggestion would fit my way of thinking better so count me in as positive, but I suspect there are more users that like the current approach better. I haven’t used any other CAD software for 3D so it’s not about how I’m used to do.
Implementing this as a preference would be fine, but then there is the debate over which should be the default, and what audience does each setting best cater to?
Definitely additive mode, like in the aforementioned Autodesk software. There the software can even recognize that the direction is towards the existing material and switch to cutting mode. Overall, the following modes are available: join, cut, intersect, new body, new component. So there’s also a useful option to make the extrusion form a separate body instead of it being merged with the existing geometry.
That isn’t really what I meant though. If enabling a preference to have seperate additive/subtractive tools vs combined ones, which should be presented to the user in a new install as default. Regarding the behavior of a combined tool, ideally it would function more like similar tools in solidworks etc as you mention.
I guess that most users (especially the ones well familiar with FreeCAD) would prefer the current behavior to be the default setting. Those who like the Autodesk approach could change it.
Not incorporating new things as default is certainly less abrasive, however it is a double-edged sword because then new features/functions are left to obscurity regardless if it improves things for a majority of users or not. There is precedence for this dilemma, in cases of a major change in paradigm it is usually deemed better to just implement it and allow an option to revert back for those who don’t desire the change initially. There’s a bit of human psychology behind it, but you can read a brief explanation about this from the design/ux perspective here: https://lawsofux.com/jakobs-law/
Combining the additive/subtractive tools as proposed would have to be extremely well implemented to even be considered as a possible new default. I would argue that such an integration is not a simple task.
I agree. Maybe in the first implementation phase keep the default as it is, and when everything works and is well tested one could consider swapping the default in kind of a ‘facelift’ of the workbench. THEN many people will become aware of this ‘new’ feature, and we have these discussions again. And then the community can decide what they prefer to have as a default. Maybe in the next release, the default is returned back again.
Having both options would in any way help people from both different worlds (Inventor - SolidWorks, Catia) to transition more easily to FreeCAD.
I would argue that the link-branch implementation of this is quite incomplete however. A combo-box is just insufficient by itself, unless the functionality has been expanded since the last time I used linkdaily.
I don’t remember, about a year ago. What was incomplete is that the combo box was how you switched functionality. Which is less efficient than just having different buttons on the toolbar. It just wasn’t a good solution by itself.
Edit: Just checked the 2024.01.01 appimage. Still a bad implementation and is worse to use than the individual tools.
Combo box is not always a good solution, this requires a click on it to open the list, then choose the right option then click on it to validate the option… It’s sometimes more “difficult” than having 2 separate functions. Look in the “Hole” function the number of combo-boxes is a pittance moreover if the last validated choice does not remain in memory for the next time…
My opinion as NX user - there are combined powerful tools everywhere and it is not the best idea. The menus and commands are usually long and complicated. Then You start think how to make parts of the menus possible to hide and show, how to organize a lot of submenus, what is more important… A lot of codding and UI work, a lot of clics of mouse. And anger of experienced users when You change something they know years without thinking and now they have to pay attention not to model, but to menus… Less is sometimes more, health portion of conservatism is good.
If You think how to make powerful swis knife tools, make a new ones. Let the “old ones” as they are or let them live and develop in their form more tools more specialized and more simple each one. Every user could personalize his own menus - what tools can see and use and what tools accessible just from menus.
There are more important parts and tools for developers focus in my opinion.