Project breps on a hemisphere surface

Hi everyone,

I’ve a problem with a projection of some buildings on a hemisphere. Actually, I want to calculate a Sky View Factor value, so firstly I used ‘deconstruct brep’ command to get points, and then I created lines from test point to that ones. Secondly, to get a projection of building on the hemisphere as a surface, I tried to use ‘project curve on brep’ command but that results in intersection points. I think that I can create a surface from this point but it is not exactly what I want… so I couldn’t figure out how to do this… I’ll add what I’ve done and what I want to have… well, I would be thankful if you have any suggestions…


Project on (29.2 KB)
Project on Hemisphere.3dm (77.5 KB)

this is as close as i can get :wink:
it creates an outline of those points & projects them back onto the dome. (35.6 KB)

1 Like

I don’t currently have it installed but most probably you can intersect ladybug’s shadow study with a hemisphere and produce the outcome that you want

Thank you so much!!! Because my requirement is getting a closed surface, I tried to add something to your solution… I couldn’t get it on the hemisphere, but I did something else :smile: At least, now I have a virtual fisheye image that helps me to calculate projected surface areas.

Thank you for your answer, but I’m trying to get this without using any plug-in (like ladybug)

Like that? Had to rebuild your brep, cause I got weird brep edges after deconstruct brep. Didn’t check your script, so I don’t know why. Anyway, hope this is what you’re after.

Project on (38.2 KB)

1 Like


with a bit of math you can calculate this by going from Cartesian to Spherical coordinates and from there you simple type in these coordinates into the parametric sphere equation to get the projection sphere in world space. (19.7 KB)

just in addition: It might also be a good idea to rebuild your curves afterwards


I was playing around with this problem and I remember something a friend of mine once said:
“Don’t think like an academic”
So, here is a poor man’s spherical projection: the buildings are converted to planar cardboards and then projected onto the sphere.
It’s not accurate but produces a clean surface.
also the ‘cardboards’ have to be outside the sphere. That can be easily fixed but for buildings that are too close the distortion is so big that it becomes pointless. (56.6 KB)

1 Like

I think we got enough solutions now :smiley:
Nice one @TomTom btw :slight_smile:

I think so, too :slightly_smiling_face:

Thank you guys for all your great solutions!
@tim.stark @TomTom @anikolo

Additionally, I would like to inform you smt about that I couldn’t figure out. When I increase the number of the selected buildings, the model gives error. For example, everything is fine with two buildings, but with more than two buildings, projected surfaces cannot occur due to gaps between lines or intersections… :slightly_frowning_face:

Didn‘t tested the script further. I will have a look at this when I‘m home from work :slight_smile:

Thank you! :slightly_smiling_face:

I saw you’re still on this so I had another go at it.
This time it’s the real thing and it combines the outlines of buildings that partially occlude one another. (75.8 KB)

1 Like

Works on Rhino 5 with an absolute tolerance of 0.00001.
Unfortunately in Rhino 6 doesn’t work at all. The RegiouUnion component complains about:

  1. Solution exception:Object reference not set to an instance of an object.

Any ideas? Or is it a bug in R6?

Unfortunately I haven’t upgraded to 6 yet. Cannot help you there…

We are in the middle of a project using SVF and we are very grateful to get such a good file.
But I tried your algorithm, and unlike the pictures you posted, only two plabnes were created. Even though we use the rhino 5 to do it.
So we ask for help…
Please help us!:disappointed_relieved:

an old topic but maybe this also help someone
use extrude point and intersection (29.7 KB)

you’re lucky…
It’s been months since I last entered hehehe

I’ve uploaded a better solution, but it still has a problem: since it translates points to polar coordinates, whenever a geometry is positioned on the x axis of the central point, it falls appart
(e.g. if a building is between 5 degrees and -5 degrees, it covers 350 degrees instead of 10)
I cannot dedicate more time but I showed you the problem you can either solve it or make sure to keep the x direction of your central point clear. :slight_smile: (29.5 KB)

1 Like

Wow,Thank you so much…Now we can move on to the next level!!
Thank you again. If we have any questions, I’ll contact you again.