Pathways between blocks

Hello,

I am currently working on a project related to shelter layout planning using Grasshopper and Python. In this project, I have implemented an algorithm(which is kind of based on shape grammar) to distribute blocks of different types based on their usage, which include residential, community, management, and medical blocks. These blocks are represented as a list of numbers, where 0 stands for an community(empty space), 1 for residential, 2 for management, and 3 for medical.

However, I have encountered a challenge in creating logical pathways and connections between these blocks. Currently, the spaces with the value of 0 (empty spaces) are not connected properly, and there is a lack of logical pathways and access.

I would appreciate any guidance or suggestions on how to efficiently connect these empty spaces and to create a coherent shelter layout. If you have any insights or recommendations regarding this issue, please share them.

Thank you for your assistance.


@Mahdiyar

DUPLICATE THREAD!!!

https://discourse.mcneel.com/t/shelter-layout-planning/165978

I deleted the previous one.

1 Like

Do you have some kind of adjacency rules in place or that you can outline somewhere?

This makes me think of Wave Function Collapse (WFC) which can establish geometry/relational connections based on a set of predefined parameters.

There is a plugin called Monoceros that handles this in Grasshopper and it may be worth investigating.

Additionally, the Monoceros code is open source.

Example 01:

Typologies:

Generated Layouts:

Example 02:

Thanks a lot! I’ll check it out.

1 Like