12 de octubre de 2023 6:48:04 EST | 6 Tiempo de lectura

Aplicaciones de Python en el ámbito de la arquitectura

Compartir
Aplicaciones de Python en el ámbito de la arquitectura

En este artículo mencionamos las aplicaciones de Python en el sector AEC, desde el desarrollo de scripts para las herramientas BIM hasta la visualización de datos.

Python es un lenguaje de programación muy versátil y potente, que se puede utilizar para diversas aplicaciones en el ámbito de la arquitectura. Una de las ventajas de Python es que es un lenguaje interpretado, lo que significa que no necesita ser compilado antes de ejecutarse, y que se puede modificar fácilmente durante el proceso de desarrollo. Además, Python tiene una sintaxis sencilla y clara, que facilita la lectura y escritura del código.

Ahora bien, una de las aplicaciones más interesantes de Python en el ámbito de la arquitectura es su integración con las herramientas BIM (Building Information Modeling), que son sistemas que permiten modelar, analizar y gestionar la información de un proyecto a lo largo de su ciclo de vida. Algunas de las herramientas BIM más populares son Revit y Dynamo, pero también existen otras como ArchiCAD, Rhino, y Grasshopper.

Concretamente, Python se puede utilizar para ampliar las funcionalidades de estas herramientas BIM, creando scripts o rutinas que se ejecutan dentro de ellas. Estos scripts pueden automatizar tareas repetitivas, optimizar procesos, generar geometrías complejas, extraer datos, realizar cálculos, crear visualizaciones, y más.

Por ejemplo, Revit es una herramienta BIM muy utilizada por los arquitectos, que permite modelar y documentar proyectos arquitectónicos en 3D. Revit tiene una interfaz gráfica que facilita el uso de sus funciones básicas, pero también permite el uso de Python para crear scripts personalizados que se ejecutan dentro de ella. Estas rutinas se pueden crear con el editor integrado de Revit, llamado Macro Manager, o con herramientas externas como Dynamo o PyRevit.

  • Dynamo es una herramienta que permite crear scripts visuales para Revit, es decir, programas que se componen de nodos gráficos que se conectan entre sí. Cada nodo representa una función o un dato, y al conectarlos se crea una secuencia lógica que define el comportamiento del script. Dynamo tiene una gran variedad de nodos predefinidos, pero también permite el uso de Python para crear nodos personalizados o para escribir código directamente dentro de un nodo.
  • PyRevit es una extensión gratuita y de código abierto para Revit, que permite crear scripts en Python que se ejecutan como comandos dentro de la interfaz de Revit. PyRevit tiene una serie de ventajas sobre el Macro Manager o Dynamo, como una mayor velocidad de ejecución, una mejor integración con la interfaz de Revit, una mayor flexibilidad y personalización, y la posibilidad de usar librerías externas de Python.

Usos concretos de Python para el sector AEC

Sin dudas, Python es un lenguaje muy útil para los arquitectos que quieren aprovechar al máximo las posibilidades que ofrecen las herramientas de software BIM. A continuación mencionamos algunas aplicaciones interesantes.

Automatización de tareas: Python se puede utilizar para automatizar tareas repetitivas o tediosas que se realizan en el proceso de diseño y construcción, como la creación de planos, la generación de documentación, la verificación de normativas, etc. Python permite crear scripts y macros que se ejecutan de forma rápida y sencilla, ahorrando tiempo y recursos. Un ejemplo de automatización con Python es la creación de tablas dinámicas personalizadas a partir de los datos del modelo BIM.

Personalización de herramientas: Python se puede utilizar para personalizar el entorno de trabajo y las herramientas que se utilizan en el ámbito de la arquitectura y la construcción, como Revit, Rhino, Grasshopper, etc. Python permite desarrollar plugins y extensiones que añaden funcionalidades y opciones a estas herramientas, adaptándolas a las necesidades y preferencias de cada usuario. Un ejemplo de esto es, de hecho, el desarrollo del ya mencionado PyRevit.

Creación de geometrías complejas: Python se puede utilizar para crear geometrías complejas que no se pueden lograr con las herramientas convencionales de modelado 3D, como formas paramétricas, orgánicas, fractales, etc., utilizando algoritmos matemáticos y lógicos. Estas geometrías pueden tener aplicaciones estéticas, estructurales o funcionales en el diseño arquitectónico. Esto puede lograrse, por ejemplo, utilizando el nodo Python Script de Dynamo para acceder directamente a la API de Revit y manipular los elementos y las propiedades del modelo BIM.

Optimización del diseño: Python se puede utilizar para optimizar el diseño arquitectónico en función de diferentes criterios y objetivos, como la eficiencia energética, la iluminación natural, la resistencia estructural, el confort térmico, etc. ¿Cómo? A través de técnicas de optimización matemática, como algoritmos genéticos, recocido simulado, etc., que buscan encontrar la mejor solución posible dentro de un espacio de diseño definido. Una forma de poner esto en práctica es a través del uso del módulo PyGMO para resolver problemas multiobjetivo en Grasshopper.

Visualización de datos: Python se puede utilizar para visualizar datos relacionados con la arquitectura y la construcción, como el comportamiento de los usuarios, el consumo energético, el impacto ambiental, etc. A través de bibliotecas específicas como Matplotlib, Seaborn, o Plotly, Python facilita la creación de gráficos interactivos y atractivos que facilitan la comprensión y la comunicación de los datos. Un ejemplo de visualización de datos con Python es el uso del módulo Pandas para crear un dashboard con los indicadores clave del rendimiento energético de un edificio.

Gestión de datos: Una de las grandes fortalezas del lenguaje Python es ser apropiado para el manejo de grandes cantidades de datos, aplicable a Data Science, BigData y Machine Learning. Sin embargo, en el sector AEC, Python se ha convertido en un lenguaje de fácil aprendizaje, que permite la implementación de modelos de gestión de datos, con integración de varios software y la interoperabilidad necesaria para cubrir el universo del desarrollo del proyecto. Un ejemplo muy interesante es la integración con Excel, para el armado de presupuestos y modelación Financiera.

Las habilidades del arquitecto 4.0

No caben dudas de que el perfil profesional de nuestra disciplina se ha expandido para integrar cada vez más las tecnologías digitales, entre las cuales la programación es una de las últimas y más requeridas. Debido a ello, en echeverrimontes venimos trabajando en impulsar la transformación digital de estudios y constructoras, haciendo foco en la relevancia de estos nuevos conocimiento y habilidades para el éxito comercial y la satisfacción del cliente.

¿NECESITAS ASESORAMIENTO PARA TU PROYECTO? ESCRÍBENOS

 

Temas: Transformación digital, arquitectura 4.0

Artículos relacionados

echeverrimontes/blog

La arquitectura entre la innovación y lo patrimonial

La relación de la arquitectura con el patrimonio cultural y las tendencias innovadoras en diseño.

Leer más
echeverrimontes/blog

El metaverso y la práctica de la arquitectura

El metaverso es un entorno virtual inmersivo, colectivo e hiperrealista, que promete revolucionar...

Leer más
echeverrimontes/blog

¿Qué es el performance-driven design?

El diseño impulsado por el rendimiento busca explorar el espacio de diseño y encontrar la mejor...

Leer más