A first look at the Revit API by building a simple addin from scratch. We follow Autodesk’s official tutorial, no prior programming knowledge required.
1. Requisitos Previos y Materiales
Para poder seguir esta lección de manera práctica y replicar los pasos del vídeo, únicamente vas a necesitar tres herramientas instaladas en tu ordenador:
- Autodesk Revit
- Visual Studio (con los paquetes de desarrollo de escritorio de .NET).
- El bloc de notas de Windows (o cualquier editor de texto plano).
Descarga del modelo de prueba
En la documentación oficial de Autodesk se facilitan varios archivos. Para esta primera práctica solo necesitamos el modelo arquitectónico de ejemplo: el Hotel de ejemplo. Al abrirlo verás que es un proyecto simple, ideal para hacer pruebas. Si vas a la pestaña de Complementos (Addins), verás que todavía no aparece ningún comando externo; eso es justo lo que vamos a crear ahora.
[AQUÍ PUEDES AÑADIR UNA FOTO]: Captura de la pestaña “Complementos” de Revit completamente vacía antes de añadir el addin.
2. La Arquitectura de un Addin: Archivos DLL y .addin
Para desarrollar complementos en Revit, es fundamental comprender que siempre necesitamos generar dos archivos distintos para que todo funcione:
-
El archivo DLL (Dynamic Link Library): Es el addin en sí mismo, es decir, nuestro código fuente ya programado y compilado.
-
El archivo de manifiesto (.addin): Es un archivo de texto plano que actúa como un mapa de ruta. No contiene lógica de programación, pero le sirve a Revit para saber qué addin debe cargar, cómo se llama y en qué ruta exacta del disco duro se encuentra el archivo DLL anterior.
3. Configuración del Proyecto en Visual Studio
El primer paso es estructurar nuestro entorno de desarrollo:
-
Abre Visual Studio y haz clic en Create New Project (Crear un nuevo proyecto).
-
Usa los filtros superiores para agilizar la búsqueda: selecciona el lenguaje C#, la plataforma All Platforms y el tipo de proyecto Library.
-
De las opciones resultantes, selecciona Class Library (Biblioteca de clases) y haz clic en Siguiente.
-
Nombre del proyecto: Para ir a la par con el tutorial de Autodesk, lo nombraremos exactamente como:
Lab1PlaceGroup. -
Ubicación: Elige la ruta que prefieras (por ejemplo, una carpeta llamada
testen el Escritorio). Asegúrate de marcar la casilla para colocar la solución y el proyecto en el mismo directorio. -
Framework: Seleccionamos .NET 8.0 (una versión estable con soporte a largo plazo o LTS) y dejamos que Visual Studio genere la estructura inicial.
[AQUÍ PUEDES AÑADIR UNA FOTO]: Captura de la ventana de configuración de Visual Studio con los parámetros aplicados (.NET 8.0, Class Library, etc.).
4. Vinculación de las Referencias de la API de Revit
Por defecto, Visual Studio no sabe qué es Revit. Debemos indicarle dónde encontrar sus librerías lógicas para que reconozca los comandos:
-
En el Explorador de soluciones, haz clic derecho sobre Dependencies (Dependencias) y selecciona Add Project Reference… (Añadir referencia de proyecto).
-
Haz clic en examinar y navega hasta la carpeta raíz donde tienes instalado Revit en tu ordenador.
-
Una vez allí, busca y añade estos dos archivos DLL esenciales:
-
RevitAPI.dll: Contiene la parte más lógica, la base de datos y el motor interno de Revit. -
RevitAPIUI.dll: Contiene todo lo relacionado con la interfaz de usuario y la interacción visual.
-
⚠️ Paso Crucial: Desactivar la Copia Local
Una vez añadidas las dos referencias, selecciónalas en el explorador de Visual Studio y abre su panel de Propiedades (clic derecho -> Propiedades). Busca el parámetro Copy Local (Copia local) y cámbialo obligatoriamente a No (False).
¿Por qué? Revit ya incluye y ejecuta estas librerías de forma nativa. Si dejamos la opción en “Sí”, Visual Studio duplicará estos pesados archivos dentro de la carpeta de nuestro addin, lo que puede generar conflictos de carga en Revit y un peso innecesario.
5. Escritura de Código y Compilación
Con el entorno configurado, ya podemos introducir el código. En la documentación web de Autodesk tienes el bloque de código completo listo para ser utilizado. Aunque en fases de aprendizaje se recomienda picarlo línea a línea, para este primer flujo general puedes copiarlo y pegarlo directamente reemplazando el contenido de tu clase principal.
Una vez guardado, ve al menú superior de Visual Studio: Build ➔ Build Solution (Compilar solución). El programa procesará el texto y generará tu archivo ejecutable Lab1PlaceGroup.dll.
Cómo limpiar las advertencias (Warnings) de compilación
Es posible que tras compilar te aparezcan algunos avisos en la lista de errores. No impiden que el addin funcione, pero para dejar el proyecto limpio realizaremos dos ajustes:
-
Entra en las Propiedades del Proyecto y en la pestaña General, cambia el Platform Target (Plataforma objetivo) a x64.
-
Un poco más abajo, en el campo Suppress specific warnings (Suprimir advertencias específicas), escribe el código:
MSB3277. -
Vuelve a compilar la solución y verás que las advertencias habrán desaparecido por completo.
6. Creación del Manifiesto (.addin) con el Bloc de Notas
Ahora nos falta el mapa que Revit leerá al arrancar. Para crearlo:
-
Abre el Bloc de notas de Windows.
-
Copia el código XML de ejemplo que aparece en el tutorial de Autodesk.
-
Modificación importante: Localiza la línea etiquetada como
<Assembly>...</Assembly>. Verás que la ruta del archivo DLL de ejemplo no coincide con la tuya. Debes sustituirla por la ruta exacta de tu disco duro donde Visual Studio acaba de compilar tu proyecto (siguiendo nuestro ejemplo, dentro de la carpetatesten el escritorio, navegando hasta llegar al archivo.dll).
XML
<Assembly>C:\Usuarios\TuNombre\Escritorio\test\Lab1PlaceGroup\bin\Debug\net8.0\Lab1PlaceGroup.dll</Assembly>
- Para guardarlo correctamente: Ve a Archivo ➔ Guardar como, nómbralo como
MyFirstRevitPlugIn.addin, y crucial: cambia el desplegable Tipo de.txta Todos los archivos (.).
[AQUÍ PUEDES AÑADIR UNA FOTO]: Captura de la ventana “Guardar como” del bloc de notas remarcando el cambio a “Todos los archivos” y la extensión .addin.
7. Instalación del Addin y Validación en Revit
Para que Revit detecte el manifiesto, debes mover el archivo .addin que acabas de guardar a la carpeta de complementos del sistema.
La ruta exacta depende de tu versión de Revit, pero sigue esta estructura: C:\ProgramData\Autodesk\Revit\Addins\[Año_Tu_Versión]\ (por ejemplo, 2025).
Nota importante: La carpeta
ProgramDataestá oculta en Windows por defecto. Tendrás que ir a las opciones de visualización de tu Explorador de archivos y activar la casilla “Mostrar archivos, carpetas y unidades ocultos” para poder acceder.
¡El resultado es instantáneo! En cuanto pegues el archivo en esa carpeta, si te diriges a Revit verás que en la esquina superior de la pestaña Complementos aparece mágicamente el botón de External Commands con el addin operativo.
Conclusión y Próximos Pasos
Si ejecutas el addin dentro del modelo del hotel, podrás seleccionar un grupo de elementos (por ejemplo, un conjunto de mobiliario) y clonarlo dinámicamente haciendo clic en cualquier otra parte del proyecto.
Aunque a nivel profesional esta herramienta parece sencilla, el verdadero objetivo de esta lección era dominar el flujo completo de trabajo: crear la solución, enlazar las APIs, compilar el binario DLL, estructurar el manifiesto y hacer que Revit lo reconozca con éxito.
A partir de esta base sólida, podemos empezar a añadir complejidades. Actualmente, el addin permite seleccionar cosas que no son grupos, lo cual genera errores. En las próximas lecciones aprenderemos a controlar los filtros de selección del usuario y automatizaremos tareas mucho más potentes, como duplicar ese mismo grupo de muebles en múltiples habitaciones del hotel de forma simultánea.
¡Nos vemos en la siguiente lección!