Have you ever had to pick up someone else’s project and try to figure out how it all goes together? Or maybe you were trying to delete a level, and Revit just went ahead and deleted all associated elements without telling you?
It is most commonly used by programmers in the Revit API. You may find it useful, however, in just understanding the structure of the database. You can also use it to find information that otherwise may be very difficult to obtain.
How do you get this RvtMgdDbg, and how do you make it work?
Go in to the RvtMgdDbg_0504 2009 subfolder. Then, double click the RvtMgdDbg2008.sln file.
If your PC is set up correctly, Microsoft Visual Studio Tools for Applications 2.0 should open up.
Now, just click on the ‘Build’ menu, and then click ‘Build RvtMgdDbg2008’.
If all goes well, you can now close Microsoft Visual Studio Tools for Applications 2.0.
Go to the RvtMgdDbg_0504 2009bin folder. RvtMgdDbg.dll should be present in this folder.
There are a few different ways to do the next couple of steps. I’ll just describe one simple way…
Go to your C: drive and make a folder called RVTMGDDBG.
Copy the RvtMgdDbg.dll file into the C:RVTMGDDBG folder.
In your Revit program folder (usually C:Program FilesAutodesk Revit Architecture 2010Program), open the file Revit.ini
Scroll down until you see the [ExternalApplications] subcategory.
Check the EACount= value
Change the EACount= value by increasing it by 1 (eg. if 2, change it to 3)
After the final EAAssembly line (eg. EAAssembly1 or EAAssembly2 etc), add the following lines (you need to replace the question mark with your EACount= value PLUS 1):
EAClassName?=RvtMgdDbg.App EAAssembly?=C:RVTMGDDBGRvtMgdDbg.dllThere you go! Close and save the Revit.ini file.Now, to try it out…
Make a new project.
Make a bit of wall.
Select the wall you just made.
In the Ribbon, go to the ‘Add-Ins’ tab.
Click Snoop Current Selection… button on the RvtMgdDbg panel.
A window should come up showing you the properties of the wall you made.
Or, to browse most of the Revit database at once:
On the RvtMgdDbg panel, click Snoop Db…
The window should look something like this:
You can now browse around and learn how the database is put together.Keep in mind that there may be issues and bugs with this method. For instance, on one version of RvtMgdDbg that I was using, it seemed to cause Revit to prompt me to Save Coordinates (on a project with linked Revit models using shared coordinates) – even though I had not moved the linked models.So, be careful! You might want to use this on ‘test’ projects to start with. If you want to remove this add-in, simply reverse steps 15 and 14 in the first list (remove the lines you added to Revit.ini and reduce the EACount= value by 1).Feel free to comment or contact me if you have any problems or questions related to the above method.If you are really interested in the Revit API, head over to http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2484975 and check out some of the material on that page.
Ooh La La! Does Revit really want you to see what goes on under the hood? Well, if it can help you understand Revit better, then I would suggest that it does (because it will help you know how to ‘treat Revit right’). So, how do you do it?
There are two main ways:
Using the RvtMgdDbg API add-on This is the most comprehensive method, in that it allows you to ‘Snoop’ virtually all parts of the Revit database.
Using the RDBLink Tool from Autodesk Labs This method actually allows you to modify and then update Revit model element properties.
Both of these methods expose the Revit database, which allows you see how things really go together. The Revit database is really what makes everything else possible: from environmental analysis to the basic parametric nature of elements. It’s exciting stuff!I will do individual posts on how to setup and use both these methods in the near future.