algorithmic modeling for Rhino


Space Syntax

Space Syntax is a theory of architecture and built environment that seeks to explain the effect of spatial configurations on behavioral patterns of people. SYNTACTIC tools bring Space Syntax theory into parametric design workflows. More information on syntactic design methodology:

My PhD dissertation (see chapters 3 & 4)

Designing with Space Syntax

Syntactic Design Methodology

For more information, videos, news and updates you can visit the following website. 

The plugin is available for download here:

This plugin is completely compatible with SpiderWeb for Grasshopper and we hereby thank Richard Schaffranek for all we have learned from this extremely useful plugin


Location: Delft
Members: 555
Latest Activity: May 31

Hi, All components are ready. We are just wrapping all our VB codes into a GHA.

Discussion Forum

Rhino6 version 2 Replies

Hello,I am trying to install space syntax on Rhino 6 and as now it doesn't have half of the components that help creating readable clean bubble diagrams.What is a way around it to make it work?Also I…Continue

Started by Mahsa Dehghani. Last reply by Mahsa Dehghani Feb 4.

space syntax area refrence

HiI used your space syntax for an architectural function relation diagram, but i have a problem because there is a rule that number of points and areas should be the same, so in a situation that i…Continue

Started by maryam ma Feb 3.

"DiskoGraphDrawing" Icon

Hi There, I'm using the latest version of Syntax (downloaded today) on Rhino 6. Is it correct to assume that this isn't 100% compatible with Gh on R6 at this point?The issue I am having is the first…Continue

Started by Chris Dimarco Dec 9, 2018.

output Elevation and sections with dimensions

Hi, please i want to output elevation and sections with dimensions by grasshopper in this 3D wall, can u help me.thanks…Continue

Started by tariq hilmy Nov 27, 2018.

Comment Wall


You need to be a member of Space Syntax to add comments!

Comment by Pirouz Nourian on November 7, 2013 at 6:22am

Hi Petar, Thanks for the ideas. For making a 3D configuration to be implemented in the tools, I need to work on a systematic way that I can implement as a "generic method"; something like a recipe, with a guaranteed result. For giving a space a height value, as I said before, you could put the corresponding vertices on different height levels and that doesn't confuse our graph drawing algorithm (DiscoGraph). You might also find SpiderWeb tools useful in your work. 

Regarding new parameters, I should mention that we have been working on these tools for almost six months just to simplify them and reduce the number of required parameters to avoid unnecessary confusions. However, if you think in any of the components it would be better to have some control on an output with an input parameter or you need an output which is apparently available but not put out,let us know and we will consider it for the next versions.  

Comment by Petar Pejic on November 4, 2013 at 3:36am
Hi, well I am not sure realy how it should work. I was thinking maybe to introduce a value for height or volume of each space. Next, maybe the situation is that one space is behind the other, and they both have the same view parameter, hence, one will be placed above the other. It would be interestin to have a slider between 0 and 1, where 0 would be 2d organnization and 1 would be a full 3d organization, so a user can change the 'amount of 3d representation'

These are all just ideas, which i think it could be usefull to have included. However, i think more parameters should be included as well.
I hope to hear your thoughts if it would be usefull, as well as if you would add something.
Once again, thank you for sharing
Comment by Pirouz Nourian on November 2, 2013 at 6:40am

Hi Petar, Thanks for your compliments. We are also interested of course in receiving critical feedback. Regarding the 3D program diagram, I should mention that a graph doesn't necessarily have a geometric form. This means however, that there could be infinite number of ways you could draw a graph, so to say. This means that, given a set of vertices, as 3D points you could actually visualize graph links as geometric edges (lines for instance) between them. In other words, you can just provide the DiscoGraph component with a set of vertices (of course the same number of vertices as you have when you build a graph) and get a drawing however you like, and of course these points can be on different height levels. Anyhow, if you specify a bit more what you are looking for, I might consider adding a new component and make an update.


Comment by Petar Pejic on October 31, 2013 at 4:19pm

Excellent tool guys, it looks really promising. Do you maybe know how it would be possible to apply same logic to a 3D program diagram. Or you know some theories that deal with that issue? I suppose a set of new parameters would be needed to introduce it.

Comment by Samane on October 31, 2013 at 8:19am

Dear Bea,

The algorithm embedded in the "force directed drawing" component finds a set of relax locations for the vertices by considering graph links as springs, applying attractive forces and repulsion between disks when they get closer than their boundaries. You can try with the advanced setting.( if you hover on them you can see the default value)

The sketch box which you see in the photo and the generative process will be included in the next version.


Comment by bea franko on October 30, 2013 at 11:49am

ok but how to difference between attraction and repulsion, do i need a number for each connection (-x=attraction, x=repulsion?)

You dont plan to set up fixpoints? could be a great extension for your tool and very helpful for use.

i saw this in the manual:

how can i do this?

Comment by Mahdi Soheyli Fard on October 30, 2013 at 7:44am

Hi Pirouz,

that is really awesome when you are looking for sth about space syntax for experiencing some design method, and just heading to one who did it as well. it became my luck man. congrat!

Comment by Pirouz Nourian on October 29, 2013 at 1:55pm

Hi, Those are just advanced settings. Have a look at the help of the component. It is very unlikely that you need to change those settings. They are not meant to be design parameters. They are just for calibration of the component itself. However, if you are not getting a neat bubble diagram with the default settings, please post your model here. 

Comment by bea franko on October 29, 2013 at 5:34am

hello great tool!

but i cant find or i dont knoe how to control the attraction and repulsion. is the orientation to fixpoints (nord, west, east and south) included in this version?

looking forward!!!

Comment by ardi bidi on October 28, 2013 at 9:09am

Nice project!

I did similar project, in 2012, as my M.A. thesis at University of Tehran, using similar approach in combination with Galapagos as optimizing system. You can find a short demo here:


Members (555)





© 2019   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service