Dynamo
Primer for v2.0
Español
Español
  • Acerca de
  • Introducción
    • ¿Qué es Dynamo y cómo funciona?
    • Manual de introducción, comunidad y plataforma de Dynamo
  • Configuración de Dynamo
  • Interfaz de usuario
    • Espacio de trabajo
    • Biblioteca
  • Nodos y cables
  • Nodos y conceptos básicos
    • Índice de nodos
    • Geometría para el diseño computacional
      • Descripción general de la geometría
      • Vector, plano y sistema de coordenadas
      • Puntos
      • Curvas
      • Superficies
      • Sólidos
      • Mallas
    • Los bloques de construcción de los programas
      • Datos
      • Matemáticas
      • Lógica
      • Cadenas
      • Color
    • Diseño con listas
      • ¿Qué es una lista?
      • Trabajo con listas
      • Listas de listas
      • Listas de n dimensiones
    • Diccionarios en Dynamo
      • ¿Qué es un diccionario?
      • Nodos de diccionario
      • Diccionarios en bloques de código
      • Casos de uso de Revit
  • Nodos y paquetes personalizados
    • Nodos personalizados
      • Introducción a los nodos personalizados
      • Creación de un nodo personalizado
      • Publicación en la biblioteca
    • Paquetes
      • Introducción a los paquetes
      • Caso real de paquete: Kit de herramientas de malla
      • Desarrollo de un paquete
      • Publicación de un paquete
      • Importación de Zero-Touch
  • Dynamo para Revit
    • La conexión de Revit
    • Selección
    • Edición
    • Creación
    • Personalización
    • Documentación
  • Dynamo for Civil 3D
    • La conexión con Civil 3D
    • Introducción
    • Biblioteca de nodos
    • Flujos de trabajo de ejemplo
      • Carreteras
        • Colocación de farolas
      • Land
        • Colocación de servicios
      • Servicios
        • Renombrar estructuras
      • Raíl
        • Envolvente libre
      • Topografía
        • Administración de grupos de puntos
    • Temas avanzados
      • Enlace de objetos
      • Python y Civil 3D
    • Dynamo Player
    • Paquetes útiles
    • Recursos
  • Dynamo en Forma (beta)
    • Configurar Dynamo Player en Forma
    • Añadir y compartir gráficos en Dynamo Player
    • Ejecutar gráficos en Dynamo Player
    • Diferencias en el servicio de cálculo de Dynamo con la versión de escritorio de Dynamo
  • Codificación en Dynamo
    • Bloques de código y DesignScript
      • ¿Qué es un bloque de código?
      • Sintaxis de DesignScript
      • Abreviatura
      • Funciones
    • Geometría con DesignScript
      • Conceptos básicos de geometría con DesignScript
      • Primitivas geométricas
      • Matemáticas vectoriales
      • Curvas: puntos interpolados y de control
      • Traslación, rotación y otras transformaciones
      • Superficies: interpoladas, puntos de control, solevación y revolución
      • Parametrización geométrica
      • Intersección y recorte
      • Operaciones booleanas geométricas
      • Generadores de puntos de Python
    • Python
      • Nodos de Python
      • Python y Revit
      • Configurar su propia plantilla de Python
    • Cambios en el lenguaje
  • Prácticas recomendadas
    • Estrategias gráficas
    • Estrategias de creación de secuencias de comandos
    • Referencia de secuencias de comandos
    • Administración del programa
    • Trabajar de forma eficaz con grandes conjuntos de datos en Dynamo
  • Flujos de trabajo de ejemplo
    • Flujos de trabajo para empezar
      • Jarrón paramétrico
      • Puntos de atractor
    • Índice de conceptos
  • Guía de introducción para desarrolladores
    • Compilar Dynamo a partir del código fuente
      • Compilar DynamoRevit a partir del código fuente
      • Administración y actualización de dependencias en Dynamo
    • Desarrollo para Dynamo
      • Introducción
      • Caso real de Zero-Touch (nodo de rejilla)
      • Ejecución de secuencias de comandos de Python en nodos Zero-Touch (C#)
      • Conceptos avanzados de Zero-Touch
      • Personalización avanzada de nodos de Dynamo
      • Uso de tipos COM (interoperabilidad) en paquetes de Dynamo
      • Caso real de NodeModel (interfaz de usuario personalizada)
      • Actualización de paquetes y bibliotecas de Dynamo para Dynamo 2.x
      • Actualización de paquetes y bibliotecas de Dynamo para Dynamo 3.x
      • Extensiones
      • Definición de la organización de paquetes personalizados para Dynamo 2.0+
      • Interfaz de línea de comandos de Dynamo
      • Integración de Dynamo
      • Desarrollo para Dynamo for Revit
      • Publicar un paquete
      • Compilar un paquete desde Visual Studio
      • Extensiones como paquetes
    • Solicitudes de incorporación de cambios
    • Expectativas de las pruebas
    • Ejemplos
  • Apéndice
    • Preguntas frecuentes
    • Programación visual y Dynamo
    • Recursos
    • Notas de la versión
    • Paquetes útiles
    • Archivos de ejemplo
    • Mapa de integración de anfitriones
    • Descargar PDF
    • Métodos abreviados de teclado de Dynamo
Powered by GitBook
On this page
  • Objetivo
  • Conceptos clave
  • Compatibilidad con versiones
  • Conjunto de datos
  • Solución
  • Obtener datos de Excel
  • Obtener líneas características de obra lineal
  • Generar sistemas de coordenadas
  • Crear referencias a bloque
  • Resultado
  • Información adicional: visualización en Dynamo
  • Ideas
Edit on GitHub
Export as PDF
  1. Dynamo for Civil 3D
  2. Flujos de trabajo de ejemplo
  3. Carreteras

Colocación de farolas

PreviousCarreterasNextLand

Last updated 1 month ago

Uno de los muchos y excelentes casos de uso de Dynamo es la colocación dinámica de objetos discretos a lo largo de un modelo de obra lineal. A menudo, es necesario colocar objetos en ubicaciones independientes de los ensamblajes insertados a lo largo de la obra lineal, lo que resulta una tarea muy tediosa de realizar manualmente. Y, cuando la geometría horizontal o vertical de la obra lineal cambia, esto suele ir acompañado de un importante trabajo de rectificación.

Objetivo

Conceptos clave

  • Lectura de datos de un archivo externo (en este caso, Excel)

  • Organización de datos en diccionarios

  • Uso de sistemas de coordenadas para controlar la posición/escala/rotación

  • Colocación de referencias a bloque

  • Visualización de geometría en Dynamo

Compatibilidad con versiones

Este gráfico se ejecutará en Civil 3D 2020 y versiones posteriores.

Conjunto de datos

Descargue primero los archivos de ejemplo que aparecen a continuación y abra el archivo DWG y el gráfico de Dynamo.

Es preferible que el archivo de Excel se guarde en el mismo directorio que el gráfico de Dynamo.

Solución

A continuación, se ofrece una descripción general de la lógica de este gráfico.

  1. Leer el archivo de Excel e importar los datos en Dynamo

  2. Obtener líneas características de la línea base de obra lineal especificada

  3. Generar sistemas de coordenadas a lo largo de la línea característica de obra lineal en los P.K. deseados

  4. Utilizar los sistemas de coordenadas para colocar referencias a bloque en el espacio modelo

¡Empecemos!

Obtener datos de Excel

En este gráfico de ejemplo, vamos a utilizar un archivo de Excel a fin de almacenar los datos que utilizará Dynamo para colocar las referencias a bloque de farolas. La tabla presenta el siguiente aspecto.

El uso de Dynamo para leer datos de un archivo externo (como un archivo de Excel) es una excelente estrategia, sobre todo, cuando los datos deben compartirse con otros miembros del equipo.

Los datos de Excel se importan en Dynamo de este modo.

Ahora que tenemos los datos, debemos dividirlos por columna (Corridor, Baseline, PointCode, etc.) para poder utilizarlos en el resto del gráfico. Para ello, lo habitual es utilizar el nodo List.GetItemAtIndex y especificar el número de índice de cada columna que deseemos. Por ejemplo, la columna Corridor se encuentra en el índice 0, la columna Baseline en el índice 1, etc.

Parece lógico, ¿verdad? Sin embargo, este planteamiento puede plantear un problema. ¿Qué ocurre si el orden de las columnas del archivo de Excel cambia en el futuro? ¿O se añade una nueva columna entre otras dos? En ese caso, el gráfico no funcionará correctamente y deberá actualizarse. Podemos preparar el gráfico para el futuro incluyendo los datos en un diccionario, con los encabezados de las columnas de Excel como claves y el resto de los datos como valores.

Si es la primera vez que utiliza estos diccionarios, consulte la sección Diccionarios en Dynamo.

Esto permite que el gráfico sea más flexible a la hora de cambiar el orden de las columnas en Excel. Mientras los encabezados de las columnas sigan siendo los mismos, los datos podrán recuperarse simplemente del diccionario mediante su clave (es decir, el encabezado de columna), que es lo que haremos a continuación.

Obtener líneas características de obra lineal

Ahora que ya tenemos los datos de Excel importados y listos, empecemos a utilizarlos para obtener información de Civil 3D sobre los modelos de obra lineal.

  1. Seleccione el modelo de obra lineal por su nombre.

  2. Obtenga una línea base específica en la obra lineal.

  3. Obtenga una línea característica dentro de la línea base mediante su código de punto.

Generar sistemas de coordenadas

Ahora vamos a generar sistemas de coordenadas a lo largo de las líneas características de obra lineal en los valores de P.K. especificados del archivo de Excel. Estos sistemas de coordenadas se utilizarán para definir la posición, la rotación y la escala de las referencias a bloque de las farolas.

Si es la primera vez que utiliza los sistemas de coordenadas, consulte la sección Vector, plano y sistema de coordenadas.

Observe aquí el uso de un bloque de código para rotar los sistemas de coordenadas en función del lado de la línea base en el que se encuentren. Esto podría lograrse mediante una secuencia de varios nodos, pero este es un buen ejemplo de una situación en la que es más fácil simplemente escribirlo.

Si es la primera vez que utiliza bloques de código, consulte la sección Bloques de código y DesignScript.

Crear referencias a bloque

Ya casi hemos terminado. Disponemos de toda la información necesaria para poder colocar realmente las referencias a bloque. Lo primero que hay que hacer es obtener las definiciones de bloque que deseamos mediante la columna BlockName del archivo de Excel.

A continuación, el último paso es crear las referencias a bloque.

Resultado

Al ejecutar el gráfico, deberían aparecer nuevas referencias a bloque en el espacio modelo a lo largo de la obra lineal. Y esta es la mejor parte: si el modo de ejecución del gráfico se ha establecido en Automático y edita el archivo de Excel, las referencias de bloque se actualizan automáticamente.

Puede obtener más información sobre los modos de ejecución de gráficos en la sección Interfaz de usuario.

A continuación, se muestra un ejemplo de cómo ejecutar el gráfico con el Reproductor de Dynamo.

Si es la primera vez que utiliza el Reproductor de Dynamo, consulte la sección Dynamo Player.

Información adicional: visualización en Dynamo

Puede resultar útil visualizar la geometría de obra lineal en Dynamo para ofrecer algo de contexto. Este modelo concreto incluye sólidos de obra lineal extraídos en el espacio modelo, por lo que vamos a incorporarlos en Dynamo.

Sin embargo, hay algo más que debemos tener en cuenta. Los sólidos son un tipo de geometría relativamente "pesado", lo que significa que esta operación ralentizará el gráfico. Se agradecería que hubiera una forma sencilla de elegir si deseamos ver los sólidos o no. La respuesta obvia es simplemente desconectar el nodo Corridor.GetSolids, pero eso generará advertencias para todos los nodos posteriores, lo que resulta algo lioso. Esta es una situación en la que el nodo ScopeIf realmente es de gran utilidad.

  1. Observe que el nodo Object.Geometry presenta una barra gris en la parte inferior. Esto significa que la vista preliminar del nodo está desactivada (para acceder a ella, haga clic con el botón derecho en el nodo), lo que permite que GeometryColor.ByGeometryColor evite entrar en conflicto con otra geometría para obtener prioridad de visualización en la vista preliminar en segundo plano.

  2. El nodo ScopeIf permite básicamente ejecutar de forma selectiva una ramificación completa de nodos. Si la entrada test se ha establecido en "falso", no se ejecutará ningún nodo conectado al nodo ScopeIf.

Este es el resultado de la vista preliminar en segundo plano de Dynamo.

Ideas

A continuación, se ofrecen algunas ideas sobre cómo podría ampliar las posibilidades de este gráfico.

Añada una columna de rotación al archivo de Excel y utilícela para controlar la rotación de los sistemas de coordenadas.

Añada desfases horizontales o verticales al archivo de Excel para que las farolas puedan desviarse de la línea característica de obra lineal si es necesario.

En lugar de utilizar un archivo de Excel con valores de P.K., genere estos valores directamente en Dynamo mediante un P.K. inicial y una separación típica.

Coloque referencias a bloque de farolas a lo largo de una obra lineal en los valores de P.K. especificados de un archivo de Excel.

¡Misión cumplida!

🎯
🎉
232KB
Roads_CorridorBlockRefs (1).dyn
54MB
Roads_CorridorBlockRefs.dwg
12KB
LightPoles.xlsx
Estructura de la tabla del archivo de Excel
Importación de datos de Excel en Dynamo
Colocación de datos de Excel en un diccionario
Recuperación de datos del diccionario
Obtención de sistemas de coordenadas a lo largo de las líneas características de obra lineal
Obtención de las definiciones de bloque que deseamos del documento
Creación de referencias a bloque en el espacio modelo
Realización de cambios en el archivo de Excel y visualización rápida de los resultados en Civil 3D
Ejecución del gráfico mediante el Reproductor de Dynamo y visualización de los resultados en Civil 3D
Visualización de la geometría de obra lineal en Dynamo