Revit add-in part of cloud-based, real-time, round-trip, 2D Revit model editor.
RoomEditorApp implements export of Revit BIM data to a web based cloud database, reimport, and subscription to automatic changes to update the BIM in real time as the user edits a simplified graphical 2D view in any browser on any device.
Here is a recent summary and overview description of this project.
Connecting desktop and cloud
RoomEditorApp is the first and oldest member of the suite of samples connecting the desktop and the cloud.
Each of the samples consists of a C# .NET Revit API desktop add-in and a web server:
- RoomEditorApp and the roomeditdb CouchDB database and web server demonstrating real-time round-trip graphical editing of furniture family instance location and rotation plus textual editing of element properties in a simplified 2D SVG representation of the 3D BIM.
- FireRatingCloud and the fireratingdb node.js MongoDB web server demonstrating real-time round-trip editing of Revit element shared parameter values stored in a globally accessible mongolab-hosted db.
- Roomedit3dApp and the first roomedit3d Forge Viewer extension demonstrating translation of BIM elements in the viewer and updating the Revit model in real time via a 'socket.io' broadcast.
- The most recent Forge sample, adding the option to select any Revit model hosted
on A360, again using
the Roomedit3dApp Revit add-in working with the
to demonstrate translation of BIM element instances in the viewer and updating the Revit model in real time via a
RoomEditorApp is a C# .NET Revit API add-in.
To install it, fork the repository, clone to your local system, load the solution file in Visual Studio, compile and install in the standard Revit add-in location, for example by copying the add-in manifest file and the .NET DLL assembly to
In order to build RoomEditorApp, you will first need to download and compile the DreamSeat CouchDB wrapper library and reference the its .NET assembly
DreamSeat.dll. This will pull in these additional DLLs:
They all need to be accessible to run the add-in. On way to achieve by copying them to the
RoomEditorApp\bin\Debug folder and running the Revit add-in from there, cf. the path specified by
Assembly tag in the add-in manifest file.
If you do not know what this means, please refer to the GitHub and Revit programming getting started guides.
As said above, RoomEditorApp interacts with the roomedit CouchDB app.
You can run that either locally, on your own system, or on the web, e.g., hosted by the CouchDB hosting site Iris Couch.
The choice between these two options is made by the Boolean variable
If you use the web hosted system, i.e.,
_use_local_db is set to
false, you have no more to set up.
In the former case, you need to install and run both Apache CouchDB and the roomedit app itself locally on your system.
Good luck and have fun!
- Reimplement the roomeditor database using node.js and MongoDB instead of CouchDB, like the FireRatingCloud fireratingdb node.js MongoDB web server.