Exportación a IFC de un modelo con múltiples emplazamientos
Caso práctico: Exportación a IFC de un modelo con múltiples emplazamientos
Objetivo
En esta publicación compartimos el flujo de trabajo que hemos ideado desde Modelical para exportar un modelo federado con varios archivos vinculados. Un flujo de exportación desde Revit a IFC que presenta, en algunos casos, los mismos vínculos repetidos con distintas posiciones. Este es un caso típico del sector inmobiliario.
Nuestra propuesta pasa por las buenas prácticas en la concepción de la estrategia de modelos y por una definición de Dynamo con la que automatizamos la exportación.
Introducción
La exportación de modelos a IFC es una práctica necesaria para el consumo de éstos fuera del entorno de Revit. Los modelos IFC se usan para la detección de colisiones, revisión del diseño y de la coordinación, control de superficies o comprobación de mediciones, entre otras cosas. Por estos motivos la mayoría de promotoras inmobiliarias los incluyen como entregables obligatorios del proyecto.
A la hora de diseñar una urbanización de viviendas unifamiliares, es común trabajar con tipologías de vivienda que se repiten. Si usamos Revit para el desarrollo del proyecto, lo más habitual es que creemos cada una de las tipologías en un modelo diferente.
Cada uno de estos modelos será vinculado y copiado, en un modelo federado de urbanización o emplazamiento, tantas veces como la tipología se repita en nuestro proyecto. Este procedimiento nos permite homogeneizar los cambios que sufra el diseño y que éstos se implementen de una manera más ágil. Al exportar, cada vínculo será un modelo IFC distinto que posteriormente podremos federar.
Antes de explicar las dos estrategias de exportación posibles, es conveniente recordar la funcionalidad disponible en Revit para trabajar con instancias de vínculos repetidas en un mismo modelo.
Configuración de vínculos repetidos en un mismo modelo
Esta es la metodología a seguir:
- Creamos el modelo de emplazamiento y configuramos las coordenadas compartidas del proyecto. Podemos adquirir las coordenadas reales de un archivo CAD topográfico o introducirlas manualmente.
- Una vez configuradas las coordenadas compartidas, vinculamos los modelos de cada una de las tipologías al modelo de emplazamiento.
- Copiamos cada unidad de cada tipología de vivienda en la posición de parcela correspondiente.
- Asignamos un nombre identificativo a cada ejemplar de vivienda y configuramos su emplazamiento compartido:
- Seleccionamos el ejemplar del vínculo deseado y abrimos el menú de emplazamiento compartido desde el menú de propiedades.
- Para guardar la posición actual, debemos cambiar y duplicar el emplazamiento Internal, que aparece por defecto, por la posición correspondiente a la parcela, que llamaremos Parcela 01, Parcela 04, etc.
- Una vez configuradas todas las posiciones, sincronizamos y guardamos el archivo.
Al abrir uno de los modelos de tipología de vivienda y consultar su emplazamiento, vemos que se han guardado todas las posiciones que anteriormente hemos configurado en el modelo de emplazamiento.
Ejemplo:
Imaginemos una promoción de 9 viviendas unifamiliares con 3 tipologías distintas (VIV1, VIV2 y VIV3). Cada tipología tiene 3 unidades y las parcelas están ordenadas del 1 al 9 de izquierda a derecha de la imagen a continuación.
La tipología VIV2 aparece en las parcelas 01, 04 y 07. Así nos queda reflejado en el modelo propio de la tipología (XXXX-ARQ-VIV2-G.rvt):
Estrategias de exportación
Para ejecutar la exportación a IFC tenemos dos posibles estrategias.
Exportación desde el modelo de emplazamiento
Esta primera estrategia tiene la ventaja de que con una sola acción se exporta todo, pero también tiene inconvenientes importantes, ya que a mayor número de viviendas más se agravan:
- Gran consumo de tiempo en la exportación: ya que se exportarán todos los archivos vinculados que tengamos de cada disciplina y tipología tantas veces como distintos emplazamientos haya. Lo más habitual es desarrollar las disciplinas de arquitectura, estructura y MEP en vínculos separados, por lo que solemos tener tres modelos de cada unidad de vivienda.
- Errores o bloqueo del programa durante la exportación. Revit no termina de exportar los vínculos o se queda parado en un elemento en concreto.
- Tras la exportación, los modelos IFC son difícilmente reconocibles por el nombre de archivo (nombre modelo desde el que se exporta + nombre modelo exportado + combinación números y letras si el vínculo tiene un ejemplar repetido). Esto implica un trabajo manual posterior de edición necesario después de cada exportación, para la identificación y renombrado de cada uno de los modelos exportados con su ubicación o número de parcela/vivienda.
Así quedaría la exportación del ejemplo que hemos planteado anteriormente siguiendo esta estrategia.
Exportación desde el modelo propio de cada tipología
Con esta alternativa reducimos considerablemente el tiempo de exportación, ya que se trata de modelos más pequeños y sencillos. Sin embargo, para ello debemos tener configuradas previamente las distintas ubicaciones del modelo (tal y como se ha explicado anteriormente) y elegir manualmente la posición (parcela) que deseamos exportar. Lo haremos tantas veces como posiciones guardadas tenga cada modelo, y repetiremos el proceso por cada tipología de vivienda que contenga el proyecto. Adicionalmente, tendremos que exportar por separado el modelo de emplazamiento.
En muchos casos esta estrategia es la única solución posible ya que la exportación conjunta es demasiado pesada para ejecutarse correctamente.
Naturalmente, cuanto mayor es el número de ubicaciones y tipologías de vivienda en el proyecto, más laborioso es el proceso. Por este motivo en Modelical hemos desarrollado una automatización que lo simplifica y que explicamos a continuación.
Automatización del proceso: Definición de Dynamo
Automatizar la segunda estrategia permite evitar los problemas ya comentados y supone, lógicamente, un ahorro de tiempo significativo. Partimos de la base de que los modelos de tipología están configurados como hemos dicho y por tanto ya contienen las ubicaciones de todas las viviendas.
El modo que utilizamos para automatizar el proceso es mediante una definición de Dynamo, si bien debemos advertir que esta definición es en realidad un script de Python, ya que los nodos convencionales de Dynamo no satisfacen nuestras necesidades. Si lo deseas puedes descargarte la definición en el apartado “Links de interés”.
Creación del script
El script resuelve principalmente tres tareas que explicamos a continuación.
Configuración de las opciones de exportación
La exportación va a requerir la configuración de diversas opciones. Para ello generamos una instancia de la clase “IFCExportOptions”, a la que llamamos “eifc”.
Entre otras preferencias, podemos configurar la versión de IFC a la que queremos exportar y desde qué vista de Revit:
eifc.FileVersion = IFCVersion.IFC2x3
eifc.FilterViewID = doc.ActiveView.Id
Además, si necesitamos otras configuraciones que no están por defecto podemos usar el método “AddOption”. Algunos ejemplos:
eifc.AddOption("ExportIFCCommonPropertySets","true")
eifc.AddOption("WallAndColumnSplitting", "false")
eifc.AddOption("ExportInternalRevitPropertySets","true")
eifc.AddOption("ExportAnnotations ","false")
eifc.AddOption("SpaceBoundaries ", "0")
eifc.AddOption("ExportRoomsInView", "true")
[…]
Exportación IFC
Para llevarla a cabo existe un método (“Export”) de la clase “Document” que pide los siguientes argumentos:
- Ruta de la carpeta donde queremos exportar
- Nombre del archivo
- Instancia de la clase “IFCExportOptions”
La ruta de la carpeta la introducimos con el nodo de Dynamo “Directory Path”. Para el nombre del archivo (hemos llamado a la variable “newName”) utilizamos una combinación del nombre del documento más el nombre de la ubicación. Para ello se puede usar la propiedad “Title” sobre la clase “Document” y la propiedad “Name” sobre la clase “ProjectLocation”, que hemos obtenido también de la clase “Document” utilizando la propiedad “ActiveProjectLocation”. La instancia de “IFCExportOptions” es la que hemos configurado en el apartado anterior.
Iteración del proceso para las diferentes ubicaciones:
Una vez realizada una exportación se deberá cambiar de ubicación el proyecto antes de realizar la siguiente. Para ello extraemos todas las posibles ubicaciones del modelo mediante la propiedad “ProjectLocations” de la clase “Document” e iteramos el proceso por cada una de ellas, a través de la asociación de las posibles ubicaciones con la propiedad “ActiveProjectLocation” de la clase “Document”.
Ejecución del script
Como ya hemos explicado anteriormente, la definición debe ejecutarse desde cada modelo de tipología existente y, si tenemos distintos modelos para cada disciplina de la tipología, tendremos que “correrla” para cada uno de ellos. El único input que tendremos que introducir en Dynamo es la carpeta destino donde queremos que aparezcan los IFC.
Siguiendo con el ejemplo anterior, las exportaciones a IFC realizadas desde la definición de Dynamo quedarían nombradas de la siguiente manera, manteniendo cada una de ellas sus coordenadas pertinentes. Nótese que la nomenclatura que diferencia cada exportación dependerá del nombre que le hayamos dado en Revit a cada emplazamiento.
Conclusiones
Simplemente “corriendo” la definición de Dynamo logramos la exportación a IFC de todas las viviendas de una misma tipología. De este modo ahorramos mucho tiempo. Durante la fase de diseño los proyectos están vivos y las tipologías de vivienda van a ir sufriendo modificaciones, lo que seguro que nos obligará a realizar más de una exportación a IFC. Si además añadimos que tenemos varios proyectos con esta casuística, el ahorro de tiempo es todavía mayor. Merece la pena invertir nuestro esfuerzo en crear la definición para que posteriormente economicemos nuestro tiempo de trabajo mecánico.
Links de interés
- Puedes descargar la definición de Dynamo aquí.
- Si las coordenadas en Revit te resultan algo confusas, te recomendamos que leas este artículo que tenemos en Modelical.
- Un error habitual en la exportación a IFC es no tener el exportador actualizado a su última versión. Aquí tienes el enlace para descargarlo.








