Sun hour analysis using Dynamo and Revit (no Ladybug)!
For all those people out there that can somehow afford a $4k Revit license each year, but not a $1.5k Rhino license forever. Yarr matie.
0:00 Intro
3:24 Model setup
04:56 Sun and shadow settings
06:38 Assess test surface domain
08:08 Preparing domain function
14:17 Using our function
16:16 Make test grid/tiles
21:05 Analysis period
23:02 Time step processing
24:44 Datetime processing
28:24 Sun vectors (Python summary)
32:26 Crash and recover
34:25 Visualize sun path
36:01 Compensate for true north
37:00 Raybounce and tallies
42:00 Adaptive panel to show result
44:50 Running and testing
50:09 Outro
I hope you enjoy the session and learn something new! Feel free to comment any feedback/questions below, or follow my channel if you enjoyed this.
Learn more about Dynamo at;
primer.dynamobim.org/
Software used;
Autodesk Revit 2020: www.autodesk.com/products/rev...
Dynamo: dynamobim.org/
DaVinci Resolve: www.blackmagicdesign.com/au/p...
OBS: obsproject.com/
Hardware used;
Webcam: support.logitech.com/en_us/pr...
Laptop: www.msi.com/Workstation/WT75-...
Microphone: www.jbhifi.com.au/products/ro...
Audio interface: focusrite.com/en/usb-audio-in...
#revit #dynamo #bim
Пікірлер: 39
Thanks a lot for this tutorial, I am happy to see you back!! Take care.
@AussieBIMGuru
Жыл бұрын
Glad to be back!
Great tutorial Gavin! Love the description of the video 😉
@AussieBIMGuru
Жыл бұрын
Cheers!
Hi Gavin! Awesome tutorial! Thank you very much for sharing.
@AussieBIMGuru
9 ай бұрын
You're welcome mate!
This is the one master! thank you
@AussieBIMGuru
Жыл бұрын
You're very welcome!
you're back ;)))
@AussieBIMGuru
Жыл бұрын
Sure am!
Wonderful work Gavin, thanks so much for sharing this ! Have you considered building a script for an isovist analysis ?
@AussieBIMGuru
Жыл бұрын
Not currently as grasshopper does this quite well. They have one in the space analysis package for dynamo as well.
For anyone else following along and getting the multiple curves error message, this can occur for multiple packages being installed which call upon Curve as a class or function (don't quote me on that though) I have attached a revised version of the code below which solved the issue for me - hopefully you don't mind me posting this Mr BIM Guru :) def GetParams(crv,s) { len = Autodesk.DesignScript.Geometry.Curve.get_Length(crv); inc = len/s; cei = Math.Ceiling(inc); spc1 = 1/cei; spc2 = len/cei; seq = spc1/2..1-spc1/2..#cei; return [seq,inc]; };
@AussieBIMGuru
10 ай бұрын
Thanks! Yes some packages borrow similar name spaces in design script such as Orchid so in that case writing the full function is needed.
Thank you for sharing this workflow. One question, how can we adopt this workflow to calculate daylight intensity inside the building?
@AussieBIMGuru
Жыл бұрын
Unfortunately daylight is far more complex and you would need to use an engine such as Radiance at this point. This is supported via Grasshopper/Ladybug, but Autodesk doesn't offer any detailed/accurate tools for this I believe.
Have you also been looking at the Pollination tool by any chance?
@AussieBIMGuru
Жыл бұрын
Yes it's great for firms running regular perscribable or heavy studies. If we do more radiation studies I expect to use it more actively.
Hi! Amazing, but could i use the same path and principles to calculate the natural luminance inside? Thank you!
@AussieBIMGuru
7 сағат бұрын
Generally not so much as youd need to work with material properties and incident raybouncing. For that I'd suggest looking into Honeybee and Ladybug tools for Grasshopper.
Once again an awesome tutorial... 😀 If you don't mind I have a question. I'm unfortunatly getting an error right in the first code block, and I'm really stuck. I have the Orchid package installed and it's apparently creating a conflict, "Multiple definitions for 'Curve' are found", and "Multiple definitions for 'Math' are found". Is there a way to fix this issue, Or do I have to remove the Orchid package?🤔 (p.s. I've already tried putting in "Autodesk.Designscript.Geometry.Curve.Length" and "DSCore.Math.Ceiling" as Dynamo suggested, but then the code block returns a null, and the Surface.PointAtParameter also subsequently can't work...)
@AussieBIMGuru
Жыл бұрын
Yes if the DS prefix isn't working then it may require an uninstallation - Orchid uses some classes with similar names that can cause ambiguity in code blocks.
@b_rodwell_SGP
11 ай бұрын
Hi I think we are having the same issue I managed to resolve this earlier thanks to the help of ChatGPT and a little trial and error. The issue can lie with multiple packages which use Curve as a naming/ class type which is likely the reason the conflict or issue with how the "Curve" class was referenced, which led to the error we encountered. The code I am now using to get this to work is as below (Line 3 has been changed from Gavin's code in the video the rest I believe is as the Guru himself has shown) def GetParams(crv,s) { len = Autodesk.DesignScript.Geometry.Curve.get_Length(crv); inc = len/s; cei = Math.Ceiling(inc); spc1 = 1/cei; spc2 = len/cei; seq = spc1/2..1-spc1/2..#cei; return [seq,inc]; };
Great tutorial, Do you know how can I make ladybug work with dynamo and grasshopper or any package that can assume energy consumption ?
@AussieBIMGuru
11 ай бұрын
I believe the honeybee module for ladybug can conduct energy analysis. I havent used it a great deal personally but their website has some tutorials about this, as well as Phil Galvan's channel. Generally Dynamo wont be up to the task so maybe rhino inside revit and grasshopper could be.
@user-yn7qs6vu7q
11 ай бұрын
Okay, I got it. could you please how to deal with rayBounce with points not elements as i'm working with parametric form not a modeled one. thanks!@@AussieBIMGuru
Hi Sir. Thank you for this video doing dynamo without ladybugs. I have one query. I was working on the Al Bahar building in Revit and Dynamo. I watched your video of the same building in Revit. However, I am not able to work on the sun path diagram and analysis since Ladybug doesn't work in Revit 2024. and this video shows an hour analysis. I want to know how can I do that movement of panels with sun movement in Revit and Dynamo. I am not able to get that video or related to it something that can solve the issue. Hope you will help me to figure it out. Thankyou in advance sir.
@AussieBIMGuru
4 ай бұрын
I will have a video on channel next week which shows a node in Crumple that can get the sun directions. This can be used instead of ladybug.
I am running into an issue where the sun hours report more than possible hours. I set the time range to be 02:00 and 21:00. Most are reported accurately with 13/14 upper limit hours which I verified with local data and summer solstice hours. However, when I do dynamo player and varying faces - I am seeing that the sun hours are 19/20, which can't be possible since the project isn't located in alaska... Also - my dynamo player is picking up bounces from other panels created :(
@stefanobennett105
Ай бұрын
If it's important to note - I am doing this on pitched roofs - so the surface U/V isn't perfectly trimmed to match the surface profile
@AussieBIMGuru
Ай бұрын
I would suggest visualizing the rays as lines to see what is happening as it sounds like an error caused by the sun angles. If you need to divide pitched surfaces you could try working at the plane of the surface although it's a bit different to my approach, would take some extra work beyond what I've covered here.
Hi Gavin I asked a question about it I did not understand what node you used to get the view from the sun vector 🙁 Can you help me?
@AussieBIMGuru
10 ай бұрын
In this case I didn't use a dedicated node, I ended up using Python for that part of the workflow. The only way to get a sun vector is to ask a view for its sun direction, so the python node cycles through changing the time of day and getting the sun direction each time.
is anyone having issues with the script deleting tiles when you run the script after running it before? Ive tried the script I wrote when watching along as well as Gavins script from Github. It worked perfectly for about a month and now its deleting tiles. Please help :(
@AussieBIMGuru
9 ай бұрын
Run it via dynamo player. Sounds like an element binding issue which happens if you create elements in a dynamo session.
@Bdizzle304
9 ай бұрын
@@AussieBIMGuru thank you Gavin I'll give that a try and see if that resolves the issue. I was running via Pyrevit before as I'd set the script up on a custom toolbar. Would there be a way of avoiding the elements binding as I'd like to keep using this in practice via the pyrevit plug in we have set up
@AussieBIMGuru
9 ай бұрын
@@Bdizzle304 replace all nodes that create elements, dont run in dynamo then run via player. I believe pyrevit unfortunately opens the script so that might be an issue too.
Can you share the Python's script?
@AussieBIMGuru
6 ай бұрын
Its over on my github.