{"id":30261,"date":"2020-01-08T09:47:03","date_gmt":"2020-01-08T08:47:03","guid":{"rendered":"https:\/\/mascalagrimas.es\/dev-msi_old\/?p=30261"},"modified":"2020-01-08T09:47:03","modified_gmt":"2020-01-08T08:47:03","slug":"por-que-dynamo-vol-ii-comprobacion-normativa","status":"publish","type":"post","link":"https:\/\/mascalagrimas.es\/dev-msi_old\/por-que-dynamo-vol-ii-comprobacion-normativa\/","title":{"rendered":"\u00bfPor qu\u00e9 Dynamo? Vol. II: Comprobaci\u00f3n Normativa"},"content":{"rendered":"\n<p>En anteriores entradas, que pod\u00e9is encontrar en este <a aria-label=\"enlace (se abre en una nueva pesta\u00f1a)\" href=\"https:\/\/mascalagrimas.es\/dev-msi_old\/automatizacion-de-tareas-repetitivas-por-que-dynamo\/\" target=\"_blank\" rel=\"noreferrer noopener\">enlace<\/a>, hablamos sobre una posible aplicaci\u00f3n de Dynamo en el contexto de un proyecto real concreto. All\u00ed se nos ped\u00eda una cierta estructuraci\u00f3n del modelo en base a subproyectos que deb\u00edamos cumplir acorde al BEP del proyecto. En este caso, mostramos una aplicaci\u00f3n que podemos utilizar en el contexto de cualquier proyecto ya que no es una exigencia BIM si no un beneficio derivado de utilizar los softwares param\u00e9tricos y Dynamo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Antecedentes<\/h2>\n\n\n\n<p>Como hemos comentado anteriormente, las automatizaciones se pueden utilizar para realizar tareas repetitivas, gestionar la base de datos del modelo, o para utilizarlo como puente con otros motores de c\u00e1lculo o <strong>an\u00e1lisis<\/strong>. En este caso utilizamos Dynamo para realizar una comprobaci\u00f3n a nivel normativo.<\/p>\n\n\n\n<p>Para garantizar unos niveles de iluminaci\u00f3n y ventilaci\u00f3n\nm\u00ednimos se establece en diversos documentos de car\u00e1cter normativo, una\nsuperficie m\u00ednima de contacto con el exterior. Esta exigencia m\u00ednima suele ser\nuna fracci\u00f3n de la superficie \u00fatil de la estancia o espacio. <\/p>\n\n\n\n<p>Gracias a <strong>Dynamo<\/strong> y a unas ciertas configuraciones,\nseremos capaces de analizar si nuestro modelo cumple con esta exigencia durante\nla etapa de dise\u00f1o de una forma muy r\u00e1pida y gr\u00e1fica. As\u00ed podremos realizar\ncomprobaciones de forma r\u00e1pida y analizar cu\u00e1l es la mejor distribuci\u00f3n de\noberturas para cada uno de nuestros espacios.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"438\" src=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/0.-Ejemplo-planta-1024x438.jpg\" alt=\"\" class=\"wp-image-30263\" title=\"\" srcset=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/0.-Ejemplo-planta-1024x438.jpg 1024w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/0.-Ejemplo-planta-300x128.jpg 300w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/0.-Ejemplo-planta-768x328.jpg 768w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/0.-Ejemplo-planta.jpg 1320w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption> Ilustraci\u00f3n 1. Visualizaci\u00f3n de la informaci\u00f3n antes y despu\u00e9s de usar el script. Fuente propia. <\/figcaption><\/figure><\/div>\n\n\n\n<p>Tal y como se puede apreciar en la imagen anterior, vemos como\nlos valores asociados a cada una de las habitaciones se actualizan cuando\nejecutamos el <strong>script<\/strong> (por eso el cambio de color en las habitaciones de\nla vista). Despu\u00e9s de haber modificado la distribuci\u00f3n de oberturas en fachada\nen algunas estancias, hemos vuelto a ejecutar el script para recalcular los\nvalores y poder comprobar as\u00ed que las modificaciones nos permiten cumplir con\nlas exigencias m\u00ednimas de iluminaci\u00f3n y ventilaci\u00f3n. <\/p>\n\n\n\n<p>Para conseguir que funcionara este script tuvimos que realizar\n3 tareas principales:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Preconfiguraci\u00f3n de las Familias<\/h3>\n\n\n\n<p>Es fundamental que las familias que utilicemos est\u00e9n preparadas para realizar el c\u00e1lculo previo de la superficie de iluminaci\u00f3n natural y de ventilaci\u00f3n. Posiblemente es el paso m\u00e1s importante y tedioso de todo el proceso ya que implica entrar en todas las familias de ventana o balconera y crear par\u00e1metros relacionados con par\u00e1metros existentes que nos permitan calcular estas dos superficies que antes coment\u00e1bamos. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1005\" height=\"647\" src=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/1.-Familia-de-ventana-1.jpg\" alt=\"\" class=\"wp-image-30264\" title=\"\" srcset=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/1.-Familia-de-ventana-1.jpg 1005w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/1.-Familia-de-ventana-1-300x193.jpg 300w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/1.-Familia-de-ventana-1-768x494.jpg 768w\" sizes=\"(max-width: 1005px) 100vw, 1005px\" \/><figcaption> Ilustraci\u00f3n 2. Familia de ventana preparada para los c\u00e1lculos previos. Fuente propia. <\/figcaption><\/figure><\/div>\n\n\n\n<p>Es importante destacar que, dependiendo del tipo de ventana, de sus\npar\u00e1metros y de c\u00f3mo se haya parametrizado, las formulaciones que utilicemos\nvariar\u00e1n. N\u00famero de hojas, n\u00famero de marcos, etc. <\/p>\n\n\n\n<p>El uso de formulaciones es imprescindible ya que, si no fuera as\u00ed, cuando\ncre\u00e1semos un nuevo tipo de ventana no se calcular\u00edan estos valores actualizados\nde forma autom\u00e1tica. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Script<\/h3>\n\n\n\n<p>Por otro lado, necesitamos crear esa secuencia de <strong>funciones\no acciones<\/strong> que nos permita obtener el resultado que esperamos (resultado de\nla comprobaci\u00f3n: \u201cCumple\u201d o \u201cNo Cumple\u201d). Para ello, extraemos la informaci\u00f3n\nnecesaria del modelo, la organizamos como necesitemos, realizamos la\ncomprobaci\u00f3n y devolvemos la informaci\u00f3n del resultado al modelo. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"390\" src=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script-1024x390.jpg\" alt=\"\" class=\"wp-image-30265\" title=\"\" srcset=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script-1024x390.jpg 1024w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script-300x114.jpg 300w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script-768x293.jpg 768w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script-1536x585.jpg 1536w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/2.-Estructura-de-Nodos-Script.jpg 1546w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption> Ilustraci\u00f3n 3. Estructura de nodos del script. Fuente propia. <\/figcaption><\/figure><\/div>\n\n\n\n<p>Para realizar un script normalmente utilizamos los \u201c<strong>nodos<\/strong>\u201d que se tratan de <strong>funciones<\/strong> precreadas. \u00c9stos son sencillos de usar, solo tendremos que conectar la informaci\u00f3n en sus puntos de entrada y salida. Utilizamos los nodos para desarrollar la programaci\u00f3n visual y los extraemos de <strong><em>Packages<\/em><\/strong> o \u201cPaquetes\u201d de nodos que han sido desarrollados por terceros (profesionales que son capaces de crear esos nodos, no a trav\u00e9s de la programaci\u00f3n visual, sino a trav\u00e9s de la programaci\u00f3n en c\u00f3digo). Programar en c\u00f3digo es mucho m\u00e1s complejo que la programaci\u00f3n Visual (Dynamo), pero nos permite tener m\u00e1s libertad y poder desarrollar cualquier funci\u00f3n mientras seamos capaces de imaginarla.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Funci\u00f3n a trav\u00e9s de Python script<\/h3>\n\n\n\n<p>Por lo tanto, cuando necesitemos aplicar una funci\u00f3n de la que\nno disponemos (ya sea porque es muy personalizada o porque no la encontramos en\nlos paquetes de otros desarrolladores) deberemos realizarla nosotros.<\/p>\n\n\n\n<p>Estas funciones las desarrollamos a trav\u00e9s de <strong>programaci\u00f3n\nen c\u00f3digo<\/strong> y podemos realizarla con diversos lenguajes. En este caso, lo hemos\nrealizado con <strong><em>Python<\/em><\/strong><em>, <\/em>uno de los lenguajes de programaci\u00f3n\nm\u00e1s sencillos.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/3.-Python-Script-1024x578.jpg\" alt=\"\" class=\"wp-image-30266\" title=\"\" srcset=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/3.-Python-Script-1024x578.jpg 1024w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/3.-Python-Script-300x169.jpg 300w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/3.-Python-Script-768x434.jpg 768w, https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/3.-Python-Script.jpg 1186w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>Ilustraci\u00f3n 4. Python Script. Fuente propia <\/figcaption><\/figure><\/div>\n\n\n\n<p>En el script anterior la funci\u00f3n que realizamos es comprobar si los valores de las diferentes superficies de iluminaci\u00f3n llegan a un m\u00ednimo o no. Esta funci\u00f3n, que es <strong>muy sencilla, <\/strong>podr\u00eda haberse realizado con otros nodos o funciones y funcionar\u00eda de la misma manera. <\/p>\n\n\n\n<p>En este caso optamos por hacerlo con un \u00fanico nodo para simplificar el script general. Al ser un script que no quisimos ligar a <strong>Dynamo Player <\/strong>(por la versi\u00f3n de Revit<strong>)<\/strong>, necesit\u00e1bamos que fuera lo m\u00e1s simple posible para que los modeladores pudieran abrirlo y usarlo sin asustarse demasiado al abrirlo. <\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video controls src=\"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-content\/uploads\/2020\/01\/Final.mp4\"><\/video><figcaption>Script c\u00e1lculo superficie de iluminaci\u00f3n. Fuente propia. <\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusiones <\/h2>\n\n\n\n<p>Gracias a este script, podemos agilizar el c\u00e1lculo de la superficie m\u00ednima de huecos en fachada y ahorrar tiempo en esta tarea. No solo en un proyecto determinado, sino en todos los proyectos que realicemos, ya que ser\u00e1 algo que deberemos implementar siempre. Adem\u00e1s, el uso de los nodos personalizados a trav\u00e9s del lenguaje Python, nos permitir\u00e1 particularizar al m\u00e1ximo las herramientas que realizamos y a trav\u00e9s de ellas tener el control que necesitamos del proyecto. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>En anteriores entradas, que pod\u00e9is encontrar en este enlace, hablamos sobre una posible aplicaci\u00f3n de Dynamo en el contexto de un proyecto real concreto. All\u00ed se nos ped\u00eda una cierta estructuraci\u00f3n del modelo en base a subproyectos que deb\u00edamos cumplir acorde al BEP del proyecto. En este caso, mostramos una aplicaci\u00f3n que podemos utilizar en&hellip; <a class=\"more-link\" href=\"https:\/\/mascalagrimas.es\/dev-msi_old\/por-que-dynamo-vol-ii-comprobacion-normativa\/\">Seguir leyendo <span class=\"screen-reader-text\">\u00bfPor qu\u00e9 Dynamo? Vol. II: Comprobaci\u00f3n Normativa<\/span><\/a><\/p>\n","protected":false},"author":8,"featured_media":30274,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"_joinchat":[],"footnotes":""},"categories":[5],"tags":[63,17,64,22,65,66],"class_list":["post-30261","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-consultoria","tag-automatizacion","tag-dynamo","tag-excel","tag-revit","tag-rutina","tag-script","entry"],"acf":[],"_links":{"self":[{"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/posts\/30261"}],"collection":[{"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/comments?post=30261"}],"version-history":[{"count":0,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/posts\/30261\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/media\/30274"}],"wp:attachment":[{"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/media?parent=30261"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/categories?post=30261"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mascalagrimas.es\/dev-msi_old\/wp-json\/wp\/v2\/tags?post=30261"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}