Place Revit families by CAD block location using Dynamo!

  Рет қаралды 14,912

Aussie BIM Guru

Aussie BIM Guru

Күн бұрын

Пікірлер: 69
@thinking4awhile
@thinking4awhile 2 жыл бұрын
Thank you for yor time and dedication in helping us navigating this world!
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
You're welcome Jessica, happy to make the journey that bit more direct!
@danielswearson1360
@danielswearson1360 2 жыл бұрын
You’re the man, Gavin.
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
Cheers Daniel!
@frederickskmucktoom3550
@frederickskmucktoom3550 Жыл бұрын
Great content mate as usual. Keep it up!
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Cheers!
@BIMGenie
@BIMGenie 2 жыл бұрын
Basically the source file (CAD) needs to be using a block... I see this helpful with Landscape drawings and placing trees in Revit workflow.
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
Yes it has limited use case, but in principle relies on the blocks. Check out this great addin made by Bird tools since this video that does a similar thing: www.birdtools-developers.com/cbr.html
@KableTdi
@KableTdi 3 жыл бұрын
Also, could you make a video on advanced selection in Dynamo? I'm talking about selection on multiple levels with filtering elements within a specific area/scope box area from revit. For cases when you have large buildings and you want to select a specific element on all floors on a particular part of the building instead of whole building or level. Thanks!
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
Usually I'd use packages like Genius Loci for this - suggest checking them out. There should be quite a lot of advanced selections in there and they're typically exposed Python as well.
@ArchAhmadWaheed
@ArchAhmadWaheed Жыл бұрын
Really helpful! Thanks Gavin
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Glad it was helpful!
@damirces
@damirces 3 жыл бұрын
Really grateful for the tip and for the concept how would be possible to do it. In practice in the native dwg file origin point of the block in auto Cad file practically never match with the Revit family because of the different approach in making of elements. Use example of the door, in the block origin can be at the edge or in the middle of the door which I was seeing usually in dwg files and by default origin inside Revit family is always in the middle of the door.
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
Yes a workflow I have used in the past is to measure the origin deviations in AutoCAD first and then compensate for them in Dynamo using an Excel list. It's a shame there isn't consistency with how we all nominate our origins but I guess it is what it is!
@damirces
@damirces 3 жыл бұрын
@@AussieBIMGuru yes. Actually first thing would be to check all blocks from dwg and then make a strategy what is easier thing to do. I repeated your script and really works smoothly. I even try to change the direction inside dwg in "clockwise" to see if Revit is gonna except rotating elements without adding -1 but didn't work.Thanks again..really cool script..
@damirces
@damirces 3 жыл бұрын
I was working yesterday on extracting the data from DWG using "CAD Block" node and something strange occurred. The node wasn't listing all blocks. System of elimination was discovered that the reason was in the polar parameter that was inside the block. When I deleted a polar parameter inside block and reload again into Revit, everything was fine. I sent this issue to Genius Loci...Aussie, do you maybe know his name?
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
Yes the package manager is called Alban de Chasteigner. Good idea to let him know, nice one!
@ArqkitHector
@ArqkitHector Жыл бұрын
Thanks for your knowledge Gavin!!! I'm a new student in that topic... I have been tried to used this workflow to place some windows and doors from cad file in revit using dynamo...but I don't feel sure if still using FamilyInstance.ByHostAndPoint... I will get a good result??? I've failed in all my attempts. What do you advice to me???
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Yes it's a bit more complex as you need to give the door/window a host as well as a placement point. I'd recommend keeping the wall lines as well as the walls they make in parallel, then get the closest point of each door/window block and find the nearest curve/point on that curve. Given you know the index of the curve, you can then get the corresponding wall it generates in the process. There are nodes in springs that can place hosted families by point/host/level/family type.
@frfeld4401
@frfeld4401 2 жыл бұрын
Hi Gavin, nice video. It's very helpful. One question - is there a way to read the block attributes and work with them? Like use them as a parametervalue
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
Not easily - I'd look into the Genius Loci package and the Link DWG package for examples of how CAD properties can be interrogated using Python and Revit API/COM objects.
@Leo_Moura736
@Leo_Moura736 Жыл бұрын
Great tips! Thanks so lot. I don't know if you said it, cause my English is not perfect. But, how can I download Cad Block?
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
There isn't really any one place I know to download a CAD Block unfortunately, they're all over the Internet.
@evanhall7943
@evanhall7943 3 жыл бұрын
Thanks for the great video! I've been in the weeds on this topic for the past few weeks. I think I have a solution for every step except I still haven't found a method of getting the CAD lines associated with the blocks. I see you built the dimensions directly into the group name and type names, but I don't think that method will be practical for our application. We'll have variable dimension in our CAD blocks. Any idea how to get the lines associated with each block? I've found other packages that let me grab every line on a layer, and that almost works, I just can't group those lines by block... Do you know any useful magic hear?
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
There was a packaged called LinkDWG that used to be able to do this but is bugged in later versions. Maybe try out older versions and see if you have luck? It also contains Python code you could try to reuse but it's quite complex.
@evanhall7943
@evanhall7943 3 жыл бұрын
@@AussieBIMGuru Yea I've looked into that without much success. I'll keep tinkering with it though.
@noetie9948
@noetie9948 3 жыл бұрын
Interesting video! Would this be harder to achieve with the Autocad/Revit API?
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
Technically the custom node uses Revit API and be viewed if you're curious. It's quite a complex python script, not something I'd know how to do without Genius Loci.
@abdelrahman5326
@abdelrahman5326 21 сағат бұрын
Need a script on how to iterate a for loop for hitting the Like button!
@AussieBIMGuru
@AussieBIMGuru 21 сағат бұрын
Haha I think KZbin would crash if we cracked the code for that one, but thanks~!
@sissaoliveiraguimaraes
@sissaoliveiraguimaraes 8 күн бұрын
Nice tutorial!! Really helpful! I have an issue, though. The CAD Block node shows the same origin point for all my blocks (0,0,0), even though they are placed in several different positions. Does anyone know how I can fix that?
@AussieBIMGuru
@AussieBIMGuru 21 сағат бұрын
Hrm strange, make sure their origin is correct in AutoCAD, beyond that it might require contacting the package author. If you're using Revit 2025 that could be a cause also as a lot changed in Dynamo/Revit/COM API there.
@sissaoliveiraguimaraes
@sissaoliveiraguimaraes 17 сағат бұрын
@@AussieBIMGuru I found a different solution. Instead of selecting the DWG from the model to get the insertion point, I exported the block coordinates from the CAD file using the DATAEXPORT command
@hybridphoenix7766
@hybridphoenix7766 3 жыл бұрын
I was just watching your stream with Nic from Revit Pure, and you mentioned how your old Grasshopper tutorials are perhaps "outdated" given the release of Rhino 7, and therefore you might consider remaking them. Just curious, but are you going to follow up with that some time down the line? Or would it still be safe for someone to learn from your old tutorials for Rhino 7, at least most of the information is still useful that is.
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
So my likely plan will be to build courses to capture updates as youtube content hasn't aged well and doesn't go together well in series format. KZbin will be more for 1-off topics. I hope to release a rhino inside and grasshopper course sometime in 2022 and will release a course schedule on my platform once 2 courses are live (dynamo, revit families). Hopefully before end of year. For the most part my tutorials hold up OK, but rhino inside had a UI change and heaps of nodes changed names so that series lost some relevance. My platform is under development at courses.bimguru.education. Prices will be relatively affordable versus my competition, most likely $50/course/month and eventually a subscription option for all courses per month once i have enough on there to warrant it.
@ArchAhmadWaheed
@ArchAhmadWaheed Жыл бұрын
Quick question please, when I tried to use Springs Node "FamilyInstance.ByHostAndPoint" it was OK! My question is why the new added families are not hosted to the predefined Host element? Is there an easy way to keep the relationship between the hosted families and the host element?
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Yes typically host and point is necessary for any family that needs to belong yo another element. Revit doesnt naturally know how to host things on placement in its API to my understanding, so the spring node adds that extra step to the process on placement using a dedicated API method instead of the default one given with dynamo. Typically once hosted the element should maintain the relationship to its host automatically.
@ArchAhmadWaheed
@ArchAhmadWaheed Жыл бұрын
Thanks for your quick response. According to my test, the relationship is missing. I couldn't figure the reason, so I asked If I did anything wrong.
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
@@ArchAhmadWaheed hrm generally it has worked in my testing for hosted elements. Make sure the host point is on the face of the relevant host. Beyond that I'd consult the forums for hands on tech help.
@RadiumSelenium
@RadiumSelenium Жыл бұрын
Thanks.Master but i have question. How to handle the offset? i follow your tutorial and i want to set this for placing air terminal family,but this dyn placed my family under nonsence offset.
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
As CAD files are in 2D, offsets generally aren't feasible unless you provide a value to the families to be offset by when placed. Maybe consider building a table of values to offset your blocks by and use that to raise the elevation of your family placement points.
@RadiumSelenium
@RadiumSelenium Жыл бұрын
@@AussieBIMGuru Thanks.I've learned a lot form your great contents.
@MR0MYSTERY87
@MR0MYSTERY87 8 ай бұрын
Interseting concept, i'm not python expert but is it possible to make the dynamo file read various properties block in cad is dynamic
@AussieBIMGuru
@AussieBIMGuru 8 ай бұрын
The linkdwg package can do this, but it's quite complex and buggy, hasn't worked well for a while. It's all using python.
@hugochan3185
@hugochan3185 Жыл бұрын
Hello, I am tried to reinstall the Genius Loci package and Using the CAD Block first and select the model element for the linked cad, and I got fail to fix the coordination to the angle of the block.
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Hrm it might be worth troubleshooting via the forums if the package has issues. The package owner (Alban) can usually assist further with these types of issues.
@charlietokowitz
@charlietokowitz Жыл бұрын
Is there a node that corresponds to FamilyInstance.Bypointandlevel for model groups?
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
Not ootb i think. Genius loci and clockwork may have something. This is the API method to achieve the task: www.revitapidocs.com/2015/586d4f2e-0985-2d0b-dbb7-ea6d2f704336.htm
@ravichandra-up1nu
@ravichandra-up1nu 3 жыл бұрын
Hi Gavin.. A small query on your package Crumple.. I have been trying to use the element.view node from your package but it's showing null in revit 2020 and previous versions too.. Can you please provide me a solution or nodes on how to get the view of the element.. Thank you
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
In the case of that node it will try to return the element's ownerviewid property: www.revitapidocs.com/2022/174c1adf-0be8-a4b0-41f3-9e3ea1d6b1f1.htm It will return null if the element is not view specific (aka is in more than one view). The node works with elements like text, tags etc. which belong to a specific view though.
@ravichandra-up1nu
@ravichandra-up1nu 3 жыл бұрын
Thanks for the reply.. In that case if the elements are pipe fittings etc.. How can I get the view of the element any suggesion please..
@AussieBIMGuru
@AussieBIMGuru 3 жыл бұрын
@@ravichandra-up1nu you can't really, as they are in all views in the model that see them technically. They don't belong to any one particular view. The only method I came across is get_geometry to verify if the element can be seen by a view. There is discussion about it here: forums.autodesk.com/t5/revit-api-forum/determine-if-an-element-is-visible-in-a-view/td-p/4896040
@sadamth6714
@sadamth6714 Жыл бұрын
if cad block orgin point is center,it does not work this dynamo code?right
@AussieBIMGuru
@AussieBIMGuru Жыл бұрын
You would beed to manually compensate for the difference in the code.
@lorenzopadma1954
@lorenzopadma1954 2 жыл бұрын
I can't find a way to automatically import a dwg file from a folder into revit using dynamo!! i'm getting crazy why i'm not able to read such file with a software like revit
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
I believe Genius Loci has nodes to achieve this workflow.
@lorenzopadma1954
@lorenzopadma1954 2 жыл бұрын
@@AussieBIMGuru I saw it and it gives me import instance, is there anything to help me manage the output?
@lorenzopadma1954
@lorenzopadma1954 2 жыл бұрын
@@AussieBIMGuru thank you so much for the answer tho 🥰
@just_a_statistic
@just_a_statistic 2 жыл бұрын
What if we have to place multiple blocks ?
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
Then you would need to develop on top of this workflow with a more complex script.
@just_a_statistic
@just_a_statistic 2 жыл бұрын
@@AussieBIMGuru i m stuck with 41 blocks i want to place.
@vnvstudiotv
@vnvstudiotv 3 жыл бұрын
Always refreshing to see your content, super informative as usual. Admittedly, it partly inspired my own channel. (insert shameless plug for my latest video😅 )
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
Always glad to provide inspiration :) No worries RE the plug, all for supporting other like minds - we're all in this together!
@sonnguyenxuan685
@sonnguyenxuan685 7 ай бұрын
this will not work with hosted family
@AussieBIMGuru
@AussieBIMGuru 7 ай бұрын
Yes for that you will need to develop logic to find the nearest point to the nearest logical host - much harder, but possible. For cad toolkits it would make sense to first make all walls and then doors/windows etc come after so they can have a host assigned during placement by the toolkit also.
@sonnguyenxuan685
@sonnguyenxuan685 7 ай бұрын
@@AussieBIMGuru i believe that you have make video about that right? i could not find it in your channel anymore.
@AussieBIMGuru
@AussieBIMGuru 7 ай бұрын
@@sonnguyenxuan685 i have not unfortunately. Lots of threads on dynamo forums for it. I generally dont do much cad to bim these days.
@ynn1n
@ynn1n 2 жыл бұрын
Dude, speak slower, please!
@AussieBIMGuru
@AussieBIMGuru 2 жыл бұрын
50% video playback is probably the go here. Unfortunately I only have so much time to put into YT for free.
Should architects learn Python, and why?
11:13
Aussie BIM Guru
Рет қаралды 13 М.
CAD Blocks to Revit Families using Dynamo!
20:46
Aussie BIM Guru
Рет қаралды 14 М.
The Singing Challenge #joker #Harriet Quinn
00:35
佐助与鸣人
Рет қаралды 9 МЛН
風船をキャッチしろ!🎈 Balloon catch Challenges
00:57
はじめしゃちょー(hajime)
Рет қаралды 24 МЛН
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 12 МЛН
Convert CAD Blocks to Revit Families using Speckle
8:16
Speckle
Рет қаралды 4,9 М.
Why Used Toyotas And Hondas Are So Expensive
13:45
CNBC
Рет қаралды 818 М.
Automated Revit dimensioning using Dynamo!
17:21
Aussie BIM Guru
Рет қаралды 44 М.
Compare Revit models using Dynamo (with tolerance)!
15:34
Aussie BIM Guru
Рет қаралды 5 М.
Dynamo/Revit tutorial for beginners: Creating Sheets from Excel
17:08
Aussie BIM Guru
Рет қаралды 18 М.
Door thresholds in room outlines using Dynamo!
15:41
Aussie BIM Guru
Рет қаралды 3,8 М.
Exploded Levels Diagram in Revit Tutorial
13:21
Balkan Architect
Рет қаралды 161 М.
Revit adaptive family - A curved and sloped bridge superstructure
12:20
Navisworks Clashes to Revit using Dynamo!
36:47
Aussie BIM Guru
Рет қаралды 30 М.
Webinar: Leveraging the power of automation using Dynamo!
41:22
Aussie BIM Guru
Рет қаралды 3,2 М.