We can define Autodesk Revit as BIM software used by architects, structural engineers, designers and it allows users to design a building and structure and its components in 3D, annotate the model with 2D drafting elements and access building information from the building model`s database. Revit is a mature product with an existence of more than 15 years, but the rate of a new feature has slowed remarkably.
Revit automation is the next step that follows once we know how to use Revit. Fortunately, it`s not too hard to get started. There are three methods for automating Revit. You can visually program Revit using Dynamo. You can write custom add-ins with Visual Studio. You can also write macros using Revit`s macro editor.
Dynamo is a visual programming environment for Revit. It`s an open-source software that allows you to manipulate data, sculpt geometry, explore design options, automate processes and create links between multiple applications.
In Dynamo, you can create programs, called “graphs” by connecting code blocks, called “nodes”.Each node performs a specific function and they are connected to each other with lines. One of the benefits is that you don`t need to know how to program.
On the other site, Dynamo graphs can get really complicated, because the more nodes you use, the more connecting lines you have in the graph. Also, you can`t create an interface for a Dynamo graph, so anyone else who wants to use your graph needs to have Dynamo installed. Another downside is that Dynamo is slower than the other methods.
Add-ins are the most powerful method for automating Revit, but they are also the most difficult for beginners. They are written in code (C# or .NET) using an external programming environment like Microsoft Visual Studio. Since add-ins are installed like a software, they are easier to distribute in the office environment.
One of the difficulties with creating add-ins is the learning process. You need to learn the Revit API and then the Visual Studio and then how to connect Visual Studio to Revit. Also, you need to learn how to create controls in the Revit interface.
A macro is a series of user-created commands and functions that are written using the Revit API and created in SharpDevelop. The advantage is that they don`t require to install any additional software like you do for Dynamo or Add-ins. Also, you can convert macros into add-ins. Since the code is the same, it`s easier and faster to create the macro first then convert it to an add-in.
The biggest disadvantage is that macros are not as easy to distribute as add-ins. If someone wants to use a macro, they have to open the RTV file first. Once the file is open, you can run all the macros embedded in the file. This makes sharing macros more difficult in an office environment.
Each of these Revit automation methods has their own advantages and disadvantages. Learning one of these methods will highly improve your efficiency. Automation takes time and patience, but it`s a rewarding venture. We love the third Revit automation method – Macros, do you too?