viernes, 6 de enero de 2017

NODOS | Escribir información de Rooms en Ceilings.

   En algún momento se me presentó la tarea de obtener información de las Rooms de un proyecto, para posteriormente escribir o sobreescribir esa información en algún parámetro de los Ceilings pertenecientes a cada room. Manualmente esta tarea es bastante tediosa y sobretodo consume mucho tiempo y es propensa a errores. Es posible resolver esta situación mediante la API de Revit, pero vamos a apoyarnos en Dynamo para encontrar la solución.

   La lógica que he utilizado para la solución que propongo es la de elementos intersectándose con elementos. En Revit tanto los Ceilings como las Rooms son elementos tridimensionales de los cuales es posible obtener un objeto geométrico. Siendo así, entonces es posible comprobar que room se intersecta con que ceiling. Bueno, vamos a la solución:


   1.- Obtener la geometría de los elementos.



   2.- Comprobar y seleccionar los elementos que se intersectan entre sí.



   3.- Obtener el parámetro o parámetros de las Rooms y escribirlo o sobreescribirlo en algún parámetro de los Ceilings.



La definición completa:

El resultado:



El archivo:
Ceilings In Rooms .dyn

P.D. Es necesario que los contonos superiores de las Rooms estén intersectando los Ceilings. De no ser así deben ajustarse los límites.


Saludos.