I was hoping someone could help me in this problem. As my project require us to see all 8 orientation, North, South, East, West, North-East, North-West, South East & South-West, I’m able to retrieve only North, South, East & West despite rotating the building to 45 degree (Including setting the True North) which led to the same orientation result with the same wall respectively. I have went to multiple discussion forum and everyone seem to be doing only just 4 orientation(N,S,E,W). Hope someone might have encounter this problem could help me.
I have done something like this for a 16 point compass before. Currently learning how to make a package so I can release these. What you want to do is create a few vectors. One for each wall base point outwards, another from 0,0,0 to 1,0,0 and compare the vector angles to the site angle using a vector angle node. Finally use something like x<= ‘angle’ && x>= ‘angle’ to find your orientation of the element where each comparison returns the direction.
I was able to solve it using this method, thank you.
Glad to hear!
Hi notkssy, is it possible to share your script as I have the same problem but still very new to dynamo
johannes.pienaar the graph structure I suggested looks something like this one by l.rozendaal
If you don’t have archilab installed you can use my package HAPattack to get the site north vector and use my compass to select 4 8 or 16 point division. That being said it is version 0.0.1 because its in what I would call alpha right now. (feedback is welcome)
Hi SAM, Thank you for your reply. I can’t seem to download your package. I found it under the Dynamo packaged and all I could download was the ZIP file
Please advise
Regards
Pine
@johannes.pienaar, as you direct message me I just wanted to followup here that the package manager is working as intended for HAPattack as I have had other inquires.
Yes it’s working fine
Hi SAM
I ran you HAPattack script using the advance architectural model in Revit 2018. Please see attached the result. Can you assist where
I’m going wrong?
Looks like the site north vector node is broken, I may have to rewrite/make that. I will investigate
Hi
Just a follow up om the HAPattack node? Have you managed to fix yet?
Sorry I’ve gotten busy with project work. I will see what I can do this weekend.
This is exactly what I needed. Thank you.
I have not worked on this in a few years but here is a variation of code for python. You can feed it a vector normal from the surface (wall/window etc) and feed it project true north angle and have the direction returned in the 16 pt compass.
#correct for project file rotation. Azimuth is measured from model space Y axis not true North.
#convert to be inside of 22.5 degree windows of 16 pt compass
def get_wall_compass_direction(azimuth_rad, project_North_angle):
compass_points = ["N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE",
"S", "SSW", "SW", "WSW", "W", "WNW", "NW", "NNW"]
azimuth_deg = math.degrees(azimuth_rad)
azimuth = azimuth_deg % 360
index = int(((azimuth - project_North_angle)+ 11.25) % 360 // 22.5)
return compass_points[index]