Hi everyone,
I looked through this community, and I didn't see much discussion of the use of CAD for woodworking, so I figured it was worth a post. I learned CAD ages ago, and I've used it sparingly in my professional life since then. I'm working on a project now that would benefit from CAD, so I figured I'd try to get up and running with a software for personal use.
I know sketchup and fusion360 have long been the major players for woodworkers, but I am wary of "free" personal use licenses that can be removed or degraded at any time. As this is Lemmy, I'm sure plenty of you are interested in FOSS options as well. I know there are some programs out there specifically for woodworking, but if I'm going to learn a new software, I want it to be more general purpose so I can use it to make things for 3D printing, etc, if needed. I also want something parametric to be able to easily change designs. For those of you unaware of what that means, it basically means that you can design things with variables instead of exact numbers. That way you can punch in numbers later on to easily update your design. In my case, I'm making cabinet doors in a few different sizes, and I'll be able to generate plans for different doors with only 1 model. Theoretically, I could upload the design for anyone else to use/modify as well on a place like thingiverse (someone give me a shout if they are secretly horrible or something, I'm generally wary of providing value to a corporation for free).
This all drove me to FreeCAD. FreeCAD is a FOSS CAD software that has a huge range of different capabilities. The different tools are divided into "workbenches" of different uses such as architectural drafting, 3d printing, openSCAD etc. There are also user created workbenches that you can install. There's even one specifically for woodworking (that I haven't used yet).
I've started into some tutorials, and most of them are focused on building a single widget. While that's great if you are planning on making something to 3d print, us woodworkers are usually assembling different parts. The tutorials for woodworking specifically I've followed along with so far seem to follow the same workflow:
First, a spreadsheet is set up to establish all the parameters you want to be able to change, then, each part is designed individually. Finally, all of the pieces are brought together and assembled.
While this is great if you already have a design in mind or an object, and you are trying to make a model of it, it's not the way I would ideally go about conceptualizing a new design. To make a nightstand, for example, my preferred methodology would be to assemble some simple rectangular panels to represent the top, bottom, back, front, left, and right. After those are in place, I'd start adding joinery, details like routed edges, and cutting out space for a door. It doesn't seem like freecad is necessarily set up to do things that way, though I could be wrong. This might even be how the woodworking workbench does things, I just figured I'd start learning the default workbenches first.
Anyone else use freecad or another CAD software? What's your workflow like? Want me to report back once I've had more time to play around with it and learn some stuff?
That looks like the workflow I've been learning as well, so it looks like I'm off to a good start. Definitely not sure why the alias manager isn't built in, but that's okay. I actually found that the latest version of the macro doesn't work with the latest version of freecad. It seems like the spreadsheet workbench puts a ` mark before text in a spreadsheet now, and that mark is not usable in an alias. You just have to go into the line on the macro that pulls in the text, and tell it to ignore the first character.
Have you looked at this workbench at all? It seems like it does some of the stuff we'd like to be able to do. I installed it, but I haven't played around with it yet cause I want to get proficient with the more general purpose toolboxes first
I prefer the Part Design workflow. This page shows a comparison between the Part and Part Design workflows for making the same part. I personally tend to prefer the Part Design workflow.
I'm not having a problem using the EasyAlias macro, I'm using v0.21.2 from Flathub. I do notice that it prefixes text strings with a ' mark in the spreadsheet, but it still works. Another thing I know about the EasyAlias macro is that it's smart enough to take a string like
Overall Length (overall_length)
and use onlyoverall_length
as the alias. That may be a workaround?I haven't seen that workbench, thanks for sharing it. I'll give it a look. I didn't see it in the addon manager.
So, about that Woodworking workbench...no that's godawful.
The UI seems to be hardcoded so that it looks good with the theme, font size, monitor resolution etc. the dev uses; it's full of misaligned and incorrectly sized things on my end. Slapdash and lazy.
The drawing tools are partially woodworking process based, partially abstract CAD, and somehow the worst of both worlds. Some things like drilling and chamfering have dedicated buttons, some things like dados you're supposed to do with boolean operations.
The BOM feature...it doesn't function using FreeCAD's in-built unit setting, so you have to choose inches every time you make one, which is tedious, and it only works in decimals not fractions. For woodworking in America, it's pretty much useless.
Uninstalling and giving up hope.
I have noticed in general that using inches doesn't work well in freecad. Generally, I wouldn't touch inches with a ten foot pole, but if all the materials are inches, I guess it makes sense. It seems like when I put a number into an expression, if I don't specially say that it's in inches, it assumes it's mm, and then converts to inches since that's set as my default unit. I noticed the fractional imperial is kinda weird, too. Like it automatically breaks things down into yards, feet, and inches. I don't know anyone who uses yards in any context other than sports. I might just use mm and convert back at the end to make things easier. That's what I do in my professional life if anyone wants US customary units, lol.
That's sad to hear about the woodworking workbench. It literally is just one person working on it for free, so I can't complain too much.
In the options menu you can put it into inch mode, which will stpp it defaulting to mm. Internally it stores dimensions in mm but it will translate for you, so you can work in inches.
It would be nice to have a simple inch-fraction system, in kind of tired of seeing 1' 2 3/32" just say 14 3/32".
I've been contemplating doing a woodworking CAD package from scratch in Godot. Whould require less laziness though.
Yeah, I have it in decimal inches which is a bit easier to deal with. When I use parameters, and I have something like "part_a.length +5" and it gives a unit mismatch error cause the 5 is still assumed to be in mm even though the other parameter is in inches. If the expression has no parameters like sqrt(3^2 + 4^2 ), the result will be .2 inches, not 5 because it only does math in mm unless specifically instructed otherwise.
I hear you on the laziness, though. There's a lot of things I technically could do myself, but at a point it feels less like a hobby and more like a job.
Ah no, it's not assuming the 5 is in mm, it's assuming it's unitless. Like imagine if part_a is 5 times as tall as it is long,
part_a.height = part_a.length * 5
will work just fine. But if it's 5 inches taller than it is wide,part_a.height = part_a.length + 5
won't work because 5 what? you have to saypart_a.height = part_a.length + 5 in
and that will work.This is flexible enough to allow you to work in metric and standard in the same document, 15 in + 4cm will parse just fine.
It seems like that isn't the case, though. If that were the case, having a math expression (with no parameters) wouldn't work without specifying units. My pythagorean formula example works with no units specified at all. If you plug that into an expression, it gives you 5 mm. No matter what your units are set to. If your units are inches, it just shows up as .2 inch.
"part_a.height = part_a.length + 5" doesn't work even in mm, though, so something weird is afoot.
It can do math on all unitless numbers.
Opening a new FreeCAD document, creating a spreadsheet, I get the following results:
=5+5 evaluates to 10
=5" + 5" = 10"
=5" + 5 returns a Quantity::Operator Unit mismatch error.
=5" * 5" returns 2'1"
=5" + 5mm returns 5"+3/16". I'm working in fractional inches and have it set to 1/16" maximum display precision. Right clicking the cell, going to Display Unit and typing in mm that cell computes to 132.00mm
Note everywhere I typed a " can be replaced with ' in'. FreeCAD will parse both.
If you're working in the sketcher, it will let you type "5" in for a distance constraint, and is smart enough to go "A unitless length? Okay, we'll assume the unit is the document default setting" and will insert 5mm or 5 in. So it will automatically--and quietly--assign a unit to that unitless number you typed in.
In the expression part_a.length + 5, part_a.length is in inches, 5 is unitless. It can't add those. It can do part_a.length + 5" though. with the " meaning inches. or part_a length + 5 mm.
Note that when mixing inches and millimeters, it may round numbers for display. There's a setting in the options for maximum display precision, it's so you don't end up with something like 152.00231078422872 mm or 1 93/2048". I do believe that it calculates and renders geometry precisely though. Like above adding 5 inches and 5 millimeters is maybe a bad example because it does just so happen to create a round number.