It suffers from too many "workbenches," some of which appear to be redundant or dated. You never know whether structures created by one are "compatible" with the M.O. of another (like "Part" vs. "Part Design").
And it presents nonsensical problems, like offering to create a sketch on the face of an object and then complaining that the sketch doesn't belong to any object. So you have to manually drag it under the object in the treeview. So gallingly DUMB.
Despite all that, I will wrestle with its ineptitude before giving Autodesk a penny. I get stuff done with it and respect those who give their time to develop it.
Some of the basics aren't immediately obvious or even hinted at very well for new users, but the "problems" that come up are consistent with its own editing model.
> complaining that the sketch doesn't belong to any object
The sketch is by default attached to the "active body". Active Body is a simple, but important concept to understand. Any operation you do, including adding a sketch, is applied to what is designated as the active body. You designate the active body by right-clicking on the desired body in the object pane.
> It suffers from too many "workbenches"
Another understandably common source of confusion. There's the ever-confusing Part and Part Design workbenches.
I think it's best to just ignore Part and use Part Design whenever possible. Part lets you do operations at a more granular level, but Part Design provides a lot more QOL enhancements and is more intuitive. For the vast majority of things, Part Design is more than capable. I would only use Part workbench when absolutely necessary.
You probably understand all of this already. It's directed more towards the reader. I feel the need to defend FC when certain accusations are brought up. It's immensely powerful, capable, and usable. In my case, I can work very rapidly with it - though it's taken some time to arrive here. The project deserves more than just aspersions.
Thanks for the reply. I like FC a lot and use it frequently! And yes, I pretty much use Part Design exclusively... except when I'm importing a shape from an SVG. Then I have to use a combination of workbenches.
The combo of tracing a bitmap (from a scanned drawing) with Inkscape and then saving the result as SVG to bring into FreeCAD has been a frequent workflow for me. It generally works very well.
To clarify about the "active body" though: This problem occurs even when there's only one active body and the shape upon which you've supposedly draw the sketch is part of it. So why is FC complaining?
I can't tell for sure without knowing exactly what's happening, but one reason is that if you create a sketch from the Sketcher workbench, it will not be added to the active body.
If you create the sketch from the Part Design workbench, then it will be added to the active body.
A Body is specifically a Part Design concept, and FC doesn't presume you'll be working in PD, so this makes sense in a way - it works on the presumption that the Sketcher workbench works with other workbenches and not just PD specifically.
One thing to note is that creating sketches from Sketcher and PD is different. Sketcher offers attachment options to faces, edges, etc., while PD only offers to attach the sketch to base plane (XY, XZ, or YZ).
There is a good reason for this also. The reason is that in designing parts, especially complex parts, it is highly discouraged to use faces or edges (i.e., features) as attachment points because it makes your model very brittle against changes.
This is more of a general CAD philosophy than a FC thing. It's better to set where a sketch attaches based on variable values. For example, if you have a cylinder with a height 20 and you want to attach a box to the top of the cylinder - rather than attaching to the top face of the cylinder, it's better to create a variable h=20, and set the cylinder to height h, and set the box's z-value also to h.
In FC, I use VarSets for this. I used to use the Spreadsheet workbench, but found it clumsy.
Thanks, that's useful info and something I've wondered about.
Your comment also serves as an excellent illustration of what's "wrong" with FreeCAD, though.
"One thing to note is that creating sketches from Sketcher and PD is different. Sketcher offers attachment options to faces, edges, etc., while PD only offers to attach the sketch to base plane (XY, XZ, or YZ)."
OK, but I would argue that sketching functionality should still be centralized. So if you have a body or some appropriate object selected and invoke the sketcher (or vice versa), attachment to faces, edges, etc. will be enabled. Otherwise it's disabled.
That's standard GUI, and it's well-understood that greying something out tells the user that some condition isn't met. But he still learns that the option exists and where it resides.
"In FC, I use VarSets for this. I used to use the Spreadsheet workbench, but found it clumsy."
Thanks for the tip. I've been meaning to tackle spreadsheets as a means to resize stuff (another pain point with seemingly many "solutions" in FreeCAD).
And it presents nonsensical problems, like offering to create a sketch on the face of an object and then complaining that the sketch doesn't belong to any object. So you have to manually drag it under the object in the treeview. So gallingly DUMB.
Despite all that, I will wrestle with its ineptitude before giving Autodesk a penny. I get stuff done with it and respect those who give their time to develop it.