I'm making a program that's supposed to be able to find pieces of wood in a dataset to cover a surface. For now I'm focusing on parallelepipedic shapes to simplify the problem (eventually I'd like it to be able to handle any shape).

The user should be able to approximate (almost) any 2D or 3D surface with a big enough dataset of shapes. He should also be able to control the size of the boards that he wants, or the space between them or even the accuracy of the approximation...but perhaps I should focus on the first problem for now.

It looks like a tiling problem, but with a limited amount of shapes and almost all with different sizes. Unfortunately I can't seem to find anything about that on the Internet. The closest I got was a small program made to tile a surface randomly with a few shapes with sides of length equal to a multiple of a predefined unit.

I'm also trying to minimize overlapping, and/or openings, but I don't want to brute-force it and I'm sure there are very clever ways of doing it that I just didn't have the chance to find.

If you have any lead on how to do this efficiently, I'd be very grateful.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.