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:
Download these archives, which contain sample source code, presentations (Revit2014APITrainingPresentation), Word documents and more:
Revit 2014 API Labs
Revit 2013 API Labs
If you want to submit Revit API code and macros for public review and use, check out:
Now, we just need someone to make an API add-in that hooks into BitBucket (somehow), and downloads and installs macros automatically into the Revit session 🙂 We would essentially have an unlimited store of easily accessible plugins in an open source repository … cool, huh?
To submit code, you should login or register for Bitbucket, then send a message to:
Harry can give you write access.
A public Git repository for sharing Revit Macros at BitBucket | Boost Your BIM – making Revit even better
If you want to learn more about it and code sharing generally, check out
What is version control, and why should you care? | Boost Your BIM – making Revit even better
Most of you already know how highly I recommend Harry Mattison. He is completely at peace with the Revit API, and he knows instinctively how to solve Revit coding challenges that are out of reach for most of us.
For less than $150, you can learn the Revit API from the master, at https://www.udemy.com/revitapi/
Harry was an employee of Revit Technology Corporation and Autodesk from 1998 to 2012 and spent four of those years developing and testing new Revit APIs in areas such as the Family Editor, Massing, Analysis Visualization, Dynamic Model Update, and Views & Schedules.
I have personally started reviewing the classes, and the level of expertise targeted by this course is very appropriate — intermediate to advanced Revit users, with a comprehension of basic programming techniques. Not too basic, and not too complicated 🙂
I was going to make a script or something myself, but I figured there is a API-guy out there waiting to make something useful and simple like this.
Challenge: make a tool (can be an application, script or CMD) that locates and backs up all API add-ins from Revit add-in files. Ideally, this tool would place the result in a ZIP file with subfolders that are logical and could be ‘restored’ to a new / clean installation of Revit.
Note: if you are going to ‘take the challenge’ I recommend that you post a comment so that you can co-ordinate with other coders if necessary.
Some of my notes below:
Need at least 2 x add-in folders and any referenced dlls
On my PC:
Wiki – addin locations:
You may have already heard about Boost Your BIM – a new and quite prolific programming (API and macro) blog for Revit by Harry Mattison. If his recent posts are anything to go by, this blog should be on your ‘must follow’ list. Also, I could be wrong, but I think his profile image might be a reference to my post here…
On Twitter at twitter.com/BoostYourBIM
Here is some recent posts that I found to be pretty interesting:
Macros vs. Add-Ins – What’s the difference?
The code for your macro is stored in an RVT file if it is a document macro. If you create an application macro the code is stored independently on your computer … The code for your Add-In gets compiled into a DLL file.
Revit API Wiki and RevitAPI.chm
Revit API Developer’s Guide Wiki at http://wikihelp.autodesk.com/index.php?title=Revit/enu/2013/Help/00006-API_Developer%27s_Guide.
Scrubbing Out Dimension Styles
Harry provides a deleting / purging macro that handles both dimensions in sketches and dimensions in unplaced groups.
Save a Set of Elements with SelectionFilterElement
Although full Revit 2013 (Onebox) has built-in Saved Selections, you can see how little code is required to actually make basic selection filters on this post.
I previously posted about a free add-in for single selections, and there is also Case Apps Reusable and Sharable Selection Sets…
Making Lines Not Print (with Events)
I can’t say I’ve ever wanted this … but it basically switches a certain line style to white before printing, then back afterwards…
Some info about Harry (from BIMopedia):
Harry joined Revit Technology Corp in 1998 and spent his last few years at Autodesk as a software developer on the Revit API team. Now Harry has set out on this own and would like to help more people appreciate and benefit from the Revit API.
Thanks to Jeremy Tammik at The Building Coder:
The recording of the Revit 2013 API webcast that we held on May 17 is now available from the ADN DevTech Webcast Recordings Archive, entering “Revit API” as the course topic, or directly from here.
The 34 MB zip file includes:
- Slide deck
- Code Samples
The webcast addresses two main areas: an introduction to Revit programming for beginners, including a quick walkthrough of basic concepts, and a discussion of some of the new functionality provided by the Revit 2013 API, which will be of interest to both beginners and experienced developers. The two parts are roughly equal in length.
The Building Coder: Revit 2013 API Webcast Recording