algorithmic modeling for Rhino

I recently received multiple questions about the orientation study and I hope this discussion answers the majority of them.


Orientation study is a feature integrated to the analysis components (radiation, sunlight-hours and view analysis) which let you study the effect of the orientation of your building and the analysis result. When you come to a question similar to "what is the orientation that the building receives the most/least amount of radiation?" is probably the right time to use this component.


I'll try to explain the steps using a simple example. Here is my design geometries. The building in the center is the building to be designed and the rest of the buildings are context. I want to see the effect of orientation on the amount of the radiation on the test building surfaces from the start of Oct. to the end of Feb. for Chicago.

First I need to set up the normal radiation analysis and run it for the building as it is right now. [I'm not going to explain how you can set up this since you can find it in the sample file (Download the sample file from here)]

Now I need to set up the parameters for orientation study using orientationStudyPar component. You can find it under the Extra tab:

At minimum I need to input the divisionAngle, and the totalAngle and set runTheStudy to True. In this case I put 45 for divisionAngle and 180 for the totalAngle which means I want the study to be run for angles 0, 45, 90, 135 and 180.

[Note1: The divisionAngle should be divisible by totalAngle.]

[Note 2: If you don't provide any point for the basePoint, the component will use the center of the geometry as the center of the rotation.]

[Note 3: You can also rotate the context with the geometry! Normally you don't have the chance to change the context to make your design work but if you got lucky the rotateContext input is for you! Set it to True. The default is set to False.]

You're all set for the orientation study, just connect the orientationStudyPar output to OrientationStudyP input in the component and wait for the result!

The component will run the study for all the orientations and preview the latest geometry. To see the result just grab a quick graph and connect it to totalRadiation. As you can see in the graph 135 is the orientation that I receive the maximum radiation. Dang!

If you want to see all the result geometries set bakeIt to True, and the result will be baked under LadyBug> RadaitionStudy>[projectname]>  . The layer name starts with a number which is the totalRadiation.


Views: 6253


Replies are closed for this discussion.

Replies to This Discussion

Hi Mostapha

Is there anyway to get all the results without having to bake them? I know its possible to use totalSunlightHours to see the results but the analysisMesh only has a single geometric output. It would simplify workflow if you didn't need to bake it to see all the results. It would also be cool to get a list of the rotations as an output rather than having to calculate them separately.

Hi Paul. It's indeed possible and sounds like a good idea. Added to github >


Love the plugin, but I am getting an error here. (Probably a user error). Anyway, my building is not rotating at all. The yellow surface component is after I attached it so it does not apply here. I attached the definition with the data internalized. 

Thank you in advance!


Hi Erik,

As you can see from totalRadiation output you're getting the results for are the orientations. Ladybug doen't output the rotated geometry. If you set bakeIt to true the result for all the orientations will be saved to Rhino and you can check them separately.


Hello, Mostapha,

This component is really helpful. It works well for brep, but when I apply it to surface, the result became weird. I rotated the surface of 180 degree, and the 180 degree result (which is the same location with 0 degree) is way much lower than the first one. It seems like after rotating 90 degrees, the result became inaccurate. Is it related to the norm direction?



The results look fine for me. Rotating 180 (or 135) is like the surface is facing north (north-east), having then less radiation.

What were you expecting?

Maybe, instead of a single surface, you shoul try a thin box.


Hi, Abraham,

You are right, I tried with the box and it works well. The reason I ask about the surface situation is for the data size. If I use a box, it will give me result for all 6 surfaces while I might only need one (like simulate for solar panel), the results then became quite redundant.

But I think I should try 360 degrees instead of 180, that should work.







  • Add Photos
  • View All

© 2020   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service