TL;DR: I tried lots of CAD stuff with an eye towards someday being able to commercialize designs. F360 would be great if I could trust Autodesk. Solid Edge, Solidworks, and Onshape all have issues too. I want to make myself like FreeCAD. Some other options like Alibre are interesting, and many get weeeeird.
I don’t make particularly sophisticated designs, but I’m eager to learn, and I have delusions that I might one day stumble across a design that once fabricated could end up making me a few bucks (Narrator: he was mistaken). I’m certainly not there yet, but my other hobby is being a cheap-ass and a contrarian, so for the last few weeks I’ve been hunting for every weird free CAD program I can find, plus one weird but heavily discounted one, plus several free trials. Lately, I’ve been making my go-to quickie design to test basic part functionality in a lot of different programs, which I will discuss, but as a mostly-former lawyer, I’ve also been thinking about license terms and paths to small-scale commercialization. Haven’t actually pulled the trigger yet on paying for anything, with one exception because it barely counts. Notably missing will be Code-to-CAD options like OpenSCAD. I have a couple of them, and I have dabbled in PHP, Python, Pascal, and BASIC over the decades, but my brain just doesn’t “see” in code.
The sample part is generally along these lines: a rectangle, ellipse, and circle, trimmed to be one sketch, one corner with a 2D fillet, then extruded. After, I put a fillet on the top surface and a chamfer on the bottom. Then I punch a hole through the side and fillet and/or chamfer the openings. This does a helpful number of basic things in very little time. If 2d is constraint based, it shows me how those work. I also see how you set up a working plane on a face and how aggressive the filleting can be, particularly where the ellipsoids meet the rectangle at a rather sharp angle. Basically, it tells me, “Can this program be used at all for basic design for 3D printing?” All very newbie and idiosyncratic, but maybe it will help someone and spur discussion.
So, without further ado, here are some thoughts:
- Big time (by hobbyist standards):
Fusion 360: Parametric. Loads slow, but it works. The part designs fine. Ten part limit could easily become annoying if I start doing assemblies, but for the moment it’s a rather fair compromise, since a simple toggle reactivates a file. Filleting is really robust for the curves; it tries to accommodate crazy design choices. I kind of hate how much I like it, because I hate the feature erosion, and the price creep to avoid that, that Autodesk has been doing. Still, as subscriptions go it’s not terrible at the $400-$600/year mark. That raises another point, which is that it would be one of the easiest to navigate a hobby to side-hustle (“H2SH”) transition, since the price is not insane and the $1000 revenue limit on the free tier is chintzy but exists. It also works almost perfectly with the serial port(!) Spaceball I bought off ebay, with only button customization no longer working.
Solid Edge Community Edition: Parametric. The interface does some unintuitive things compared to F360, but after a bit of wrestling, it started to click, and there’s a search box for tools; that’s actually super thoughtful. Ultimately, the part designed fine, and Siemens’ strategy to nerf is a little different than Autodesk’s. Instead of removing features, they simply refuse to let you open CE version files in the commercial version, and I believe the opposite way permanently converts that copy of the big-boy file. The other issue here is the licensing. There is no ramp-up like with F360. You make money, you need commercial. That said, the subscription is pricy at ~$1000us per year but not insane.
Solidworks Maker Edition: Parametric. I HAVE NOT TRIED IT YET. I assume it can do everything I would want and more. The Maker edition is not terribly priced, and I believe the Titans of CNC deal gets it down to around $50 a year versus the $100 regular price. The old EAA discount is not as good these days, I understand. There are a few things holding me back. First, gotta pay up front, as I understand the fully online version is kind of crap, but as far as I can tell that’s what the free trial gets you. Second, I gather the 3dExperience Licensing portal leverages a robust but non-intuitive commercial PDM system, so even logging in and launching the desktop version is challenging with the current products, and people seem to universally despise it. Third, it seems like Dassault has no clear strategy for this market segment and the version could go away, which is a problem because, fourth, there is a huge donut hole in the licensing scheme. Maker edition is super cheap, and actually has a fairly generous H2SH cushion of $2000 profit. I am not sure I’d ever get past that even if I did accidentally make something a few people thought was cool, but if one were to manage it, there is nowhere to go except apply for the startup program, which requires legal formalities. The next step up is just the full, multi-thousand/year commercial license. That tends to leave it less desirable than SE or F360, for this particular scenario.
OnShape: Parametric and online. I want to like it. The part designed pretty well actually, though it gave up on compound fillets much quicker than F360 or SE, but it’s certainly usable. The online only part is potentially annoying, but I’m not doing CAD at a cabin in the mountains (some do… much respect), but it’s also an advantage, as this leaves OnShape working perfectly in Linux in this notoriously Windows-centric category of software. The way they have the full screen browser window actually looks a lot like a “real” app. I found it at least as responsive as F360. The bigger issue here is, again, pricing and licensing. Free is great; I don’t love that the designs are public, but whatever; I’m much more likely to use CAD to make a thing worth selling than a file worth selling. The licensing problem is that while I am barred from commercially using my files, by the terms of use, NO ONE ELSE IS. They specifically grant users the right to do anything they want with other people’s files, including sell them. It’s kinda bullshit, actually, and I’ve had a polite but unproductive exchange with their legal department about it. Pricing-wise, it’s not quite Solidworks, but there’s a donut hole in their market segmentation; for a less mature product than SE, you have to jump straight from free to $1500/year.
NX and Illustrator and Creo Parametric. Didn’t try them. Few/any license discounts, and it’s clear that the corporate parents view other offerings as filling this niche.
- The “B” team
FreeCAD: Parametric and open source. First off, I’m better with it than I was even a few weeks ago, and to a certain extent, it should simply BE the answer. It’s free for any use and it’s a proper parametric modeler. It works as well on my Kubuntu laptop as it does on my Windows desktop. As my understanding has increased, I’m more aware of why it does certain things, and what an impressive piece of software it is to work at all comparably to some of the commercial packages. I haven’t personally hit a wall with topological naming or had any significant crashes, but I’m still kind of playing and not working and reworking any projects. The sample part designed reasonably easily, but similar to OnShape it’s more hesitant about balls-to-the-wall fillets, giving up as soon as any two edges’ fillets touch (edit: anywhere except the expected vertex, that is). FreeCAD is more persnickety about sketches and constraints, though less than I used to think. Overall there is still a general sense of “We’ve only just barely got this thing holding together, so don’t get cute.” It “enforces good design” by not working well if you don’t learn its definition of good design. There are also still a lot of QoL issues with the GUI and no real attempt to bring in influences and widgets from direct modeling. FreeCAD is pure of heart and pure of thought, but I’m not sure I’m quite there, though I can at least imagine it now, and I will never not have it installed. One additional plus, a simple Serial-USB adapter is enough to get the eBay Spaceball working on linux.
Alibre Design: Parametric. I’ve just about wrapped up my free trial, and while it’s got its own quirks, I like it. I mostly used Atom, the lowest tier, and while the interface looks a little dated, it’s a sort of “Clean” dated, and it’s fine. The sketching and extruding works fine. Like FreeCAD, it divides additive from subtractive operations, but again, that’s not a deal breaker. Subscription prices are pretty reasonable, which is good, because while Atom3D is nice and extremely cheap at $150 permanent with no updates ($200 with one year’s worth) or $100/year, it lacks all Boolean operations. You absolutely have to figure out a way to get your sketch extruded or revolved to get the shape you want. Maybe I’ve played with direct modelers too long, but my goodness that’s a beatdown. Luckily, the next step up is still fairly reasonable at $700 permanent ($350 for 1yr updates) or $300 yearly subscription, and it includes booleans, some direct modeling, and quite a few other features. This one is kind of a contender, but the question is always, “how much better is it than FreeCAD?” Also, there is no free plan. Trial, then pay or delete.
Shapr3D: Direct for now, Parametric in beta. I only played around in the non-beta for a bit, as I already have a direct modeler. The parametric constraints are a little hit and miss, and there are still odd little incompletions in an otherwise polished app. For instance, 2D fillets must be done manually with arc and trim. Still, the UI has evolved nicely out of its iPad origins and the organization on screen is pretty nice. The iOS heritage also shows with the pricing, where the free tier is completely hobbled by not even exporting usable STLs, but the subscription is pretty modestly priced at $300/year. One to watch for desktop, and probably already a good option if you work on iOS or prefer direct modeling.
Plasticity: Direct (and proud!), has Linux version. I let my free trial expire without robustly testing it, but it was sort of exactly what is claims to be. A direct modeler that works a lot like Blender and is more than happy to fillet the hell out of anything. I understand a parametric history tree and constraints-based drafting are not really part of the roadmap, so that direct modeling concept would need to be what you’re after. It’s also a one-man show, so burnout or taking a “real job” is a distinct possibility, but the price is good at $150 for a permanent license with a year of updates.
(EDIT) Rhino: I didn’t try, but probably should have. A bit more expensive than Alibre or BricsCAD, but permanent licenses that don’t price out small business are available.
- Also-rans
TinkerCAD: Direct and different, online. You CAN do more with it than people like to imply, but the paradigm of groups and solids and holes is way weird compared to mainstream CAD software. Still, it’s really intuitive to those coming from some other background. Woodworking for instance. It’s basically, “Here is a thing. I can glue it to other things. I can also make holes in things.” The alignment and cloning options remind me a little bit of apps like Inkscape, and that’s not necessarily a bad thing either, but it’s not quite scalable. Also no built-in fillets and chamfers, and that’s really what pushed my out of its loving embrace.
SolveSpace: Parametric and open-source. Imagine if Freecad were distilled down to its part design workbench, and equipped with literally the bare minimum of tools to make an arbitrary solid, its own utterly unique (AFAIK) paradigm on how to interface with things, and with barebones presentation, yet somehow the whole was more than the sum of its parts. Following along with a SolveSpace tutorial is actually kind of fun. If they figure out a way to shoehorn fillets and chamfers in, it could be a real factor in the hobbyist space. Using construction geometry and booleans to soften every single edge is not my idea of productivity, however (see also TinkerCAD).
Designspark Mechanical: Direct Modeling. Aww, man, I wanted so much to like this one, and I guess in some ways I still do, but it can be frustrating. It’s a downscaled version of Ansys Spaceclaim, probably the best known professional app that’s specifically for Direct Modeling. The free tier is licensed for commercial use, which is extremely rare. The only thing is, they have absolutely nerfed it as far as interoperability. You can import absolutely nothing CAD-native that isn’t from Designspark, and while you can export printable STLs, that’s about it. You also can’t mirror features, which depnding on workflow might double your work. Now, on the flip side, the next tier up is a very reasonable $145/year, and it opens up the import/export and mirror functions. The other thing is that being designed as a direct modeler, most of the traditional functions are bundled up into the push/pull tool, and it can feel a bit claustrophobic; you also have to remember to space/tab into your measurement, or it will just assume you want to wing it. Parametric modeling is not quite the end-all be-all for the lone wolf designer doing one-offs that it would be for a production shop, but I’m not even sure DSM is top tier at that. For decent commercial software, though, it’s quite cheap, and poking around the forums, it seems like you’d be fine to buy a single month of subscription to mess with your parts, since whatever it allowed you to do in the free tier is already fine to use commercially. Finally, there’s a new feature for constraint-based 2D sketching, but those sketches are still consumed (i.e. they are integrated in as the edges of the extrusion and can no longer be edited once in 3D). This is a half measure, but with some forethought and careful saving/version control, it could get you halfway to a parametric modeler.
BricsCAD: Parametric. Okay, I admit it, I had an initial impression that Alibre was easier to use than this fork of an old AutoCAD (though I understand it’s the nicest of such forks, and better than the various IntelliCAD packages), so I let the free trial sit there until it expired and now I only have BricsCAD Shape. BricsCAD looked fine, and critically it has a Linux version and offers perpetual licensing, but the licenses and subscriptions are all 50% or so more than equivalents from Alibre.
- Off the beaten path
BricsCAD Shape: Direct, should have Linux version, but I haven’t checked. Meant to take on Sketchup, and to be the free inducement to download the entire BricsCAD package. There’s some power left here, as it’s clearly just BricsCAD with various features turned off, but man I was having trouble doing sketch and extrude modeling, which is starting to feel more comfortable than placing primitives. You can do good stuff with this, but do more than the BIM-light sketchup clone they have marketed it as, there are some serious teeth to be pulled, including some stuff that ought to be simple requiring the console bar. You also have to do some things manually, like rejoin your lines into a poly-line that can be extruded into a solid. There’s some there there, but frankly for general purpose modeling FreeCAD is a lot better Like many apps, it doesn’t like to go crazy on compound fillets with acute angles, crapping out after a very gentle blend.
Salome Shaper/Open Cascade CADBuilder: Parametric and Open source. So here’s one. It is not strictly a “CAD” program so much as it is the parts bench of a Finite Element Analysis package. I’m a liberal arts major, but I gather that it converts the part into a mesh (like an STL) and does various science shit with it (okay, I know a little more than that, but not much). So, you do need decent models for FEA, and a few years ago Salome rolled out a fully parametric part designer. It’s comparable to the Part Design workbench in FreeCAD, and I think the default theme and icons look a little nicer, but it clearly shares a lot of code and basically it acts exactly like FreeCAD, except without the drawing and fabrication features, and it’s a ginormous download that’s a pain in the ass to install on Linux (easier on Windows). If you have it for some other reason, you should feel good about it, as it’s not half-bad, but there’s just not much point in getting it specifically to design for 3D printing. Oh, and then OpenCascade, the company that makes the 3d kernel used in FreeCAD, KiCAD, Salome, etc., lifted the Shaper module, half-assedly threw a ribbon interface on it, and compiled it for Windows as a proof of concept/sales tool that they controlled. It’s okay, because it is Salome Shaper, but it’s pointless and even more pointlessly, it’s Windows only.
Creo Elements/Direct Modeling Express: Direct. The red-headed stepchild at Creo. It’s free for any use, easier to use than BricsCAD shape, and makes an okay part. It also hasn’t been updated in 4 years, has extremely limited export options, and I’m pretty sure they literally turned off the license server, so you can only use it by waiting for the request to time-out, ignoring the suggestion you might be behind a proxy, then clicking a button to open a webpage that gives you a 72-hour license key. I get the feeling it’s on borrowed time. Points for still supporting the serial Spaceball. :-)
- Just a little bit of what dafuq
NaroCAD: Parametric, open source. Development stopped, doesn’t really work at all, but that doesn’t stop some asshole from trying to sell copies on eBay.
SelfCAD: Direct, online option. I just can’t figure what they’re offering that is better than a million different freemium models. Clumsy interface, but too weird to appeal to the total beginner. The only real benefit I see is that its free tier allows commercial use and its paid tiers are fairly cheap, though I’d grab DesignSpark or Alibre over this any day.
Form Z Free: Direct. No fillets or chamfers in free version. Full version is old fashioned and expensive. Seems like it’s a small time operation just trying to hang onto its customer base. BricsCAD Shape and Creo Express are way better.
BRLCAD: Direct, CSG modeling, open source. I noped out after about 5 minutes. I am not a tormented E4 fresh out of Army drafting school with a head full of lies about how I’m learning valuable work skills, so I don’t have to endure this.
gCAD3D: Is this real life?
BeckerCAD 14 - 3D Pro: Direct. Okay, so finally, here is the one I DID buy, for the whopping sum of $22, from a German shovelware site. I am pretty sure it was accidentally on sale for the price normally used for the non “Pro” version or maybe even the 2D version, and it’s since gone back up to an unrecommendable $130 or so. The main claim to fame is that a couple of versions back, it was in a single HumbleBundle, and that led to a few reddit posts and one dude reviewing it on his blog. Here’s what I can glean from the interwebs, including Goggle translating German CAD forums. It seems that years and years ago, there was a 2D CAD program that was modestly successful in Germany, but eventually it was outcompeted. The branding was scooped up by the shovelware company, MuT, but they needed working software to sell. So it seems they licensed an AutoCAD-like software called CADdy++, developed by a different small German company. The 2D module became BeckerCAD 2D, the full “Beginner” version of CADdy++ became 3D pro, and a few options were turned off to create the “3D”. It’s old, and it’s quirky AF, but it uses ACIS, and the non-beginner tiers of CADdy++ are fully parametric, so there are “good bones” buried in the poorly translated menus. It uses a weird paradigm of of box-selecting everything with various built in filters, like there is the button for select-add, the button for select-remove, and the button for select-toggle, all in pride of place on the toolbar. Sketches are not constrained, though you can label them for actual drawing purposes with various constraints. Sketches are not tied to the solids after extrusion, but they also aren’t consumed, so they can be revisited if the solid needs to be redone. The main place it shows its age/questionable provenance is with camera navigation, which best I can tell requires a hotkey, which I’ve mapped to a spare mouse button. Export options aren’t great, but STL and various other meshes suitable for printing are in there, and you can export SAT files, which with one add-on, FreeCAD can import and save to STEP. Import is worse, though, where SAT is the only non-mesh CAD format supported, and writing those is a little trickier than reading them. Still, it’s certainly been worth what I paid.
eMachineshop “CAD”: Basically an interactive order form, but I did learn a little about sheet metal forming.
I can believe you missed openSCAD off the list! Most early 3d printers were designed in it.
Good work otherwise. 👍
Notably missing will be Code-to-CAD options like OpenSCAD. I have a couple of them, and I have dabbled in PHP, Python, Pascal, and BASIC over the decades, but my brain just doesn’t “see” in code.
I’m not sure I’d call that “missed”. Rather “left out on purpose”.
I’d say its not so much “code” as “markup language”. Less like PHP, Python, etc and more like html and json. It does require using the keyboard to write out the objects without being able to manipulate the object with the mouse and visual tools, so maybe thats what he was meaning by code
“Does loops and conditionals” == “is code”, at least in my book, but my book is old and majored in English Lit. ;-)
Admittedly, OpenSCAD is not really robust as a language, hence its forks and competitors.
I think the issue is that the “code to shape” way of designing things is just different than the CAD way of doing things. I’m the opposite of the OP in that several of the designs I have created from scratch, I have done using OpenSCAD specifically because that is the way my brain works,. I can use OpenSCAD and just math my way to most of the shapes I want (I love me some parabolic curves). There is also a fairly robust community of people sharing libraries for it, so I can leverage those to do complex stuff, without having to figure it out myself. I also find CAD programs confusing, though that’s likely down to a lack of experience. I have FreeCAD installed and some day I might actually learn to use it, but math and code is so comfy.
I noted OpenSCAD and its cousins in passing. I think they’re a different beast altogether, with a whole universe of “this one can’t natively do ‘X’,” and “that one doesn’t play nice with my IDE.” The main thing though, is that while I know enough about coding to follow an OpenSCAD or CADQuery “program,” I don’t really work that way in anything like an efficient manner. They’re undoubtedly powerful and flexible in the right hands, though. Somebody else should write them all up. :-)
There are also still a lot of QoL issues with the GUI and no real attempt to bring in influences and widgets from direct modeling. FreeCAD is pure of heart and pure of thought, but I’m not sure I’m quite there, though I can at least imagine it now
fyi, there is now ondsel
based on FreeCAD, their release introduction reads:So our thinking was: we should focus on a polished user experience and features that are essential to professional use. Let’s build something we feel good about recommending it to someone working on a deadline. And let’s build a service for vaulting and collaboration.
…
Our primary objective is to provide polish and sorely missing features — that’s a large part of the added value. We’ve made big and small changes in the upstream project, but the four vital projects for us have been toponaming, integrated assembly workbench, UX/UI, and collaboration.
So working exactly on what most consider FreeCADs weaknesses I’d say
Unfortunately toponaming is still not done for either. That will be a huge leap in usefulness for me.
(fixes models breaking when their topology changes)The topological naming problem is handled quite well by realthunder’s FreeCAD Link Branch fork, and his Assembly3 workbench is an acceptable, albeit imperfect method of making assemblies when combined with his fork. Assembly3 can run on upstream FreeCAD but I found it to work way less consistently due to issues like the topological naming problem breaking links in the assemblies.
Nonetheless the added features by Ondsel look interesting. I’d consider switching once upstream FreeCAD implements a solution to the topological naming problem, but like you mentioned, toponaming is such a huge leap in usefulness that I’m hesitant to switch to another FreeCAD version that doesn’t handle it well.
From what I hear, applying the concepts in RT’s fix is the biggest project for the FreeCAD dev team right now, so I’m hoping we’re finally getting close to a version that’s a little more robust. What other advantages does the RT fork have over the main branch for someone who’s working with single parts or tiny assemblies?
so I’m hoping we’re finally getting close to a version that’s a little more robust.
Well, the Ondsel team which (claims to? I don’t know) work closely with FreeCAD hoped in October 23 to maybe get Topological Naming done by February 2024 (FOSDEM 2024 is 03rd and 4th of February
We think that these goals are within reach and it should be possible to release FreeCAD 1.0 in time for the next FOSDEM. Here’s our thinking behind this goal.
Since FreeCAD still seems to be in the beginning stages of phase 3, I doubt they’ll make that target.
Just recently I listened to a very interesting interview of Brad Collette, the founder of ondsel. You can find it here https://open.spotify.com/episode/2TwCcFWC8VwQ4ctjBTZ0Xd?si=pNjFQOI0RCe0v1MU47mwpg
and here https://shows.acast.com/ohm-podcast/episodes/ep-12-brad-cto-of-ondsel
Going to have to try it! The LGPL gives them a lot of flexibility to do what they want, but I’m guessing the existence of FreeCAD will prevent them from locking it down too much.
This is an amazing writeup, and solidifies me on continuing to use FreeCAD. Thanks.
I mean, the license is right, the functionality for single parts is there, and the workarounds are known. The issues are large assemblies, slower workflow, possibly stability, and weird UI, but I think if you’ve broken through the wall with it, there’s little reason to change until you can no longer do what you want, whether that’s large assemblies, paid freelance drafting (with customer expectations as to file format), or something else.
You can absolutely do assemblies in FreeCAD, both with its built in tools (which are a little obtuse, as usual) but also with various FOSS add-on workbenches.
I use “Assembly 4,” personally, for no particular reason other than it’s the first one the plugin manager suggested and I figured out how to make it do what I wanted pretty quickly. I designed this knife in FreeCAD and it is indeed an assembly with all the pivots and screws and so on “working” in virtual space. It probably helped my design process in that I could already visualize with pretty much 100% accuracy exactly how I wanted the design to go ahead of time, and I’m not exactly a stranger to how balisongs go together.
The thing that drove me bonkers about assemblies in FreeCAD, and I guess FreeCAD parts in general, is that if you place a center point around which to pivot a part that isn’t the sketch axis, it doesn’t fucking stay there once you exit the properties panel. So I just don’t do that…
Now try that with a design that has hundreds of parts in the final assembly and try making 100 design changes as you go along. FreeCAD and it’s assembly workbenches do best with a very limited number of parts in the assembly and even fewer design changes.
I haven’t used all of the assembly workbenches but I’ve found Assembly3 to be pretty robust to design changes if you use realthunder’s Link Stable fork of FreeCAD. I wouldn’t be surprised if all of the assembly workbenches would benefit from toponaming fixes, though I don’t know how they all work.
Same here. Useful breakdown on tools, several of which I’ve used. I’ve invested a lot of time in FreeCAD thus far, and as I’ve learned how to do things with the right workflow to prevent errors it’s really quite nice and very powerful - and it will continue to only get better with each release. Fortunately, there are great videos and posts when I do get stuck. I can’t say enough good things about MangoJellys YouTube videos in learning how to do things the FreeCAD way - probably half of FreeCAD I’d never learn to use by just clicking around. I intend to continue down this road too, and have donated to the FreeCAD project and supported creators versus paying for commercial software. No regrets!
i had a weird issue just today in FreeCAD where the dimensions shifted when i exported to STL.I ended up having to jimmy the dimensions around a bit, export to stl, open the stl in FreeCAD and measure the distance, repeat until the numbers were close enough. It isn’t enough to make me stop using it, and it’s only happened with the one design, but it was weird.
I used SketchUp growing up and it ruined my brain
Now it’s a warped husk of what it used to be so all I can do is cry while staring at FreeCAD tutorials until I give up and smash together a barely usable STL in OpenSCAD or TinkerCAD
send help
For straight up ease of use, maybe try the current Direct Modeling version of Shapr3D (i,e, not the Beta). The free tier is useless for printing anything, but it’s a great way to see if the workflow fits you. DS Mechanical, limited as it is, is also free and pretty usable if you have literally no import/export needs from other software, and its STLs are fine to print. Both are a little more intuitive for non-CAD people. Oddly enough, the big thing missing in the FOSS space is a decent direct modeler_. It’s kind of a shame, too, since so much hobbyist use has minimal need for strict constraints, collaboration tools, or parametric history.
Now, because high quality direct modelers are a bit niche, and often use sketches anyway, it makes sense to get a basic grasp on sketch-based CAD, whether fully parametric or not. The paradigm that was so different for me to get used to is that idea of “sketch and extrude”. You don’t just plop down a cube or sphere.
Instead, you go into 2D mode, select a “workplane” which (you often start with the generic XY plane), and you draw the cross section of your solid. Then you use extrude or pull or pad or whatever the app calls it; this adds the third dimension to make it a solid. If you wanted a cube, draw a square of n mm, then extrude to the same height. Oh crap! That needed to be a rectangle? In a parametric modeler, go back to the sketch and change it, then (if needed) do the same for the extrusion’s height. For various flavors of direct modelers, you can pull that face, or click the sides to change the size, just do it over, or add the extra volume and boolean them together. The next big concept is placing workplanes. There’s typically some button that pulls up a tool that lets you do your sketch directly on a face of the solids you already have (or on an “arbitrary” plane placed exactly in line with a face… NO TOPOLOGICAL ISSUE HERE!) Once you do THAT, you can extrude down into the old solid to cut stuff out of it (sometimes this will need to be done with booleans, but often the apps have a “remove shit” set of buttons or are smart enough to guess what you meant), or extrude out from the old solid to glom stuff onto it. Fillets and chamfers, when supported, usually work by selecting one or more edges and telling the app to calculate them away at a certain radius/distance.
Wow, thanks for the incredibly broad write up! That’s a crazy number of tools to try.
FreeCAD:
giving up as soon as any two edges’ fillets touch
I haven’t quite had that issue with FreeCAD; an ordinary corner works fine. Where I’ve had that issue is when the fillet is large relative to the edge sizes though, so there are definitely failure cases.
not working well if you don’t learn its definition of good design
This is so incredibly true. I’ve had to restart projects because I didn’t realize how I’d need to approach them to get FreeCAD to allow me to do what I wanted to do. That’s probably the biggest issue I have with it: you really have to know how it wants things done, and often you won’t learn that til you’ve tried, failed, and watched a couple YouTube videos from more experienced users. Fortunately, after a few projects I’ve gotten to the point where I can usually get relatively simple designs right the first time…but I have no doubt I’ll still sometimes have to start over or take big steps backward to change my approach to a problem.
Others have mentioned OpenSCAD and that’s what I started with years ago; it’s fine for simple things (or fractals/programmatically specified forms) but when designing something with more complexity I find it very difficult to manage, compared to just directly drawing what I want and then constraining it appropriately.
My little part is sort of a low grade torture test for fillets, but I am not very scientific with controlling it or looking for alternatives. It usually seems to be the ellipse sticking out the side like the Florida peninsula that gives the kernels/apps issues. It doesn’t take a super huge fillet to get to a point where the face gets too closed off and the calculation refuses to complete. Some might do better with blending one edge at a time. In the real world, most of these apps could get most single parts modeled acceptably, one way or another. To a certain extent I’m splitting hairs, but I do like to see what they can handle. I’ve only had reason to loft parts a couple of times, but I can see that being an entirely new can of worms to explore.
That’s a crazy number of tools to try.
Some in more depth than others, LOL. YMMV.
OpenSCAD is boss for repeating patterns of arbitrary dimensions and complexity, which is something that FreeCAD sucks at. Unless there is a tool in a workbench somewhere I haven’t discovered yet, which I guess is possible, as far as I can tell there is no way to repeat a feature in two dimensions, i.e. “make X of these holes marching down in a row, and then make Y number of rows of them.” And all that sort of thing.
You can repeat a feature, yes, but in one dimension only. And you can’t repeat a repeat.
Edit: Actually, I’m eating my words here. You can, but it’s (I’m waiting for the duck to drop) quite possibly the least discoverable feature possible. I still like OpenSCAD for its ability to just have a couple of variables, and easily say “make this X units wide and Y units tall,” compile.
Does the OpenSCAD workbench count?! 🤣
It does only if you have all the libraries and so forth installed to actually make it functional, which I don’t… I determined it was easier to just download and install OpenSCAD itself since it’s FOSS anyway.
FreeCAD is more persnickety about sketches and constraints, though less than I used to think.
In fact, it is not at all.
So, when I was starting with FreeCAD I kept getting wrapped up in all the tutorials harping on about sᴋᴇᴛᴄʜᴇs ᴀʙsᴏʟᴜᴛᴇʟʏ ᴍᴜsᴛ ʙᴇ ғᴜʟʟʏ ᴄᴏɴsᴛʀᴀɪɴᴇᴅ and tied myself in Gordian knots trying to get splines and curves and arbitrary shapes constrained in such a way that the Solver was happy with it, without necessarily understanding what I was doing other than making all the lines green. And of course this made my sketches impossible to comprehend later.
Well, here’s the thing. There is no need whatsoever to actually contain any part of any sketch. At all. None.
Every point and line in a sketch has internal coordinates based on where you plonk them on the plane (which are visible when you are e.g. dragging a node around) and that’s where those features go. And that’s where they’ll stay. Even if you didn’t constrain them. So you can create a totally unconstrained sketch and as long as you’re fine with the final dimensions just being whatever, you can just pad it or pocket it or pipe it or do whatever operation you were going to do with it. If for your purposes you’re okay with “close enough” (I do this for splines all the time) then you just don’t have to fuck with it. Or you can make just your critical dimensions constrained and leave the rest be wherever it is and looks right.
Yeah, that is sort of what I’ve been noticing, and also with my experience initially wrapping my head around constraint-based drafting. I think the thing I’m still seeing though is that FreeCAD fails less gracefully than some of the commercial packages if you do things that are difficult to constrain, and in brief experimenting it seemed to be less willing to autoconstrain while drafting, particularly with easily changed dimensional constraints. I still feel comfortable saying it’s a bit “persnickety,” but agree that it’s not the hell I used to think it was.
Failing gracefully is what is pretty much the major difference between FreeCAD and and commercial CAD. All CAD programs will fail in use at sometime, you can certainly break any of them while working with them. I know I have if I create a complex enough design.
But a more graceful failure is less likely to cause the end user who might not be fully up on the software a major issue beyond a “Nope, ain’t doing that operation for you”. FreeCAD isn’t quite there yet and it will a while before they do. But there is hope with the new consortium now leading the way. There is a roadmap and the adults in the room are getting the Devs to eat their broccoli and fix long standing issues - looking at you topological naming issue…
There is a roadmap and the adults in the room are getting the Devs to eat their broccoli and fix long standing issues - looking at you topological naming issue.
To be fair, you can’t really call out part-time devs working for free too harshly, but I do think there was a focus on what they wanted to be able to pull off, versus what they wanted to empower random idiots with an Ender 3 to do, much less small-to-medium businesses. I think it led to the infamous “FreeCAD way” attitude amongst devs and power users. Topological naming, for instance. That arises out of the software implementation of 3D kernels, making it an issue of proper use of inherently limited design software, not of design itself. Software that accommodates it well is is not “cheating,” and it’s not lazy design to rely on well-coded apps, but I’ve run across that sentiment before, if not the words.
The push from Ondsel (for as long a it lasts… as the CTO mentioned, they have a very narrow path to support the underlying project while finding sufficient monetization), and the structure provided by the nonprofit should help. Autodesk too seems to be doing their part by making all but the most rank beginners (and some of them too) second guess the choice to lock themselves into Fusion 360.
I think it led to the infamous “FreeCAD way” attitude amongst devs and power users.
I’ve always felt that was more of a “It’s cooler to add a new feature like so we end up with 3 different assembly workbenches, (none of which are actually useable), rather than fix long term problems” thing. Which I suppose, can lead to “FreeCAD way or the highway” attitude.
In any case, FreeCAD now has a workable road map to the future. And things are going to get so much better for the end users. And I’m looking forward to it. I can already see the effects in the .22 Dev releases.
Thank you for the post. Ill try some of them. Its kinda hard to move from solidworks. Didnt know about makers edition, but still probably not solution for me. Lot of apps here I have never heard of, cheers!
Great write up, thanks for the post!
BTW, Freecad is getting 0.22 patch soon (can already be used) with a bunch of
QULQOL stuff.QUL?
Quality uf life
Lmao yes
Amazing write up!
I’m a Creo Parametric man myself. Used it for many years at a previous employee and loved it. Bit of a learning curve, but you can do just about anything with it. Very powerful.
Currently stuck with solidworks at my current job. Not a huge fan, both stability and tool options are lower, but it works.
Of course neither of these options are reasonable for personal use due to pricing being too high for most people. If you are an active student, you can get free Creo!
Yup. PTC owns OnShape, so they have no need or incentive to make Creo Parametric accessible to the little guys, so they do not. :-)
Same deal with Siemens and NX (Solid Edge), and to a lesser extent Autodesk with Inventor (F360). It’s really only Dassault that seems to be trying to appeal to small-time users with the main package, but it seems like they are not committed to that, just currently unopposed.
In a large multinational company with very opinionated teams using either Creo, Solidworks, or Autodesk. Whenever we have a collab project between teams, hilarity ensues. Their export/import capabilities could not be any worse. I try to stay away from the mechanical department during those times.
Well, all of these companies intentionally try to lock the users into them, by making their files as unreadable as possible.
No Company wants to lose access to all of their models.
For me the best option has always been Rhino3D. Three months fully functional free trial, educational version is fairly cheap AND it’s a perpetual license. Parametric design with Grasshopper is a bit of a learning curve, but there’s tons of tutorials.
Now THAT’S one I should have tried. Probably slots in right between the big guys and the “B Team” I listed above." I think I left it off because I had a couple of other natively parametric commercial options that were a bit cheaper. I didn’t factor in student editions for anything, as the angle I’m considering is a growth curve that includes the potential for small scale commercialization. They’re a realistic option for many.
The student version can also be used for commercial purposes, but not as part of a company. All it takes is to sign up for a class at a university or college and you get a huge discount. I got mine when doing my bachelor’s and still use it.
They seem to offer a very generous scheme and seem like they are really in it to make a product they can be proud of. It seems like it’s a really good direct modeler, especially with the grasshopper addon. I’m a couple of decades too late for an educational license though.
FreeCAD can be a right pain in the arse and things can blow up spectacularly, but it does force you to use discipline in your designing. It’s a great tool if you are careful and don’t cut corners. Other than with the mitre tool, ho ho.
I use solidworks maker because they had a crazy good discount last year and it’s the cad package I used in uni and work when I was more mech focused. The licencing checks are mildly annoying but otherwise it feels like what I recall solidworks feeling like, does include the part toolbox which is really nice (ots items like bearings, scews etc. Really nice for assemblies). If I recall there’s another downside with the files, don’t recall if they can be opened in non-maker solidworks or not, believe that was a restriction with the educational version.
Maybe its just the familiarity with the tool (though it’s been years) but I found SW really easy to go from hand sketch or idea to part, maybe its the part focused nature of solid works or the sketch focus but I found it somewhat transferable to freecad, although the mouse controls are a bit whacky to me. I honestly couldn’t get into fusion, which is odd because I remember getting on with AutoCAD and Inventor.
In the end I feel you on wanting to like freecad, I’d really rather use a Foss solution for my personal work.
In the end I feel you on wanting to like freecad, I’d really rather use a Foss solution for my personal work.
I just downloaded The Ondsel “flavor” of FreeCAD. It’s based on the upcoming 0.22 release, and it includes an addon that integrates to their tiered PDM, but everything else is still completely free. I don’t see anything mind-blowing, but it’s a very nice update. UI improvements, mostly on the Part Design workbench, nice and legible dark theme, floating tree, better launch page, and floating user-enterable dimensions when sketching (pretty cool, and long overdue). I question the viability of their business model in the timeframe their VC’s likely want, but for now they’re plowing some amount of money into FreeCAD development.
the mouse controls are a bit whacky to me
Is it true that SW ties everything to the Middle button with various modifier keys? And doesn’t let you change anything? I’ve used a LOT of different 3D software over the last 45 days or so, and honestly that would be (if true) among the wackiest I’ve run across. FreeCAD has 10 preset styles now, and one or more of them might work for you.
Solidworks Maker
Here is the cheapest deal I’ve found on it (it’s well known, I didn’t have to do any detective work or anything). $38 for a year is probably worth it just for the shits and giggles, but as I mentioned, there’s just no reasonable path for the home-business that manages to pull in $3-5k of profit. Lock-in is the bread and butter for all the companies, big and small, and a big part of this exercise has been to see just what I’d be locking myself into.
I’m definitely looking into the Ondsel flavour of freecad after work, I’ve been using standard freecad with the Modern UI Workbench which makes it feel a bit more like other cad packages to me.
Yeah pan and rotate are on middle mouse click, for me it’s a “this button manipulates your view” so it’s intuitive for me, for freecad I think I settled on opencascade, tried open inventor and I definitely misclick at times so I’d unintentionally rotate my view. I honestly haven’t tried rebinding but from a quick look yeah no it doesn’t support that, does have a ton of shortcuts though.
Maker is fine if you’re like me and aren’t looking into doing a home business, but even then I do have annoyances with lock in and frankly non-windows support, my lab computer runs mint and my laptop runs debian. Be nice to use one solution across the board.
I understand the 3D experience includes some sort of browser-based riff on SW; maybe that would be a halfway useful tool for Linux. I dunno. :-)
I have used OpenSCAD and after the initial learning curve its really pretty good. I have made functional 3d prints from it. Its excellent for making 3d signs
Thank so much for this survey. So much useful detail. Great stuff!
You mention Blender in passing. Any thoughts on using it for CAD design for 3d printing? “Keep Making” on YouTube seems to love it for that, once some plugins are installed.
I tried it once, months ago, and it didn’t click, really, but I could try it again. The main thing with Blender is the way it models. It doesn’t do Boundary or Solid modeling, but instead models meshes that approximate solids. Some people will say that makes it “not CAD,” and maybe they’re right in a narrow sense, but specifically for 3d printing, every single solid you model will eventually be turned into a mesh before slicing, so if you are working with a mesh that’s a higher resolution than you can print, you won’t see the issues. I understand there are well-supported add-ons that add many of the tools necessary to make blender act like a direct-modeler for solids. I don’t know if there are any that add the equivalent of a parametric tree or constraints, so I’ll defer to others.
Knowing full well how much time I’ve spent on dead ends out of sheer morbid curiosity, I would say I don’t think think it’s a great idea to LEARN Blender to do mechanical style modeling, but if you also want to do 3D sculpting or you already know Blender, it could be a perfectly adequate tool for 3D printing. A rectangle, after all, is simply two triangles. :-)
Blender itself doesn’t do CAD in the traditional sense, but it does have plugins that add that type of functionality.
Clearly that’s outside of the scope of this writeup, but I thought it was interesting. It’s amazing to me that such amazing software like Blender can be free.