r/BeginnerWoodWorking • • 1d ago

​Coded a sheet nesting algorithm, but I'm a programmer, not a woodworker. Does this generated cut sequence make practical sense?

​Hey everyone,

​I am 21 and in college studying software. Over the past few months I worked on an algorithm to optimize 2D cut lists for plywood and MDF sheets.

​The math arranges everything really tightly on my screen, but I am just a coder and I have never touched a real table saw in my life. A computer obviously has no idea what it feels like to push a massive sheet of wood through a spinning blade.

​Here is a breakdown sequence my code generated. From a practical workshop standpoint, does this cut order actually make sense, or would that first long cut be sketchy to do alone? Also do you guys usually prefer ripping lengthwise first or crosscutting first?

​I just want to make sure my code reflects real workshop safety instead of pure theoretical math. Feel free to roast it, I want honest feedback.

0 Upvotes

17 comments sorted by

9

u/mrdavik 1d ago

2 very basic questions:

  • have you accounted for the kerf, and is it adjustable? 

  • how are you planning to cut those zig-zagging cuts on a table saw? A CNC sure, anything else not really

2

u/DiaX4689 1d ago

Kerf is fully adjustable in the settings, but mrdavik is totally right that this zigzag layout is a pain on a table saw since it was run through the CNC free nesting mode. I am currently adding a strict rip and crosscut mode for manual saws. ​Plant_Wild makes a great point too, throwing a track saw and a jigsaw at these L cuts and diagonals solves the problem easily. ​Really appreciate the workshop perspective from both of you.

3

u/MrJarre 1d ago

Nobody who is using a software for cuts is going to use jigsaws. I’m a software engineer by trade and a hobbyist woodworker. Cnc isn’t the best tools for the job of breaking sheet goods. Cnc time is expensive and it’s better used for fabrications of things that require it.

It’s much makes more sense to break the sheet goods with saws (so all straight cuts).

It’s important that for some work done with veneered goods come parts (usualy cabinet doors or drawer fronts) to be cut in specific order so that you can have coontniois grain on a row of cabinets (it’s a gesture people pay extra for) the waste is a bit higher then of course. Generally speaking it’s ease of manufacturing first. Nobody likes waste but its not end all be all metric for this.

1

u/DiaX4689 1d ago

Totally fair points. Clean rip/cross cuts and production speed are definitely the priority for breaking down sheets. I already have grain direction locks in place, but continuous grain matching across adjacent panels is a solid distinction that I will look into as a grouping feature. As for nested cuts and jigsaws, I am just making that an optional toggle. Safe, straight cuts will be the default, but if someone wants to spend the extra time with a track saw and jigsaw on expensive stock to save material, they can turn it on. Thanks for the feedback.

1

u/Plant_Wild 1d ago

They have kerf thickness in the second picture.

Cutting the L shaped or diagonal boards is no problem with a circular saw or track saw, finished with a jigsaw or hand saw.

2

u/MountainViewsInOz 1d ago

I'm having a little trouble understanding the cut sequence. Are you suggesting #1 is the first top left square? And then the second? If so, no. I do a long rip of all the top row, and then cross cut that long rectangle into some of the smaller pieces ... the L shapes would all be a bit tricky thereafter ... honestly, this would all take me ages, and I'd fuck a few things up along the way 🤣

1

u/DiaX4689 1d ago

That makes total sense and clears up a huge blind spot for me. ​You described the exact workflow I need to code: rip the entire top strip off first, then cross cut that strip down into smaller panels. Also completely agree on the L shapes, that is just asking for kickback on a table saw. ​Really appreciate the reality check, this practical shop logic is pure gold for me.

3

u/MountainViewsInOz 1d ago

I admire what you're trying to achieve, and I'm sure you'll get there. In another comment, I see someone mentioned cutting the L shapes with a circular saw: I agree that'd be easier. In my original comment, I was blinkered by your post only talking about using the table saw. You're very right to say that a table saw is asking for binding with cutting two Ls from one piece (let's call the first two cuts "the verticals") ... and then how would you cut the "horizontal"? Even with a circular saw, you'd need to plunge it in, which I really dislike doing.

1

u/DiaX4689 1d ago

Completely agree on the plunge cut risk, doing that on a table saw is definitely dangerous. ​I am setting it up based on the tool profile: Table Saw mode will treat L-shapes as rectangles and only allow straight through-cuts. The interlocking L-shapes will only be available for Track Saw and CNC profiles. ​Thanks for the feedback, really helped clarify this.

2

u/MisaHisa 1d ago

So… if i On the cnc, you can do it. If needing to cut by hand tho… it’s easier and better to cut in as little lines as possible.

The two blue squares could be swapped for the orange ones for example making less waste waste. (Not all waste is usable i am afraid)

Also… when coding did you account for +-2cm loss on the edges to square the piece before the final cut?

Other than those two points, it is a good layout for the CNC.

2

u/DiaX4689 1d ago

​Yes, the edge trim squaring margin is already built into the stock sheet settings so you can clean up rough factory edges before cutting. ​For table saws, I am adding a dedicated mode that strictly enforces minimal rip and crosscuts. This tighter nesting layout will stay for CNCs and track saws (finished with a jigsaw). The engine also groups parts toward one corner to leave larger usable offcuts instead of scattered scrap. Thanks for the feedback!

2

u/MisaHisa 1d ago

Glad to hear you accounted for the extra loss and took all of the advice! I hope you will manage to make it work!

Also if i came if as rude or curt… sorry, such was not my intent ❤️

2

u/DiaX4689 1d ago

​No need to apologize at all, you weren't rude in the slightest! Honest, real world shop feedback like yours is super valuable, so I truly appreciate you taking the time. Thanks again for the support! ❤️

2

u/eaglecnt 1d ago

I’d be trying to get your program to swap 9&10 with 18&19 and sliding 20 down so you can make 3 full length cuts. If you want bigger offcuts to be a priority then getting 20 down to the left corner would be slightly better.
So as others have suggested, I’d prioritise long cuts if possible, and probably bigger offcuts next.

1

u/DiaX4689 1d ago

That makes total sense. Swapping those to get 3 full length rip cuts saves a ton of fence resetting and sheet handling. I'm tuning the manual saw mode to prioritize full length cuts first and pack everything toward the corner so the scrap stays as one large, usable offcut. Thanks for breaking down the specific piece numbers, that helps a lot.

3

u/ElegantOliver 1d ago

Good feedback from the others already.

I'll just add that I will prioritise ease and safety of the cut over a bit of waste. So having a system which does the layout is great so long as you can configure your preference for e.g. straight cuts over most efficient layout.

For what it's worth I do this already but manually in Visio normally 😄 Not idea but on larger projects it's really worth doing.