CAD Blocks to Revit Families using Dynamo!

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ส.ค. 2024

ความคิดเห็น • 76

  • @fredpox
    @fredpox 3 ปีที่แล้ว +8

    Hi Gavin, such a great tutorial, useful as ever!
    I just want to share my personal experience on the LinkDWG issue on later releases which does not show ImportInstances.GetCOMObjectsByObjectDBX.
    Actually in the release I'm using is gone too, but I managed to set a little tweak to get it back.
    I'm sharing this to give continuity to your tutorial and to help others to get it to work.
    You can test yourself the solution and share the solution on LinkedIn too if you wish to.
    As others might have noticed there's a node called ImportInstances.GetCOMAnnotationsByObjectDBX.
    By diving into the definition of such custom node I did find many of the outputs were available but disabled.
    Then I copy/pasted the whole custom node content and created a new custom node getting back all the outputs and that did the trick.
    Some more notes from my experience:
    * Autocad application must be open in order to get the Object DBX to work
    * dwg file shall be closed since the Python script underneath opens such file to get all the info
    * in the Revit project I created a selection set from the selected model element (I used the SelectionSet.ByElements node from Clockwork) - it could be optional but in my case it worked better
    Revit version: 2021
    Dynamo version:
    * Core 2.5.0.7460
    * Revit 2.5.0.7586
    Packages used:
    * Clockwork v.2.3.0 (SelectionSet.ByElements)
    * LinkDWG v.0.3.91 (GetCOMObjects, BlockProperties)
    * spring nodes v.204.1.0 (SelectInRevit)
    * my own package (for the custom node changed from LinkDWG.GetCOMAnnotationsByObjectDBX as described above)

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว +2

      Awesome work, thanks Paolo! Strange that the author disables their node...

    • @fredpox
      @fredpox 3 ปีที่แล้ว +2

      @@AussieBIMGuru yes, actually sounds weird. Maybe they created the new node only for annotations and they "forgot" to leave the original one as it was. Maybe I'll ask in the dynamo forum to see if I can reach them.

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว +4

      For everyone's reference, the fixed node by Paolo has been added to the zip on github;
      github.com/aussieBIMguru/Dynamo_Scripts/blob/master/ABG_200220_CADBlocks.zip

    • @danielsellam-kazoula9970
      @danielsellam-kazoula9970 3 ปีที่แล้ว

      @@AussieBIMGuru Thank you and Paolo for this custom Node. How can we add it to our dynamo package library ?

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว +2

      I would look into genius loci package instead, this has better nodes for reading blocks now vs linkdwg.

  • @AussieBIMGuru
    @AussieBIMGuru  4 ปีที่แล้ว +2

    Noting I use version 0.2.2 in this video.
    Later builds appear to fail to collect the linked document DBX, suggest using the older build for now.

    • @mozadc
      @mozadc 4 ปีที่แล้ว

      what is your dynamo version in this video?

    • @luupieper
      @luupieper 3 ปีที่แล้ว

      I don't know why but I'm trying with the 0.2.2 version and it's not working anyway ... any tips? Thank you!

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว +1

      2.0.3 is my version.
      I've heard from many having trouble with this package unfortunately, seems to only work in some dynamo builds. Annoying!

    • @luupieper
      @luupieper 3 ปีที่แล้ว +1

      @@AussieBIMGuru Thanks! At the end I decided to use a workaround: use extract data command at autocad. it's been working pretty well actually :) It is a nice option for those who had the same problem

  • @Matamjid68
    @Matamjid68 4 ปีที่แล้ว +2

    This is useful.
    I have a question maybe its irrelevant to the subject... can you explain the mechanism you'r using with google remote ? Any server? .... ThankX

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว +1

      I used the web version of google remote desktop. Latency became an issue so I record from my own PC now though.

  • @PubuduNipun
    @PubuduNipun 11 หลายเดือนก่อน +1

    Hi, Your contents are soo helpful thanksdoc. I'm wondering , I have 200 tree blocks placed in AUTOCAD and now i want to replace all those 2D CAD blocks in revit with a 3D revit tree, Do you know a method to do this? It would be great if you could give a advise

    • @AussieBIMGuru
      @AussieBIMGuru  11 หลายเดือนก่อน

      Yes this workflow could likely do it as long as you have equivalent families for your autocad blocks. You could use index of/get item at index to check the equivalent family per block to place, using something like an excel file with the two columns being the CAD/Revit equivalents.

  • @zooma47
    @zooma47 4 ปีที่แล้ว +1

    good work

  • @Archgyan
    @Archgyan 4 ปีที่แล้ว +1

    What if the tree blocks names from CAD were different & not matching those of the Revit Family names?
    Is there any package which renames those blocks on Dynamo & then make them match with Revit families?

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว +1

      I would create an excel file with two columns to match the CAD vs Revit names. Unfortunately Dynamo would have no way of knowing that the two relate without some sort of match-able criteria or convention.

  • @immi85
    @immi85 4 ปีที่แล้ว +1

    If we don't have z value in autocad block(all block z value zero) and we have topography then what we will do?

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว +1

      Ignore AutoCAD z and host to the topography once it's added.

  • @ravichandra-up1nu
    @ravichandra-up1nu 4 ปีที่แล้ว +1

    The script is very useful Gavin...!! I have a question.. I exported the revit sample file to dwg and tried to insert air terminals back into the revit and they are placed successfully. I rotated the family instances by taking the rotation degree values from cad but they are not rotated to the same position There is a dicrepancy in that which i could not figure out. Please help me on that

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว

      It probably depends on the origin of the rotation point, and also the rotation of the duct vs the Dynamo world axis'. It's fairly complex to cover in simple terms - would require you to analyze the block rotation from the DWG versus the default family rotation value, then set the family rotation to this difference.

  • @malthygdk
    @malthygdk 3 ปีที่แล้ว +1

    Hi Gavin, as per usual I love your content, and this was very helpful so thanks!
    I have a question regarding the insertion point. Once you have that in place and the 3D family is placed using the correct (center point in my example) How do you use rotation for that same object.
    I have a nested family in my family and when using FamilyInstance.SetRotation the default rotation point is not in the center but slightly off. Do you have any knowledge to how you can reallocate or overwrite the rotation point in Dynamo or a script that does this for you?
    Hopefully this makes sense. Thanks

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว

      If after the rotation you compare the placement point to the families new position using Element.SetLocation. If this reverts the rotation, then you may need to manually calculate the difference as a movement prior to rotation instead to compensate for this motion. No node I know of can rotate an element by any method other than its placement point.

    • @malthygdk
      @malthygdk 3 ปีที่แล้ว +1

      @@AussieBIMGuru Thank you so much for the quick reply! That seems to do the trick with Element.SetLocation.

  • @rezwanulhoque117
    @rezwanulhoque117 ปีที่แล้ว

    if we set unit in feet or inch in revit, how to manage in dynamo?

    • @AussieBIMGuru
      @AussieBIMGuru  ปีที่แล้ว

      The unit convert utils class can manage this in revit API or if in dynamo you can use the convert unit node. Generally I only recommend building scripts for metric or imperial versus both.

  • @dgmixvlog7480
    @dgmixvlog7480 3 ปีที่แล้ว

    Hi Sir. I dont know how to create custom script in dynamo. I just use purely revit. im working right now with placing hundreds of trees in my task. ive just tried to follow your process step by step, but to no avail, some nodes you mentioned is not available even though i already installed all required packages. Can you update this tutorial sir? or help me with this? Thank you

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว

      I may revisit this in future, but the node I would use is the CAD block node from Genius Loci package. Unfortunately the LinkDWG package doesn't work anymore. You can also use the dataextract command in AutoCAD to export block positions and names to excel but that is a more complex workflow

  • @tingyunmao8861
    @tingyunmao8861 4 ปีที่แล้ว +1

    Excuse me, I would like to ask you a question. If my imported cad drawing moves, and then I use the linkdwg node, the coordinates of the points will move. How can I modify the coordinate system to make the points in the right place

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว

      I would add an additional translation (move) function in Dynamo as well to match the discrepancy.

    • @tingyunmao8861
      @tingyunmao8861 4 ปีที่แล้ว +1

      But the key point is that I can't find the origin and rotation Angle of the CAD drawing. I don't have a node here that can read the position of CAD

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว

      @@tingyunmao8861 use a common reference or annotated coordinate in the CAD file (or the Id command in AutoCAD to identify a coordinate).
      You can then measure and adjust the discrepancy between revit and CAD coordinates in Dynamo.

    • @tingyunmao8861
      @tingyunmao8861 4 ปีที่แล้ว +1

      @@AussieBIMGuru In other words, I will mark the origin of CAD and revit on revit, and then measure it by dynamo and transform the coordinates

    • @tingyunmao8861
      @tingyunmao8861 4 ปีที่แล้ว

      @@AussieBIMGuru I'm just going to make a family and I'm going to put it at the two origin points, and then I'm going to use dynamo to figure out the coordinates, right

  • @askrinassim7290
    @askrinassim7290 4 ปีที่แล้ว +1

    please Dynamo allows you to replace the color of the centerline duct and pipe

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว +1

      I think object styles do that.

    • @askrinassim7290
      @askrinassim7290 4 ปีที่แล้ว +1

      if I change the colors of the pipe system, the color of the axis also changes

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว +1

      @@askrinassim7290 yes i did some reading and it seems that it cannot be changed independently;
      forums.autodesk.com/t5/revit-mep-forum/view-problem-colors-axis-ducts/td-p/6420828

  • @rezwanulhoque117
    @rezwanulhoque117 ปีที่แล้ว

    How to scale dynamo geometry point?

    • @AussieBIMGuru
      @AussieBIMGuru  ปีที่แล้ว +1

      If your origin is consistent you can get the point xyz values, multiply by a factor then make new points with the new values.

    • @rezwanulhoque117
      @rezwanulhoque117 ปีที่แล้ว

      @@AussieBIMGuru ok.

  • @fayazmohammad7688
    @fayazmohammad7688 4 ปีที่แล้ว +1

    Please show CAD Blocks to Revit doors and windows using Dynamo

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว

      It would be a similar workflow, you would need to find the block origin and how it relates to each door/window family. Then you could find the point that it sits at in host walls. I probably wont get back to the LinkDWG package for a while as I don't use DWG references very often in my consulting work, but maybe try and see how you go with experimenting with it!

    • @fayazmohammad7688
      @fayazmohammad7688 4 ปีที่แล้ว

      Thanks

    • @fayazmohammad7688
      @fayazmohammad7688 4 ปีที่แล้ว +1

      I'm using the same work flow for doors/windows family some areas window are created but some areas windows are deleted automatically in dynamo. please help me on that

    • @AussieBIMGuru
      @AussieBIMGuru  4 ปีที่แล้ว

      @@fayazmohammad7688 they must be failing to place or host. Maybe try using springnodes for the hostedinstance.bypoints node if not already.
      It could also be the family and the height its placed at, if it has no wall or only part of a wall sometimes it fails to host.

    • @fayazmohammad7688
      @fayazmohammad7688 4 ปีที่แล้ว +1

      @@AussieBIMGuru Thanks for the reply I'm using springnodes only,but windows are deleted at some areas.
      Is their any alternate method for placing the doors and windows ,I'm getting the exact points from cad plan ,But windows are deleted at that points in dynamo.Please Guide me on that It was very helpful for me

  • @just_a_statistic
    @just_a_statistic ปีที่แล้ว

    i think you should also tell the package version.

    • @AussieBIMGuru
      @AussieBIMGuru  ปีที่แล้ว

      Bit late to add them now unfortunately!

    • @just_a_statistic
      @just_a_statistic ปีที่แล้ว

      @@AussieBIMGuru do u rem now ?

    • @AussieBIMGuru
      @AussieBIMGuru  ปีที่แล้ว

      @@just_a_statistic nope, its been a while since i made this one. Generally its best to use latest versions of packages.

    • @just_a_statistic
      @just_a_statistic ปีที่แล้ว

      @@AussieBIMGuru but the latest package doesn't have the nodes u used.

    • @AussieBIMGuru
      @AussieBIMGuru  ปีที่แล้ว

      Contact the package manager or try the package version dated around the upload date of this video. I'm nearly 100% sure there is nodes in genius loci to do this currently. Look in the package, dont just search.

  • @kingsaf90
    @kingsaf90 3 ปีที่แล้ว +1

    Have you ever thought of just getting into programming and 3x-ing your salary ?

    • @AussieBIMGuru
      @AussieBIMGuru  3 ปีที่แล้ว +2

      Yes but programming culture is quite toxic from what my mates in there tell me. Serious mental burnout and competition. I also like the field of architecture and the nature of problems I solve within it. Debugging wpf doesn't excite me as much!
      I actually make at least double what most architects do around me just by consulting and selling my content so life aint too bad! Great question though, and appreciate people asking it. AEC salaries on average aren't great, need to negotiate and sell your skills hard to break the mould.