I am currently trying to create a script that will let me select all room boundaries whether it be per certain levels or all levels. I’m sure this requires a python script but as of now I do not know any python. So if anyone can take the time out of their day to give me any suggestions, I’d really appreciate it! Thank you.
- Room.Boundaries node from Archi-Lab package will collect these for you.
- Then Group Curves (also Archi-Lab) and build a polycurve from each sublist to account for an donuts in your rooms.
- Then build a surface of each curve loop, query the surface’s area, and multiply that by -1.
- Use the negative area value as the key and the polycurves as the list input for a List.GroupByKey node.
- Next up a List.Deconstruct with proper list levels and lacing to pull the largest areas out from the inner openings.
- Finally we offset the polycurves. The list of ‘first’ items from the deconstruct node will want to be offset by a positive value, while the inner openings will want a negative value.
Some curves will fail (ie: offering a circular with a radius of 6 by 8) but this will be functional for most uses.
Hey Jacob, thank you so much for the reply!
This is honestly all I could understand from your instructions, sorry about that.
Hi @YBMCarlos …here is a way…know my example is on a link, but should almost the same…
Thank you! This did get me to make some progress, this is what I currently have:
but i don’t understand why it’s giving me weird boundaries in the model:
Hello @YBMCarlos …think you need offset polycurve instead of offset curve…but could be other thing as well
yes it looks like it might be something else because I am still getting the same problem:
Can you show your dynamo preview and what the nodes give ? do you have overlapping rooms ?
this is what i see, but i do not have any overlapping rooms
sorry for this here…isnt becourse you see your offset surface perimeter curves ?
so what I want the script to is expand the room boundaries by, in this case, 4 inches in every direction. not sure if im doing that with this script
then try it and see if it works;) thats my best guess
it doesn’t it looks like, but i will keep trying. thank you!