I am trying to fit a combination of various predefined rectangles into an area. The the 4 rectangles have a size of (880mmx1300mm),(880mmx985mm),(730mm, 1300mm), (730mm, 1300mm).
I want to fit a combination of these into a larger area. Not all panels have to be used (it might be that the most efficient way would be to simply use one version or two).
The area which i want to fill will have two rectangles inside (windows on a facade) where the panels should not go. I am trying to figure out the easiest way to do this. Any help would be appreciated…
Being a little more specific really wouldn’t hurt! How do the different types of panels and surface/facade to populate look like?
there are four types of panels. They are simple rectangles. (800mmx1300mm), (800mmx985mm), (730mmx1300mm), (730mmx1300mm). These have to fit as perfect as possible in a bigger area (Also a rectangle) with two windows (therefore holes in the area where panels will not go). I would like to generate a script which fits these panels inside this area most efficiently. I hope i am being more clear!
@serabouch, unfortunately this is probably harder to do than you might image, especially in vanilla Grasshopper. You would probably constantly have to reevaluate the distribution and make changes as you go which is easier to do in scripting (Python, C#, etc.), if you know how to.
In your case, could the different modules be rotated?
Anyways, check out the following links! Maybe there’s something that helps?
Hi, i know this has been an old-ish topic but i havent found a solution on the forums so far. My problem is really simple, i have shape that i want to panel. Each panel has a maximum dimension (for material limitations) and i want to find what is the most efficient rectangular panel layout. I have used packrat to pack the boxes and galapagos to control the length of each box while minimising the ‘unpacked’ area.
My issue is that i am trying it out on a simple surface now and it is roughly easy …
… here is a version I made by hand, to illustrate the direction I am aiming…
and here is a build example that was my initial inspiration…
I have been struggling with this logic for a little while now, I am trying to create a definition to produce surfaces similar to the image attached. I have a feeling I might be approaching it from the wrong angle so would like to get another perspective if possible?
RandomMeshDivide.gh (16.5 KB)
@laurent_delrieu, you seem to be the rectangle packing master! Would you be so kind as to give your five cents?
Thanks ill check out the forum, it looks like the problem i am having is discussed. Also, yes the panels can be rotated. Thanks for the help!
If you are interested i made another forum with a similar problem but only considering one rectangle:
Subdividing surface into predefined equal rectangle
For all your questions you could use nesting algorithm. You’ll have to provide enough rectangles in order to fill your shape. You can
duplicate your rectangles.
They are many ways,
you can look at that
you can generate rectangles then pack them with OpenNest.
Too perfect !!
generate pattern with minimum distance.gh (9.6 KB)
You can generate your own code with your constrains… Kangaroo could surely also be used.
Nice work Siemen! Unfortunately, because those pieces are going to be engraved with numbers on their upper face, they can’t be partially mirrored.
The challenge is, all pieces need to be with the same original orientation.
Thanks for your help!
And if you want less order
Thank you so much. it works
Just some questions on the script you have made.
I can see where to change the word love to something else. Is there a place to also change from GO to another word?
And if I want to convert into curves at the end, how can I do it? now when I bake it converts into mesh.
thank you again for having spent the time on this.
here a script, not optimized as OpenNest, play with Jitter (0 or one) and Seed.
Thank you! i will play around with it now and see how it goes.