Praca przy użyciu oprogramowania Dynamo w dużej mierze opiera się na odpowiednich działaniach przeprowadzanych w obrębie list. Poznanie konstrukcji, możliwości i dostępnych operacji jest gwarantem zwiększenia efektywności i zautomatyzowania części zadań wykonywanych w programie Autodesk Revit.

Listy w Dynamo

Wszystko co nas otacza podlega organizacji i hierarchii. Posługując się przykładem systemu operacyjnego, możemy wyróżnić foldery, w których znajdują się pliki, całość zaś zlokalizowana jest na partycji dysku. W Dynamo hierarchia jest podobna, z tą różnicą, że zamiast plików mamy dane projektowe, a zamiast folderów – listy. Podobnie jak w systemie operacyjnym dostępnych jest wiele możliwości tworzenia, modyfikacji i organizowania danych. Lista jest zbiorem elementów o konkretnej właściwości, którą może być kategoria, parametr, materiał, geometria itp.

Wybór_elementów_Dynamo
Wybór_elementów_Dynamo

Zakupy w Dynamo

Do łatwiejszego zrozumienia zagadnienia warto je przedstawić w sytuacji życia codziennego. Wyobraźmy sobie zakupy (tutaj ważna uwaga: z listą zakupów!). Wszystko co mamy na liście wkładamy do naszego koszyka. Po powrocie do domu rozpoczynamy segregację, dzieląc zakupy wedle przeznaczenia. Część z nich stanowią artykuły spożywcze, wśród których znajdują się warzywa, owoce czy pieczywo. Czy możliwe jest stwierdzenie ile i które produkty z naszej listy możemy zaliczyć jako owoce? Na podobnych zasadach prowadzone są operacje na danych w Dynamo.

Tworzymy listę!

Spróbujmy stworzyć prostą listę obiektów z programu Autodesk Revit. Oprogramowanie Dynamo oferuje nam wiele sposobów wyboru konkretnych elementów. Przykładowo: możliwe jest wyselekcjonowanie wszystkich wystąpień komponentów z danego widoku, poziomu, zaznaczenia, rodziny czy też kategorii. Każde z poleceń spowoduje stworzenie listy elementów spełniających założone kryterium (w naszym przypadku będą to ściany).

Wybór_elementów_wg_kategorii
Wybór_elementów_wg_kategorii

Elementy z listy niosą ze sobą zagnieżdżone informacje. W prosty sposób możemy uzyskać wartości parametrów zdefiniowanych w ścianach (u nas będzie to “Wysokość niezwiązana”).

Lista_wartości_parametru
Lista_wartości_parametru

Podstawowe sposoby obróbki danych

Dynamo umożliwia nam szereg operacji. Przykładowo: listy można łączyć, dzielić, przypisywać/usuwać indeksy. Istotną funkcjonalnością jest możliwość filtrowania danych. W ten sposób jesteśmy w stanie otrzymać listę elementów, których parametry przyjmują określone wartości. Dzięki temu ich lokalizacja w projekcie jest o wiele prostsza.

Maska prawdę Ci powie

Spróbujmy wyselekcjonować z listy ścian te, których “Wysokość niezwiązana” zawierać się będzie w określonym przedziale. W tym celu skorzystam z dostępnych w Dynamo warunków logicznych “mniejszy lub równy” oraz “większy lub równy”, które spiąłem zależnością “i”. Na ich podstawie program jest w stanie stworzyć kolejne listy przypisując elementom spełniającym warunek status “true” (prawda), a niespełniającym “false” (fałsz). Jedną z nich możemy potraktować jako filtr, na podstawie którego elementy zostaną posegregowane. W tym celu należy użyć węzła FilterByBoolMask, gdzie jako dane wejściowe podłączamy listę i filtr (lista true/false o tej samej liczbie elementów). Finalnie otrzymujemy dwie listy z danymi, a nasze elementy zostały podzielone na spełniające i niespełniające warunek.

BoolMask_Dynamo
BoolMask_Dynamo

Wykorzystuj kod

Często zdarza się, że węzeł powodujący określone działanie nie jest dostępny w Dynamo lub wyszukanie go może pochłonąć sporo czasu. Tu z pomocą przychodzi nam wewnętrzny, tekstowy język programowania – DesignScript. Takie rozwiązanie pozwala nam również umieścić większą ilość operacji w jednym węźle. Spróbujmy więc stworzyć listę indeksów elementów, które spełniają kryteria wyszukiwania. Następnie używając węzła AllIndicesOf możemy przefiltrować listę obiektów, którym zostały przypisane konkretne indeksy (nie tylko true/false). Wynikowo otrzymujemy identyczną listę, co przy użyciu maski prawda/fałsz, choć ścieżka jej wygenerowania była nieco inna.

DesignScript_Dynamo
DesignScript_Dynamo

Słowem podsumowania

Oprogramowanie Dynamo znacznie ułatwia pracę w Autodesk Revit. Występujące w projekcie informacje można poddawać szeregowi operacji. Różnorodność narzędzi pozwala rozwiązać konkretny problem na wiele sposobów. Przy minimalnej znajomości programowania jesteśmy w stanie samodzielnie stworzyć dowolny skrypt.

BoolMask_vs_DesignScript
BoolMask_vs_DesignScript

Jeśli szukasz informacji na temat podstaw pracy w środowisku Dynamo zapraszamy do zapoznania się z naszym wcześniejszym wpisem TUTAJ!

Tags:

Zobacz podobne

Typ części Autodesk Revit

Parametr “Typ części”

Każda z rodzin MEP posiada parametr “Typ części”. Jest on niewidoczny z poziomu projektu, a ...

Opcje sterowania wyborem elementów w Autodesk Revit

Czasami zaznaczenie elementów w oprogramowaniu Autodesk Revit jest niemożliwe. Zwykle przyczyną jest włączenie jednej ...

Hierarchia nadpisań graficznych Revit

Hierarchia nadpisań graficznych

Wstęp Generując dokumentację w Autodesk Revit stajemy przed koniecznością użycia nadpisań graficznych. Problem pojawia ...