Place families in a given region automatically

Hi there,

I am working on a script that would place solar panels in a draw region (The blue region), the region detemir’s where the solar panels could be placed. But apparently the world in off co-ordinational placing in Dynamo Is nothing like parameter based script. So I stuck at what I’ve got now.

I’ve managed to get the roof (the region in Revit) drawn out in dynamo. But that all I cant find any ting to help me further.

I know it might be a lot what is asking, but maybe someone has made something that might do the trick or could help me out. Or is it even possible? Here is my current progress.



In short, I want as many families to be placed within the region without overlapping each other or exceeding the region.

Thanks in advance,

Look into the bin packing nodes in the refinery toolkit package as a start. :slight_smile:

I’ve tried this method but unfortunately is did not work out the way I hoped. It rotates the rectangles it’s too random. And I can get it to work on a surface without interfering objects, but that’s just not yet what I’m trying to create.

How I see it,

I’ll make an region with openings in it that indicates interfering objects.

Based on that area rectangles must be place on the suitable places. (Whit out overlapping)

You could just start at one corner and place them as an array depending on their size.

So if they’re 2m wide place them ever 2m.

Then delete any whose geometry clash with your ‘interfering objects’

It won’t necessarily be totally optimum but it’ll be fast and easy.

I have space analysis and space layout in R21 is that anything to do with the refinery toolkit or would you recommend a dl of refinery toolkit still?

Not sure which nodes you’re comparing, but yes if you’re doing generative content Refinery Toolkit is a good package to have.

1 Like

Too much to learn. My head hurts. :crazy_face:

2 Likes

Hello I am working on something similar for tags. Each tag will report its space and I don’t want the new tags to go in that space. Got the tags drawing their own bounding boxes but can’t figure out how to use those boxes as “no go” zones for the new tags. Going to check out refinery now