Revit nos muestra bastante información acerca de los elementos de nuestro modelo. Pero internamente, Revit maneja mucha más información que la que nos muestra. Si nos fijamos, por ejemplo, en una columna veremos que Revit nos reporta ciertos parámetros estándar: familia, tipo, nivel inicial, nivel final… pero no nos reporta el ancho y el largo de la columna, su área transversal o su perímetro.

Pero si nos reporta el volumen de la columna. Cómo hace Revit para llegar al volumen de la columna?

La respuesta es que internamente, Revit hace un montón de cálculos y guarda los resultados en el modelo, y luego muestra solo los que Autodesk consideró relevante mostrar. En el caso de las columnas Revit muestra solo el volumen, aunque internamente están hechos todos los cálculos de geometría de la columna.

El por qué de esto tiene muchas explicaciones distintas, dependiendo del distribuidor o usuario al que le pregunten.

Los parámetros «ocultos» en Revit sí están accesibles, pero mediante la interfaz de programación (API). Esto, en términos prácticos, los hace inaccesibles a menos que sepan programar el API.

Afortunadamente alguien ya hizo el trabajo de programar una utilidad que utiliza el API para mostrar todos los parámetros ocultos de nuestro modelo. Esta utilidad se conoce como RevitLookup. Con Revitlookup, podemos inspeccionar una columna, explorar hasta que lleguemos a la sección de geometría, donde vemos lo siguiente:

Nuestros parámetros de área superficial, y volumen.

También podemos seguir explorando y descubrimos otra sección de datos, donde Revit tiene calculada el área individual para todas las caras de nuestra columna:

De la misma forma podemos encontrar información y cálculos de materiales, propiedades físicas, apariencia, y todo lo demás que hace posible dibujar un elemento en nuestro modelo.

Revitlookup es muy completo y muy útil para entender la lógica interna de Revit. No es una utilidad diseñada para extraer información (por ejemplo para cuantificar cosas), pero si nos permite ver mucho de lo que ocurre detrás del telón en nuestro modelo. Y esto es muy interesante a la hora de diagnosticar esos «números extraños» que a veces aparecen en nuestro modelo.

Inicialmente venía incluida con las utilidades de desarrollador de Revit (el «SDK»), pero a partir de la versión 2015 de Revit, Revitlookup fue removido. Luego el desarrollo de esta aplicación fue retomado por Jeremy Tammik y otros usuarios, y actualmente la utilidad se consigue como un paquete independiente.

Leer  Como planificar compras de materiales en Revit

Para instalar esta utilidad, preferiblemente deberían buscar las versiones listas para usar (o «binarios»). Aquí hay algunos links para Revitlookup 2015:

Si quieren el código fuente para compilar, pueden obtenerlo en Github:

Para instalar la versión binaria, deben copiar el archivo .DLL y el archivo .addin a su directorio de Addins (por lo general c:programdataAutodeskRevitAddins2015). No tienen que hacer nada más, solo copiar esos dos archivos a este directorio. La versión binaria también trae un archivo .BAT que copia los archivos automáticamente, pero yo prefiero hacerlo a mano para estar seguro de a dónde fueron a dar.

Nota: si están en un entorno de red corporativa, puede ser necesario pedir ayuda al administrador para instalar el Revitlookup, o para copiar los archivos al directorio programdata.

La próxima vez que inicien Revit, detectará los archivos .addin y .DLL, y les instalará el Revitlookup. Lo podrán encontrar bajo el menú de Addins:

Si abren la utilidad, verán una serie de opciones en el menú:

 

  • Hello World – Muestra una ventana con el mensaje «Hello world». Si esta primera opción funciona, Revitlookup está correctamente instalado.
  • Snoop DB – Permite explorar la base de datos del modelo completo.
  • Snoop Current Selection – Permite explorar la entrada en la base de datos de los elementos que se encuentren seleccionados.
  • Snoop Active View – Explora la base de datos referente a la vista que está activa, sin incluir elementos
  • Snoop Application – Muestra parámetros de funcionamiento de la copia de Revit que está instalada
  • Test Framework – Lista de pruebas internas, no tiene utilidad esta función.
  • Events – Habilita o deshabilita avisos cada vez que sucede algún evento de aplicación o del documento. Si activan alguna de estas casillas, Revit les mostrará una ventana cada vez que detecta alguna operación. Útil para diagnosticar procesos si están programando, en el resto de los casos, es una función que tampoco tiene mayor utilidad.

Revitlookup trabaja por niveles y subniveles (parecido a las carpetas de su disco duro). Cuando seleccionan un elemento para explorar, les aparecerá una ventana, donde al lado izquierdo se muestran diferentes categorías de información, y al lado derecho el detalle de esa información:

Por ejemplo en este caso estamos explorando una columna. Del lado izquierdo aparece solo la columna que seleccionamos («C1 columna exteriores»), que es un elemento tipo FamilyInstance (una categoría interna que usa Revit para los elementos de modelo). Del lado derecho podemos ver la información de la columna. Nos aparecen sus identificadores común y único (ID y UniqueID). Después de eso aparecen un montón de renglones en negrita, esto nos indica que son subcategorías de información (algo como las carpetas y subcarpetas en un disco duro). Si hacemos click en alguno de estos renglones, se nos abre otra ventana más, con el contenido de esa subcategoría. Por ejemplo si pedimos la categoría «Geometry»:

Nuevamente, del lado izquierdo están las clasificaciones de la información (en este caso la información se clasifica por las vistas activas), y del lado derecho el contenido. Hay algunas propiedades genéricas (Is read-only, IsElementGeometry,etc) y más subcategorías de información, que también aparecen en negrita.

Leer  Como hacer domos, tornillos y ventanales a partir de masas en Revit

Siguiendo ese mismo procedimiento de hacer click en las entradas en negrita, podemos explorar todas las propiedades del elemento, hasta el último subnivel que tenga Revit en su base de datos.

Muy bonito… pero, cómo se interpreta toda esa información? Qué es cada uno de los parámetros mostrados? Qué utilidad se le puede sacar a todo eso? Como mencionaba al inicio de este post, Revitlookup es una utilidad de diagnóstico, orientada sobre todo a programadores del API. El contenido de un parámetro como IsElementGeometry probablemente no tenga mucha utilidad para el usuario común y corriente que está haciendo un modelo. Pero si estamos haciendo un macro que requiera manipular un elemento, y vemos que se nos está generando un error al manipular una variable, aquí podemos darnos cuenta que existe un parámetro de la vista llamado IsElementGeometry, que puede ser la clave para solucionar nuestro problema. Similarmente podemos entender con RevitLookup que la geometría del objeto está contenida dentro de una clasificación que depende de las vistas activas, y ajustar nuestro código de acuerdo con eso.

Si no están programando el API, les puede resultar interesante explorar un elemento y ver qué cosas calcula Revit y cómo las almacena. Y podría serles útil para revisar los resultados que les aparecen en un reporte de cantidades, contra lo que tiene internamente almacenado Revit, si sienten que algo no está coincidiendo.

Revit Lookup: como ver los cálculos ocultos de Revit
Etiquetado en:            

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *