Have you ever wondered if there are API commands for addressing or automating Type Catalog information in Revit? A recent post from Jeremy Tammik covered some of this. In it, he discusses the difference between
- the embedded MEP lookup tables (which the API can address using FamilySizeTable and FamilySizeTableManager), and
- the legacy text file lookup tables, which are basically a specially formatted TXT file with the same name as the RFA.
The post is well worth a read, as he also references some useful resources in the Revit help and an AU class…
What about units in Type Catalogues? Quoting directly from The Building Coder:
Question: we’re trying to create type catalogue in txt file for Radiator family. We were trying to define a parameter in watt units, with no success. How to define header for this parameter?
Answer: Look at page 15 of Martin Schmid’s Autodesk University class handout on Creating Revit MEP Content for Engineering Coordination.
Here is a sample Exhaust Fan RFA and TXT file for you to play with.
They don’t use Watts, but should give the idea if you are not already familiar with type catalogues.
Also, the families guide provides a list of the parameter types, namely, for electrical_power: watts, kilowatts, british_thermal_units_per_second, british_thermal_units_per_hour, calories_per_second, kilocalories_per_second, volt_amperes, kilovolt_amperes, horsepower.
From original post at: http://thebuildingcoder.typepad.com/blog/2015/07/type-catalogues.html
Are you struggling to address the view Underlay, perhaps in a Dynamo definition? These images may help:
The next generation of successful designers will have one important thing in common – the ability to quickly build the tool they need to accomplish a given task. Revit macro coding is one way to do this (Dynamo is another, even powerful Excel spreadsheets can qualify as BIM tools). But if you have had limited involvement with Revit macros in the past, you might be wondering “So… What is a macro anyway?”
One good place to start would in this great little article by Troy Gates on AUGI. Here are three tips from the article to get you interested:
- I highly suggest creating the macros in the application tab so you can reuse the macros in any Revit model. If you store the macro inside the model, then it is only available to that Revit model.
- The Revit API also allows the use of Microsoft LINQ (Language Integrated Query) functions. LINQ allows you to use a database-like query system to filter the elements contained in a collection. It is much more powerful and easier to use, in my opinion, when working with collections of Revit elements.
- your code needs to define objects that the Revit API will use to interface with these. These objects are called UIDocument and Document…
Read the whole article:
Introduction to Revit Macros | AUGI
To satisfy your inner API maths hunger (surely that’s a thing?), here is how Revit “thinks” about Length:
Notice the recurring “328083…” theme? This is how it relates:
Check out the comprehensive list of Revit internal units (across all unit types) at:
Revit Units .NET API: Figure Out Revit Internal Units Per Unit Type (pt. 2) – RevitNetAddinWizard & NavisworksNetAddinWizard
The DevTV videos are one of the best ways for new Revit programmers to start to get their head around things, and they have been updated for Revit 2015. Links:
- DevTV Introduction to Revit 2015 Programming Part 1 – a short video tutorial demonstrating the basic steps to start developing with the Revit .NET API – View online | Download
- DevTV Introduction to Revit 2015 Programming Part 2 – a short video tutorial demonstrating selection and filtering API through a Room Renumbering application – View online | Download
- Revit 2015 API Labs
The Building Coder: On Handling Warnings and Failures
You might be surprised at some of the cool samples that are included in the Revit SDK – which is likely already installed on your system. Here are a few notes on pathing that may assist:
Build Revit API Samples:
C:Revit 2014 SDKSamplesSDKSamples2014.sln
Copy these files
C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.0
Modify DLL path in:
C:Revit 2014 SDKSamplesRvtSamplesCSRvtSamples.addin
C:Revit 2014 SDKSamplesRvtSamplesCSRvtSamples.dll
Save the .addin to:
Have you ever experienced the “Missing Third Party Updater” message? It comes about when an Updater (addin or macro) is in use, and then does not exist on a PC that is new to the project.
You must close all local files, open and click do not warn on your central, and then recreate locals. Otherwise the locals will continue to write the tag back into your central and from your central into the locals.
In my case, this wasn’t enough to fix the issue. The updater message still showed. I did this:
- Opened the Central with Audit and Detach ticked
- Clicked the “Do Not Warn…” option
- Saved the file as a Central with a different filename
- Closed the file and opened it in the usual method (with Save New Local ticked)
- The warning did not show anymore
I don’t think the API programmers should get scared just yet, but is there a day coming when visual programming will completely replace custom code? Julien seems to think so:
“I firmly believe Dynamo could be used for many many purposes, and addin-like behavior is one…
Definitions are easy to share and update. Users can tune them with only some basic Dynamo skill. It is not the same with addins. It is a lot of work to manage and deploy. And users will not be able to tune things. Same thing for macros.”
API or not API: addins vs Dynamo in Revit | AEC, you and me.
Autodesk offers several different browser-based user interfaces for different reality capture scenarios.
They all use the same underlying ReCap REST API.
You need a special developer key to make use of the API. To obtain one, please contact ADN and ask to become a pilot partner.
ReCap is built on Amazon web services, using queues to manage jobs.
current pilot partners and their work, some of which was also being shown in the AU exhibition:
- SoundFit custom fit ear gear, creating a precise model of the inner space within the ear for prosthetics, a fully automated complete custom application.
- Kubit, dealing with AutoCAD applications for real-world as-built capturing.
- Skycatch, providing a low cost, highly flexible, intelligent & scalable aerial robotics platform.
Tilo Pfliegner of Kubit demonstrated easy integration of calibrated photos, point clouds and ReCap models into AutoCAD.
Point clouds are sometimes too imprecise for modelling needs. Using photos directly instead is better, because they are often more precise, and the photo quality is often better than the generated point cloud.
Read more / via: