algorithmic modeling for Rhino

Hello Ladybuggers!

We have just released a new solar Envelope component for Laybug called SolarEnvelopeAdvanced! The component offers two envelopes -

Solar rights - A 3D envelope which defines the maximum height of built volume which would not violate the solar access for defined surroundings given filtered sun vectors.

Solar Collection - A complementary 3D envelope which defines the lowest heights from which a new built volume would receive solar access, given a built context and filtered sun vectors.

The new component harnesses ladybug's SunPath tool to determine relevant sun positions based on input from an .epw file. The simulation also takes into account surrounding buildings if provided or a self envelope if omitted, with the goal of adding control and flexibility in conjunction with a more accurate simulation.  

A video tutorial is available here -

An example file is both attached and accessible through here  -

The component takes as an input a filtered list of sun vectors, a base surface which represents the site border and a list of curves, representing the surrounding context


and outputs a point cloud and a polysurface -


which in turn can be closed and further evaluated (On the left - solar collection, on the right - solar rights) - 

By Boris Plotnikov and with the assistance and guidance of Prof. Guedi Capeluto, based on SustArc model. The component could not have be alive without the invaluable help of the awesome Chris Mackey and Mostapha Sadeghipour Roudsari in development and integration, also a big thanks is due to Abraham Yezioro for testing and advising on usability.

For further reading it might be worth taking a look at Ralph Knowles's work, e.g -
and G. Capeluto and E. Shaviv's, e.g -
the component relies to a great extend on the concepts described there.

Thanks for reading and enjoy!

Views: 2886


Replies are closed for this discussion.

Replies to This Discussion

This is great deal tool Boris. Good job and thanks.

I'm sure the community will enjoy this a lot. Highly recommended.


Agree with that. Very useful tool!
Thank you for sharing it.


great work Boris!

Been playing around with this, love it. Thanks Boris!


Thank you for your sharing.

There is a problem when i simply replace breps and surface.

something wrong with Solar right.

Can you help me? 



Your file is working fine for me AS IS.

It makes me thing that it could be a Tolerance issue. Change it in rhino to, say, 0.001 and re-run your file.

I would also increase the grid size. 1mt is very high resolution and i'm not sure it will make any difference, at least for this specific case.


Hey ChenXin,

Could you try this file ? What worked for me is exploding the obstacle surfaces to individual obstacle curves


Thank you very much, Boris, for this very useful tool!

Well done, Boris!  This is going to make some waves in urban planning and design!

Hi Boris !

I'm having issues modifying the obstacle curves in my file.  Fore some reason I'm not being able to select them properly, neither in your example file nor in mine.  

How does one assign them? I'm working with context made up of an extruded polylines (now a polysurface), should they be solids ? 

Thank you !


Hi Angie,

Mind sharing the GH definition?

In the example file they are internalized curves. 

If you're passing surfaces or solids that would be a problem, I would suggest that you extract the relevant curves, explode them and then pass these curves to the obstacle curves input.

If it still doesn't work let me know and i'll try to help out!






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service