GESTIONAR SETS DE BUSQUEDAS EN NAVISWORKS CON DYNAMO / GESTIONAR SETS DE CERCA A NAVISWORKS AMB DYNAMO

(Versión en castellano)

CREACIÓ AMB DYNAMO DE CONJUNTS DE CERCA DE CLASSIFICACIÓ PER NAVISWORKS

1. INTRODUCCIÓ

Com a continuació de la sèrie d'articles publicats per classificar models des de diferents plataformes de modelat, anem a veure com es pot facilitar el seu ús per a una eina de gestió i coordinació de models com és Autodesk Navisworks.



La manera més eficient per a gestionar elements a Navisworks, és mitjançant els conjunts de cerca (search sets). D'aquesta manera, per treballar amb models classificats, és possible crear conjunts de cerca per a cada línea de classificació.

És probable que necessitem treballar amb diferents models dels quals es desconegui, a primera instància, el seu contingut. El primer exercici en aquest cas és tenir un llistat complet d'una classificació en un arxiu de conjunts de cerques. Existeixen diferents plug-ins per crear conjunts de cerques a Navisworks, però tenen certes limitacions, com treballar amb condicions complexes o no habituals, no poder definir el nom del conjunt (escollint de manera habitual el valor que tingui el paràmetre seleccionat), o impedint crear condicions amb valors que encara no existeixen en el model.

Per no dependre de plug-ins externs, amb ajuda de Dynamo, donada una classificació en Excel, és possible generar conjunts de cerca, per evitar haver de generar tots i cadascun dels conjunts de forma manual a Navisworks.

La característica habitual de les classificacions és que son escalables i amb nivells de jerarquia, per això és convenient que la condició de cerca inclogui tots els elements que comencin per un valor determinat (per exemple que comencin per 10.10). Per realitzar això a Navisworks, la condició és la de "Comodí" (Wildcard) per la qual hem d'afegir al valor desitjat un asterisc (*) al final per a què inclogui tot el que comenci per aquell valor.



Aclarida la condició de cerca, és recomanable que el nom del conjunt de cerca sigui el Codi acompanyat de la seva Descripció per facilitar la tasca. En aquest cas, s'ha optat per realitzar aquesta concatenació a Excel, abans d'importar-ho a Dynamo.
En ser els sistemes de classificació per nivells, el més recomanable és disposar de conjunts per cada nivell de classificació, ordenats en carpetes, amb la qual cosa generem un arxiu de conjunts de cerca de manera que es pot analitzar la informació amb diferents graus de detall (ja que cada nivell del sistema de classificació implica un major grau de detall).

Nota prèvia:

L'script de Dynamo està treballat a un nivell inicial. Moltes de les operacions es realitzen prèviament a Excel. El script funciona òptimament, però probablement sigui possible millorar-ho i optimitzar-ho per realitzar totes les operacions directament a Dynamo sense haver de tocar l'Excel.

2. Passos previs a Excel

Partint d'un Excel de classificació amb tres columnes (codi, descripció i nivell) agreguem una quarta per crear el nom del conjunt de cerca, concatenant les dues primeres separades per un espai per formar el nom del conjunt de Navisworks.



Per facilitar l'entrada de dades a Dynamo, es crea una fulla d'Excel per a cada nivell de classificació. Per a això es fa servir una fulla on està la classificació completa i filtrant per la columna de nivell podem copiar i enganxar les dades a la fulla corresponent. Així s'obtindrà un arxiu de full de càlcul amb múltiples pàgines mostrant el mateix sistema de classificació per als diferents nivells de granularitat. Cal esmentar que si solament es desitja un nivell de classificació per als sets de cerca, aquesta última operació no és necessària. Cal assegurar-se que les dades de les cel·les són de tipus text, sinó pot ser que Dynamo agregui decimals a aquestes dades. Per a això en una cel·la si es comença posant un apòstrofe (‘) abans del valor numèric s'entén que és un camp de format text.



3. Passos a Dynamo

Abans d'executar el script, s'han de crear els fitxers xml buits necessaris. Això es pot fer per exemple amb l'aplicació Bloc de Notes o encara millor Notepad++ (evitar noms amb espais o signes).

A continuació obrim l'aplicació de Dynamo. Per obrir l'aplicació directament si no tenim l'accés directe en el menú de Windows cal anar a la carpeta on estigui instal·lat i executar DynamoSandbox.exe.



Una vegada a Dynamo, primer caldrà posar els nodes corresponents per a obtenir la informació d'Excel. Seleccionem el fitxer i informem la fulla de l'Excel a processar.



A continuació cal generar els nodes per crear el contingut de l'arxiu xml que hem creat en blanc.

L'esquema de l'arxiu xml haurà de tenir la següent estructura:

Per aconseguir aquesta estructura es realitzaran diferents nodes de Dynamo en els quals es concatenaran textos que generin la informació del xml. Per a això l'usuari solament ha d'especificar la categoria d'informació i la propietat on està situat el valor de la classificació i indicar si prové d'un arxiu de Revit o IFC.

Es començarà en la part central escrivint la categoria d'informació i la propietat de Navisworks desitjada per a la condició de cerca.
Posteriorment cal generar el text del fitxer xml. Per a això es realitzarà, com s'ha comentat, una concatenació de textos. El script està preparat per a fitxers IFC i RVT, per a això cal seleccionar els blocs indicats en el script.

I finalment seleccionem el fitxer xml on es vol emmagatzemar el text generat. Es generarà un fitxer per a cada conjunt de cerques.



Donada la “complexitat” de l'estructura de l'arxiu xml s'ha optat per solament indicar en aquest article els principis del script ja que es pot veure el codi complet en l'arxiu de Dynamo adjuntat. A més per als usuaris cal remarcar que no han de modificar gens en els nodes on està incrustada la part de codis de xml (excepte que es vulguin modificar les condicions o els tipus de paràmetres), només s'ha d'especificar on està situada la informació en el model BIM (ja sigui Revit o IFC).

Generats els arxius xml per a cada nivell de classificació, solament falta afegir-los en Navisworks i anar ordenant-los en carpetes. Per importar l'arxiu xml generat a Dynamo s'anirà a la pestanya de sets i importar l'arxiu xml.





Per estalviar temps en futurs projectes, es poden exportar els sets de cerques generats pels diferents xml, emmagatzemant-los en un únic arxiu xml. En els futurs projectes que es vulguin analitzar amb el mateix sistema de classificació es podrà importar aquest últim arxiu xml.

A continuació podeu descarregar el set d'arxius per provar-ho ( en el qual s'inclou el dyn i l'Excel d'exemple). Part del script es podria simplificar en un node personalitzat, però s'ha preferit no fer-ho per facilitar la comprensió i manipulació per a possibles ajustos que es desitgin.


Arxiu excel de classificació
Arxiu Dynamo

Us convidem al fet que si afegiu millores o ho feu servir com a base per a altres usos, compartiu amb nosaltres els avanços.





Artícle redactat per els membres del GuDYNCat: Diego Vidoni, Miquel Rodríguez Niendenführ


GuBIMCat:
Som un grup de persones entusiastes de la metodologia BIM que ens reunim de forma periòdica per a compartir informació, experiència i bones pràctiques.

Ens podeu trobar a:

 




Creación con Dynamo de conjuntos de búsqueda de clasificación para Naviswork


1. INTRODUCCIÓN

Como continuación de la serie de artículos publicados para clasificar modelos desde diferentes plataformas de modelado, vamos a ver como se puede facilitar su uso en una herramienta de gestión y coordinación de modelos como es Autodesk Navisworks.



La manera más eficiente para gestionar elementos en Navisworks es a través de los conjuntos de búsqueda (search sets). De este modo, para trabajar con modelos clasificados, es posible crear conjuntos de búsqueda para cada línea de clasificación.

Es probable que necesitemos trabajar con diferentes modelos de los cuales no sepamos a priori su contenido. El primer ejercicio en este caso es tener el listado completo de una clasificación en un archivo de conjuntos de búsqueda. Existen diversos plugins para crear conjuntos de búsqueda en Navisworks, pero tienen ciertas limitaciones, como trabajar con condiciones complejas o no habituales, no poder definir el nombre del conjunto (cogiendo de manera habitual el valor que tenga el parámetro seleccionado), o impidiendo crear condiciones con valores que aún no existen en el modelo.

Para no depender de plug-ins externos con ayuda de Dynamo, dada una clasificación en Excel, es posible generar conjuntos de búsqueda, para evitar tener que generar todos y cada uno de los conjuntos de forma manual en Navisworks.

La característica habitual de las clasificaciones es que son escalables y con niveles de jerarquía, por ello es conveniente que la condición de búsqueda incluya todos los elementos que comiencen por un valor determinado (por ejemplo que comiencen por 10.10). Para realizar esto en Navisworks, la condición es la de “Comodín” (Wildcard) para la cual debemos acompañar el valor deseado con un asterisco al final para que incluya todo lo que comienza por ese valor.



Aclarada la condición de búsqueda, es recomendable que el nombre del conjunto de búsqueda sea el Código acompañado de su Descripción para facilitar el trabajo. En este caso, se ha optado por realizar esta concatenación en Excel, antes de importarlo en Dynamo.

Al ser los sistemas de clasificación por niveles, lo más recomendable es disponer de conjuntos por cada nivel de clasificación, ordenados en carpetas, con lo cual generamos un archivo de conjuntos de búsqueda de forma que se puede analizar la información con distintos grados de detalle (ya que cada nivel del sistema de clasificación implica un mayor grado de detalle).

Nota previa:

El script de Dynamo está trabajado a un nivel incial. Muchas de las operaciones se realizan previamente en Excel. El script funciona óptimamente, pero probablemente sea posible mejorarlo y optimizarlo para realizar todas las operaciones directamente en Dynamo sin tener que tocar el Excel.

2. Pasos previos en Excel

Partiendo de un Excel de clasificación con tres columnas (código, descripción y nivel) agregamos una cuarta para crear el nombre del conjunto de búsqueda, concatenando las dos primeras separadas por un espacio para formar el nombre del conjunto de Navisworks.



Para facilitar la entrada de datos a Dynamo, creamos una hoja de Excel por cada nivel de clasificación. Para ello usamos una hoja donde está la clasificación completa y filtrando por la columna de nivel podemos copiar y pegar los datos a la hoja correspondiente. Así se obtendrá una archivo de hoja de cálculo con múltiples páginas mostrando el mismo sistema de clasificación para los distintos niveles de granularidad. Cabe mencionar que si solo se desea un nivel de clasificación para los sets de búsqueda esta última operación no es necesaria. Hay que asegurarse que los datos de las celdas son de tipo texto, sino puede que Dynamo agregue decimales a estos datos. Para ello en una celda si se empieza poniendo un apóstrofe (‘) antes del valor numérico se entiende que es un campo de formato texto.



3. Pasos en Dynamo

Antes de ejecutar el script, se han de crear los ficheros xml vacíos necesarios. Esto se puede hacer por ejemplo con la aplicación Bloc de Notas o aun mejor Notepad++ (evitar nombres con espacios o signos).

A continuación abrimos la aplicación de Dynamo. Para abrir la aplicación directamente si no tenemos el acceso directo en el menú de Windows hay que ir a la carpeta donde esté instalado y ejecutar DynamoSandbox.exe.



Una vez en Dynamo, primero habrá que poner los nodos correspondientes a obtener la información de Excel. Seleccionamos el fichero e informamos la hoja del Excel a procesar.



A continuación hay que generar los nodos para crear el contenido del archivo xml que hemos creado en blanco.

El esquema del archivo xml deberá tener la siguiente estructura:



Para conseguir dicha estructura se realizarán distintos nodos de Dynamo en los que se concatenarán textos que generen la información del xml. Para ello el usuario solo tiene que especificar la categoría de información y la propiedad donde está ubicado el valor de la clasificación e indicar si proviene de un archivo de Revit o IFC.

Se empezará en la parte central escribiendo la categoría de información y la propiedad de Navisworks deseada para la condición de búsqueda.

Posteriormente hay que generar el texto del fichero xml. Para ello se realizará, como se ha comentado, una concatenación de textos. El script está preparado para ficheros IFC y RVT, para lo cual hay que seleccionar los bloques indicados en el script.



Y finalmente seleccionamos el fichero xml donde se quiere almacenar el texto generado. Se generará un fichero para cada conjunto de búsquedas.



Dada la “complejidad” de la estructura del archivo xml se ha optado por solo indicar en este artículo los principios del script ya que se puede ver el código completo en el archivo de Dynamo adjuntado. Además para los usuarios cabe remarcar que no tienen que modificar nada en los nodos donde está incrustada la parte de códigos de xml (excepto que se quieran modificar las condiciones o los tipos de parámetros), sólo se tiene que especificar donde está ubicada la información en el modelo BIM (ya sea Revit o IFC).

Generados los archivos xml para cada nivel de clasificación, solo falta añadirlos en Navisworks e ir ordenándolos en carpetas. Para importar el archivo xml generado en Dynamo se irá a la pestaña de sets e importar el archivo xml.





Para ahorrar tiempo en futuros proyectos, se puede exportar los sets de búsquedas generados por los distintos xml, almacenándolos en un único archivo xml. En los futuros proyectos que se quieran analizar con el mismo sistema de clasificación se podrá importar este último archivo xml.

A continuación podéis descargar el set de archivos para probarlo ( en el cual se incluye el dyn y el Excel de ejemplo). Parte del script se podría simplificar en un nodo personalizado, pero se ha preferido no hacerlo para facilitar la comprensión y manipulación para posibles ajustes que se deseen.

Archivo excel de clasificación
Archivo Dynamo

Os invitamos a que si añadís mejoras o lo hacéis servir como base para otros usos, compartáis con nosotros los avances.


Artículo redactado por los miembros del GuDYNCat: Diego Vidoni, Miquel Rodríguez Niendenführ

GuBIMCat:
Somos un grupo de personas entusiastas de la metodología BIM que nos reunimos periódicamente para compartir información, experiencia y buenas prácticas.

Nos podéis encontrar en:

 

0 comentarios:

Publicar un comentario

 

Contacto

Nombre

Correo electrónico *

Mensaje *