Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
W dodatku Dynamo można utworzyć tablicę elementów programu Revit z zachowaniem pełnej kontroli parametrycznej. Węzły programu Revit w dodatku Dynamo umożliwiają importowanie elementów z geometrii ogólnych do kategorii określonych typów (takich jak ściany czy stropy). W tej sekcji skoncentrujemy się na importowaniu elementów o elastycznych parametrach przy użyciu komponentów adaptacyjnych.
Komponent adaptacyjny to elastyczna kategoria rodzin, która jest przydatna do generowania elementów. Podczas tworzenia wystąpienia można utworzyć element złożony geometrycznie, który zależy od podstawowej lokalizacji punktów adaptacyjnych.
Poniżej przedstawiono przykład komponentu adaptacyjnego o trzech punktach w edytorze rodzin. Zostanie wygenerowana kratownica zależna od położenia poszczególnych punktów adaptacyjnych. W poniższym ćwiczeniu użyjemy tego komponentu, aby wygenerować serię kratownic wzdłuż fasady.
Komponent adaptacyjny stanowi dobry przykład wzorców postępowania w zakresie zgodności operacyjnej. Możemy utworzyć tablicę komponentów adaptacyjnych, definiując podstawowe punkty adaptacyjne. Następnie wystarczy przesłać te proste dane do innych programów, aby zawrzeć w nich całą geometrię. Na podobnych zasadach działa importowanie i eksportowanie w przypadku programów takich jak Excel.
Załóżmy, że doradca zajmujący się fasadą pyta o lokalizację kratownic, ale nie musi przetwarzać ich całej geometrii. Podczas przygotowań do produkcji doradca może sprawdzić lokalizację punktów adaptacyjnych, aby wygenerować geometrię w programie takim jak Inventor.
W poniższym przykładzie przygotujemy proces roboczy, który umożliwi uzyskanie dostępu do wszystkich tych danych podczas opracowywania definicji na potrzeby tworzenia elementów w programie Revit. Taki proces roboczy płynnie łączy etapy koncepcyjne, dokumentacji i produkcji. Proces jest inteligentny i efektywny, co gwarantuje spójność operacyjną.
W pierwszym ćwiczeniu poniżej omówimy sposób, w jaki dodatek Dynamo odnosi się do danych na potrzeby tworzenia elementów programu Revit. Aby wygenerować wiele komponentów adaptacyjnych, zdefiniujemy listę list, na której każda lista ma trzy punkty reprezentujące komponent adaptacyjny. Będziemy z tego korzystać podczas zarządzania strukturami danych w dodatku Dynamo.
Inną metodą importowania geometrii parametrycznej z dodatku Dynamo do programu Revit jest zastosowanie kształtów bezpośrednich. Element kształtu bezpośredniego i powiązane z nim klasy umożliwiają przechowywanie w dokumencie programu Revit kształtów geometrycznych, które utworzono w innym oprogramowaniu. Taka geometria może obejmować bryły zamknięte i siatki. Kształty bezpośrednie są przede wszystkim przeznaczone do importowania kształtów z innych formatów danych, takich jak IFC lub STEP, które nie zawierają informacji wystarczających do utworzenia kompletnego elementu programu Revit. Podobnie jak w przypadku procesu roboczego związanego z plikami IFC i STEP, kształty bezpośrednie dobrze działają w przypadku importowania geometrii utworzonych w dodatku Dynamo jako rzeczywistych elementów projektów do programu Revit.
W drugim ćwiczeniu omówimy importowanie geometrii z dodatku Dynamo jako kształtu bezpośredniego (DirectShape) do projektu programu Revit. Przy użyciu tej metody możemy przypisać kategorię, materiał i nazwę do importowanej geometrii — zachowując przy tym połączenie parametryczne z wykresem w programie Dynamo.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Jeśli zaczniemy tę sekcję przy użyciu przykładowego pliku lub będziemy kontynuować pracę z plikiem programu Revit z poprzedniej sekcji, otrzymamy tę samą bryłę w programie Revit.
Tak wygląda plik po otwarciu.
To jest system kratownic utworzony w dodatku Dynamo i połączony inteligentnie z bryłą programu Revit.
Użyliśmy węzłów „Select Model Element” i „Select Face”, a teraz wykonamy kolejny krok w hierarchii geometrii: użyjemy węzła „Select Edge”. Gdy moduł obliczeń dodatku Dynamo jest ustawiony do pracy automatycznej, wykres jest w sposób ciągły aktualizowany o zmiany wprowadzone w pliku programu Revit. Wybrana krawędź jest dynamicznie powiązana z topologią elementu programu Revit. O ile topologia* nie ulegnie zmianie, połączenie między programem Revit a dodatkiem Dynamo pozostanie aktywne.
Wybierz skrajną górną krzywą przeszklonej fasady. Biegnie ona przez całą długość budynku. W przypadku problemów z wybraniem krawędzi pamiętaj, aby ustalić zaznaczenie w programie Revit przez ustawienie wskaźnika na krawędzi i naciskanie klawisza Tab do momentu podświetlenia właściwej krawędzi.
Przy użyciu dwóch węzłów „Select Edge” wybierz każdą z krawędzi odpowiadających ścięciu na środku fasady.
Zrób to samo w przypadku dolnych krawędzi fasady w programie Revit.
Węzły Watch wskazują, że powstały linie w dodatku Dynamo. Są one automatycznie konwertowane na geometrię dodatku Dynamo, gdyż same krawędzie nie są elementami programu Revit. Te krzywe stanowią odniesienia, przy użyciu których utworzymy wystąpienia kratownic adaptacyjnych wzdłuż fasady.
*Aby zachować spójność topologii, odnosimy się do modelu, do którego nie dodano dodatkowych powierzchni ani krawędzi. Choć parametry mogą zmienić jego kształt, jego podstawowa konstrukcja nie ulega zmianie.
Najpierw musimy połączyć krzywe i scalić je w jedną listę. W ten sposób zgrupujemy krzywe, aby wykonywać operacje na geometrii.
Utwórz listę dwóch krzywych na środku fasady.
Połącz te krzywe w krzywą złożoną, łącząc komponent List.Create z węzłem Polycurve.ByJoinedCurves.
Utwórz listę dwóch krzywych na dole fasady.
Połącz te krzywe w krzywą złożoną, łącząc komponent List.Create z węzłem Polycurve.ByJoinedCurves.
Na koniec połącz trzy krzywe główne (linię i dwie krzywe złożone) w jedną listę.
Chcemy wykorzystać krzywą górną, która jest linią i reprezentuje całą długość fasady. Utworzymy wzdłuż tej linii płaszczyzny przecinające się z zestawem krzywych zgrupowanych na liście.
W węźle Code Block zdefiniuj zakres, używając składni:
0..1..#numberOfTrusses;
Połącz węzeł Integer Slider z wejściem węzła Code Block. Oczywiście odpowiada on liczbie kratownic. Od suwaka zależy liczba elementów w zakresie od *0 *do 1.
Połącz węzeł Code Block z wejściem param (parametr) węzła „Curve.PlaneAtParameter” i połącz górną krawędź z wejściem curve. Uzyskamy w ten sposób dziesięć płaszczyzn równomiernie rozłożonych wzdłuż całej fasady.
Płaszczyzna jest abstrakcyjną częścią geometrii, która reprezentuje nieskończoną przestrzeń dwuwymiarową. Płaszczyzny ułatwią nam tworzenie warstwic i przecięć potrzebnych w tym kroku.
Przy użyciu węzła Geometry.Intersect (ustaw opcję skratowania na iloczyn wektorowy) połącz węzeł Curve.PlaneAtParameter z wejściem entity węzła Geometry.Intersect. Połącz główny węzeł List.Create z wejściem geometry (geometria). W rzutni dodatku Dynamo widać teraz punkty reprezentujące przecięcia poszczególnych krzywych ze zdefiniowanymi płaszczyznami.
Dane wyjściowe stanowią listę list list. To zbyt wiele list na nasze potrzeby. Chcemy częściowo spłaszczyć tę strukturę. Musimy przejść o krok w dół na liście i spłaszczyć wynik. Aby to zrobić, użyjemy operacji List.Map, którą omówiono w rozdziale tego przewodnika Primer dotyczącym list.
Połącz węzeł Geometry.Intersect z wejściem listy węzła List.Map.
Połącz węzeł Flatten z wejściem f(x) węzła List.Map. W wyniku otrzymamy trzy listy, z których każda zawiera tyle elementów, ile jest kratownic.
Musimy zmienić te dane. Aby utworzyć wystąpienie kratownicy, potrzebna jest taka sama liczba punktów adaptacyjnych, jaką zdefiniowano w rodzinie. To jest komponent adaptacyjny o trzech punktach, dlatego zamiast trzech list po 10 elementów (liczba kratownic) potrzebujemy 10 list po trzy elementy. W ten sposób możemy utworzyć 10 komponentów adaptacyjnych.
Połącz węzeł List.Map z węzłem List.Transpose. Teraz otrzymaliśmy oczekiwane dane wyjściowe.
Aby sprawdzić, czy dane są prawidłowe, dodaj węzeł Polygon.ByPoints do obszaru projektowania i porównaj wartości z podglądem dodatku Dynamo.
Komponenty adaptacyjne umieścimy w tablicy w taki sam sposób jak podczas tworzenia wielokątów.
Dodaj do obszaru projektowania węzeł AdaptiveComponent.ByPoints i połącz węzeł List.Transpose z jego wejściem points (punkty).
Przy użyciu węzła Family Types wybierz rodzinę „AdaptiveTruss” i połącz ją z wejściem FamilyType węzła AdaptiveComponent.ByPoints.
W programie Revit powstało dziesięć kratownic równomiernie rozłożonych wzdłuż fasady.
Aby wypróbować możliwości wykresu, zwiększymy liczbę kratownic (numberOfTrusses) do 30 przy użyciu suwaka. Powstaje wiele kratownic. Nie jest to realistyczne, ale wiemy, że działa połączenie parametryczne. Po zweryfikowaniu ustaw wartość numberOfTrusses na 15.
Jako ostatni test wybierzemy bryłę w programie Revit i zmienimy parametry wystąpienia, aby zmodyfikować kształt budynku i sprawdzić, czy kratownice za nim podążają. Aby aktualizacja była widoczna, ten wykres dodatku Dynamo musi być widoczny. Jego zamknięcie powoduje zerwanie połączenia.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Zacznij od otwarcia pliku przykładowego do tej lekcji: ARCH-DirectShape-BaseFile.rvt.
W widoku 3D widać bryłę budynku z poprzedniej lekcji.
Wzdłuż krawędzi atrium istnieje jedna krzywa odniesienia. Użyjemy jej jako odniesienia w dodatku Dynamo.
Wzdłuż przeciwnej krawędzi atrium znajduje się kolejna krzywa odniesienia. Również jej użyjemy w dodatku Dynamo.
Aby uzyskać odniesienie do tej geometrii w dodatku Dynamo, dla każdego elementu z programu Revit użyjemy węzła Select Model Element. Wybierz bryłę w programie Revit i zaimportuj geometrię do dodatku Dynamo przy użyciu węzła Element.Faces. Bryła powinna teraz być widoczna w podglądzie dodatku Dynamo.
Zaimportuj krzywą odniesienia do dodatku Dynamo, używając węzłów Select Model Element i CurveElement.Curve.
Zaimportuj drugą krzywą odniesienia do dodatku Dynamo, używając węzłów Select Model Element i CurveElement.Curve.
Oddalenie widoku wykresu przykładowego i przesunięcie w prawo pozwoli zobaczyć grupę węzłów. Są to operacje geometryczne, które generują konstrukcję kratownic dachu widoczną w podglądzie programu Dynamo. Te węzły działają w oparciu o funkcję konwersji węzłów na kod omówioną w sekcji dotyczącej węzłów Code Block w tym przewodniku Primer.
Struktura zależy od trzech głównych parametrów: przesunięcia po przekątnej, ugięcia i promienia.
Powiększ wykres i przyjrzyj się jego parametrom. Możemy je dostosować, aby uzyskać różnorodną geometrię.
Po upuszczeniu na obszar projektowania węzła DirectShape.ByGeometry widzimy, że ma on cztery wejścia: geometry, category, material i name (geometria, kategoria, materiał i nazwa).
Geometria to bryła utworzona w części wykresu dotyczącej generowania geometrii.
Wejście kategorii można wybrać przy użyciu węzła rozwijanego Categories. W tym przypadku będzie to „Ramy konstrukcyjne”.
Wejście materiału można wybrać przy użyciu tablicy węzłów powyżej. W tym przypadku wystarczy ustawić opcję Domyślne.
Po uruchomieniu dodatku Dynamo wróciliśmy do programu Revit i zaimportowaliśmy geometrię do stropu naszego projektu. To jest element ramy konstrukcyjnej, a nie model ogólny. Połączenie parametryczne z dodatkiem Dynamo pozostaje zachowane.
Dodatek Dynamo dla programu Revit rozszerza możliwości modelowania informacji o budynku (BIM) za pomocą środowiska danych i logiki graficznego edytora algorytmów. Jego elastyczność w połączeniu z solidną bazą danych programu Revit zapewnia nową perspektywę dla modelowania BIM.
W tym rozdziale omówiono procesy robocze dodatku Dynamo dla modelowania BIM. Poszczególne sekcje są oparte głównie na ćwiczeniach, ponieważ przejście bezpośrednio do projektu jest najlepszym sposobem zapoznania się z graficznym edytorem algorytmów do modelowania informacji o budynku. Najpierw jednak omówimy początki tego programu.
Ponieważ zarówno program Revit, jak i dodatek Dynamo wciąż ewoluują, może się okazać, że używana wersja programu Revit nie jest zgodna z zainstalowaną na komputerze wersją dodatku Dynamo dla programu Revit. Poniżej opisano, które wersje dodatku Dynamo dla programu Revit są zgodne z programem Revit.
Dzięki dedykowanemu zespołowi programistów i pełnej zaangażowania społeczności ten projekt przebył długą drogę od skromnych początków.
Dodatek Dynamo został pierwotnie utworzony w celu usprawnienia procesów roboczych AEC w programie Revit. Mimo że program Revit tworzy obszerną bazę danych dla każdego projektu, uzyskanie dostępu do tych informacji przez przeciętnego użytkownika poza ograniczeniami interfejsu może być trudne. Program Revit udostępnia wszechstronny interfejs API (Application Program Interface) umożliwiający programistom zewnętrznym tworzenie narzędzi niestandardowych. Programiści używają tego interfejsu API od lat, ale tworzenie skryptów tekstowych nie jest technologią dostępną dla wszystkich. Dodatek Dynamo ma zdemokratyzować dane programu Revit za pomocą łatwego w obsłudze graficznego edytora algorytmów.
Używając podstawowych węzłów Dynamo wraz z węzłami niestandardowymi programu Revit, użytkownik może znacznie rozszerzyć parametryczne procesy robocze na potrzeby współdziałania, dokumentacji, analizy i generowania. Dzięki dodatkowi Dynamo można zautomatyzować żmudne procesy robocze i skutecznie analizować rozwiązania projektowe.
W edytorze rodziny lub projekcie programu Revit przejdź do pozycji Dodatki i kliknij opcję Dynamo*.
*Dodatek Dynamo zostanie uruchomiony tylko w pliku, w którym został otwarty.
W przypadku otwarcia dodatku Dynamo w programie Revit dostępna jest nowa kategoria o nazwie „Revit”. Jest to kompleksowy dodatek do interfejsu użytkownika, który zawiera węzły opracowane konkretnie do procesów roboczych programu Revit*.
*W razie użycia rodziny węzłów charakterystycznej dla programu Revit wykres dodatku Dynamo będzie działać tylko po otwarciu w dodatku Dynamo dla programu Revit. Jeśli na przykład wykres dodatku Dynamo dla programu Revit zostanie otwarty w dodatku Dynamo w trybie „piaskownicy” (Sandbox), będzie brakować węzłów programu Revit.
Ponieważ program Revit jest platformą zapewniającą zaawansowane zarządzanie projektem, operacje parametryczne w dodatku Dynamo mogą być skomplikowane, a ich obliczanie — powolne. Jeśli w dodatku Dynamo obliczanie węzłów trwa zbyt długo, można użyć funkcji zablokowania węzła, aby wstrzymać wykonywanie operacji programu Revit podczas tworzenia wykresu.
Ponieważ dodatek Dynamo został pierwotnie utworzony dla dziedzin architektury, inżynierii i budownictwa (AEC), jego duża i stale rosnąca społeczność stanowi doskonałe źródło do nauki i zapewnia możliwości kontaktu z ekspertami w branży. Społeczność dodatku Dynamo składa się z architektów, inżynierów, programistów i projektantów pełnych pasji tworzenia i dzielenia się wynikami pracy.
Z dodatkiem Dynamo związany jest też aktywny blog. Przeczytaj najnowsze wpisy, aby zapoznać się z nowościami i wiadomościami.
Zaawansowaną funkcją dodatku Dynamo jest możliwość edycji parametrów na poziomie parametrycznym. Na przykład algorytm generatywny lub wyniki symulacji mogą być używane do sterowania parametrami szyku elementów. W ten sposób zestaw wystąpień z tej samej rodziny może mieć niestandardowe właściwości w projekcie programu Revit.
Parametry wystąpienia definiują aperturę paneli na powierzchni dachu, od współczynnika apertury 0,1 do 0,4.
Parametry oparte na typie są stosowane do każdego elementu na powierzchni, ponieważ mają one ten sam typ rodziny. Na przykład materiał każdego panelu może być sterowany przez parametr oparty na typie.
Jeśli wcześniej skonfigurowano rodzinę programu Revit, należy pamiętać, że trzeba przypisać typ parametru (ciąg, liczbę, wymiar itp.). Podczas przypisywania parametrów z poziomu dodatku Dynamo należy używać odpowiedniego typu danych.
Dodatku Dynamo można również używać w połączeniu z wiązaniami parametrycznymi zdefiniowanymi we właściwościach rodziny programu Revit.
Jeśli chodzi o parametry w programie Revit, występują w nim parametry typu i parametry wystąpienia. Oba typy można edytować z poziomu dodatku Dynamo, ale w ćwiczeniu poniżej będziemy pracować z parametrami wystąpienia.
Od wersji 0.8 dodatek Dynamo jest zasadniczo pozbawiony jednostek. Dzięki temu dodatek Dynamo pozostaje abstrakcyjnym środowiskiem programowania wizualnego. Węzły Dynamo, które wchodzą w interakcje z wymiarami programu Revit, będą odnosiły się do jednostek projektu programu Revit. Na przykład w razie ustawiania z poziomu dodatku Dynamo parametru długości w programie Revit ta liczba w dodatku Dynamo będzie wyrażona w domyślnych jednostkach w projekcie programu Revit. W ćwiczeniu poniżej używane są metry.
Aby szybko przekształcić jednostki, użyj węzła „Convert Between Units”. Jest to przydatne narzędzie do przekształcania jednostek długości, powierzchni i objętości na bieżąco.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
W ćwiczeniu poniżej używane są metry.
W tym ćwiczeniu skupiono się na edycji elementów programu Revit bez wykonywania operacji geometrycznej w dodatku Dynamo. Nie importujemy tutaj geometrii dodatku Dynamo, a jedynie edytujemy parametry w projekcie programu Revit. To ćwiczenie jest podstawowe. Bardziej zaawansowani użytkownicy programu Revit powinni zwrócić uwagę na to, że choć używane są tu parametry wystąpienia bryły, ta sama logika może być stosowana do szyku elementów w celu dostosowywania ich w dużej skali. Wszystkie te operacje wykonuje się za pomocą węzła „Element.SetParameterByName”.
Rozpocznij od przykładowego pliku programu Revit dla tej sekcji. Usunięto elementy konstrukcyjne i kratownice adaptacyjne z poprzedniej sekcji. W tym ćwiczeniu skoncentrujemy się na obsłudze parametrów w programie Revit i manipulowaniu w dodatku Dynamo.
Po wybraniu budynku w obszarze Bryła w programie Revit zostanie wyświetlony szyk parametrów wystąpienia w panelu właściwości.
W dodatku Dynamo można pobrać parametry, wybierając element kierowania.
Wybierz bryłę budynku za pomocą węzła „Select Model Element”.
Za pomocą węzła „Element.Parameters” możemy stosować zapytania dotyczące wszystkich parametrów tej bryły. Obejmuje to parametry typu i wystąpienia.
Sprawdź węzeł Element. Parameters, aby znaleźć parametry docelowe. Można również wyświetlić panel właściwości z poprzedniego kroku, aby wybrać nazwy parametrów do edycji. W tym przypadku szukamy parametrów, które mają wpływ na duże przesunięcia geometryczne bryły budynku.
Wprowadzimy zmiany w elemencie programu Revit za pomocą węzła Element.SetParameterByName
Używając węzła C_ode Block,_ zdefiniuj listę parametrów, ujmując każdy z nich w cudzysłowy, aby wskazać, że są to ciągi. Można również użyć węzła List.Create z serią węzłów „string” połączonych z wieloma wejściami, ale użycie węzła Code Block jest szybsze i łatwiejsze. Należy się jednak upewnić, że ciąg jest w pełni zgodny z nazwą w programie Revit (z uwzględnieniem wielkości liter):
{"BldgWidth","BldgLength","BldgHeight", "AtriumOffset", "InsideOffset","LiftUp"};
Chcemy również wyznaczyć wartości dla każdego parametru. Dodaj do obszaru rysunku sześć węzłów Integer Slider i zmień ich nazwy na nazwy odpowiednich parametrów na liście. Ustaw też wartości każdego z tych suwaków zgodnie z powyższą ilustracją. W kolejności od góry do dołu: 62, 92, 25, 22, 8, 12
Zdefiniuj kolejny węzeł Code Block z listą o długości zgodnej z nazwami parametrów. W tym przypadku nazwiemy zmienne (bez cudzysłowów) tworzące wejścia dla węzła Code Block. Podłącz suwaki do odpowiednich wejść:
{bw,bl,bh,ao,io,lu};
Połącz węzeł Code Block z wejściem wartości „Element.SetParameterByName”*. Gdy jest zaznaczona opcja automatycznego uruchamiania, wyniki zostaną wyświetlone automatycznie.
*Ten pokaz działa z parametrami wystąpienia, ale nie z parametrami typu.
Podobnie jak w programie Revit, wiele z tych parametrów jest od siebie zależnych. Istnieją oczywiście takie kombinacje, przy których geometria może się załamać. Można rozwiązać ten problem z użyciem zdefiniowanych formuł we właściwościach parametru lub skonfigurować podobną logikę z operacjami matematycznymi w dodatku Dynamo (jest to dodatkowe wyzwanie dla osób, które chcą rozszerzyć to ćwiczenie).
Ta kombinacja nadaje bryle budynku nowy, interesujący wygląd: 100, 92, 100, 25, 13, 51
Teraz przyjrzyjmy się temu, jak można edytować fasadę przy użyciu podobnego procesu.
Skopiuj wykres i skup się na oszkleniu fasady, które będzie zawierać system kratownicowy. W tym przypadku wyodrębnimy cztery parametry:
{"DblSkin_SouthOffset","DblSkin_MidOffset","DblSkin_NorthOffset","Facade Bend Location"};
Dodatkowo utworzymy węzły Number Slider i zmienimy ich nazwy na nazwy odpowiednich parametrów. Pierwsze trzy suwaki od góry do dołu powinny zostać ponownie odwzorowane na domenę [0,10], natomiast ostatni suwak — „Facade Bend Location” — powinien zostać ponownie odwzorowany na domenę [0,1]. Te wartości, od góry do dołu, powinny zaczynać się od tych (chociaż są dowolne): 2,68, 2,64, 2,29, 0,5
Zdefiniuj nowy węzeł Code Block i połącz suwaki:
{so,mo,no,fbl};
Zmieniając suwaki w tej części wykresu, możemy znacznie wzmocnić oszklenie fasady: 9,98, 10,0, 9,71, 0,31
Edytowanie parametrów na potrzeby dokumentacji odbywa się zgodnie z informacjami przedstawionymi w poprzednich sekcjach. W tej części omówione zostanie edytowanie parametrów, które nie mają wpływu na właściwości geometryczne elementu, lecz pozwalają przygotować plik programu Revit do dokumentacji.
W poniższym ćwiczeniu użyjemy podstawowego odchylenia od węzła płaszczyzny, aby utworzyć arkusz programu Revit do dokumentacji. Każdy panel w konstrukcji dachu zdefiniowanej parametrycznie ma inną wartość odchylenia. Chcemy odwoływać się do zakresu wartości za pomocą koloru i zestawiając punkty adaptacyjne w celu przekazania ich konsultantowi, inżynierowi lub wykonawcy fasady.
Odchylenie od węzła płaszczyzny spowoduje obliczenie odległości, o jaką zestaw czterech punktów odbiega od najlepiej dopasowanej płaszczyzny między nimi. Jest to szybki i łatwy sposób na zbadanie możliwości realizacji projektu.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Rozpocznij od pliku programu Revit dla tej sekcji (lub kontynuuj pracę z plikiem z poprzedniej sekcji). Ten plik zawiera szyk paneli ETFE na dachu. W ramach tego ćwiczenia będziemy odwoływać się do tych paneli.
Dodaj węzeł Family Types do obszaru rysunku i wybierz opcję „ROOF-PANEL-4PT”.
Podłącz ten węzeł do węzła Select All Elements of Family Type, aby pobrać wszystkie elementy z programu Revit do dodatku Dynamo.
Za pomocą węzła AdaptiveComponent.Locations sprawdź położenie poszczególnych punktów adaptacyjnych dla każdego elementu.
Utwórz wielobok z tych czterech punktów za pomocą węzła Polygon.ByPoints. Zwróć uwagę, że obecnie w dodatku Dynamo jest dostępna abstrakcyjna wersja systemu panelowanego bez konieczności importowania pełnej geometrii elementu programu Revit.
Oblicz odchylenie od płaszczyzny za pomocą węzła Polygon.PlaneDeviation.
Podobnie jak w poprzednim ćwiczeniu, w celu przeprowadzenia testu ustawmy współczynnik apertury każdego panelu na podstawie jego odchylenia od płaszczyzny.
Dodaj węzeł Element.SetParameterByName do obszaru rysunku i połącz komponenty adaptacyjne z wejściem element. Węzeł Code Block z ciągiem „Aperture Ratio” połącz z wejściem parameterName.
Nie można bezpośrednio połączyć wyników odchylenia z wejściem wartości, ponieważ należy ponownie odwzorować te wartości na zakres parametrów.
Za pomocą węzła Math.RemapRange ponownie odwzoruj wartości odchylenia na domenę o zakresie od 0,15 do 0_,_45, wprowadzając
0.15; 0.45;
w węźle Code Block.Podłącz te wyniki do wejścia value węzła Element.SetParameterByName.
W programie Revit można w pewnym sensie zinterpretować zmianę apertury na całej powierzchni.
Po powiększeniu staje się jasne, że panele zamknięte przeważają bliżej narożników powierzchni. Otwarte narożniki przeważają u góry. Narożniki reprezentują obszary o większym odchyleniu, podczas gdy wypukłość ma minimalną krzywiznę, więc ma to sens.
Ustawienie współczynnika apertury nie wykazuje wyraźnie odchylenia paneli na dachu, a zmieniamy również geometrię rzeczywistego elementu. Załóżmy, że chcemy tylko zbadać odchylenie z punktu widzenia wykonalności elementów produkcyjnych. Pomocne byłoby nadanie kolorów panelom na podstawie zakresu odchylenia dla dokumentacji. Możemy to zrobić za pomocą serii kroków poniżej i w bardzo podobnym procesie do przedstawionego w krokach powyżej.
Usuń węzeł Element.SetParameterByName i jego węzły wejściowe, a następnie dodaj węzeł Element.OverrideColorInView.
Dodaj węzeł Color Range do obszaru rysunku. Następnie podłącz go do wejścia color węzła Element.OverrideColorInView. Nadal musimy połączyć wartości odchyleń z zakresem kolorów, aby utworzyć gradient.
Po ustawieniu kursora na wejściu value można zauważyć, że wartości dla tego wejścia muszą zawierać się między 0 a 1, aby można było odwzorować kolor na każdą z wartości. Musimy ponownie odwzorować wartości odchylenia na ten zakres.
Używając węzła Math.RemapRange, ponownie odwzoruj wartości odchylenia od płaszczyzny na zakres od* 0* do 1 (uwaga: można również użyć węzła „MapTo”, aby zdefiniować domenę źródłową).
Podłącz wyniki do węzła Color Range.
Zauważ, że wyjście stanowi zakres kolorów, a nie zakres liczb.
Jeśli ustawiono opcję uruchamiania ręcznego, kliknij przycisk Uruchom. Od tego momentu powinno być możliwe bezproblemowe korzystanie z opcji uruchamiania automatycznego.
W programie Revit widzimy znacznie czytelniejszy gradient, który reprezentuje odchylenie od płaszczyzny za pomocą zakresu kolorów. Jak jednak można dostosować te kolory? Minimalne wartości odchylenia są reprezentowane kolorem czerwonym, a więc odwrotnie do oczekiwań. Chcemy, aby maksymalne odchylenie miało kolor czerwony, a minimalne — kolor spokojniejszy. Wróćmy do dodatku Dynamo i poprawmy to.
Używając węzła Code Block, dodaj dwie liczby w dwóch różnych wierszach:
0;
i255;
.Utwórz kolor czerwony i niebieski, podłączając odpowiednie wartości do dwóch węzłów Color.ByARGB.
Utwórz z tych dwóch kolorów listę.
Podłącz tę listę do wejścia colors węzła Color Range i obserwuj aktualizację niestandardowego zakresu kolorów.
W programie Revit łatwiej jest teraz zrozumieć obszary maksymalnego odchylenia w narożnikach. Ten węzeł służy do nadpisywania koloru w widoku, więc dobrym rozwiązaniem jest używanie w zestawie rysunków określonych arkuszy poświęconych konkretnym typom analiz.
Po wybraniu jednego panelu ETFE w programie Revit widoczne są cztery parametry wystąpienia: XYZ1, XYZ2, XYZ3 i XYZ4. Po utworzeniu wszystkie są puste. Są to parametry tekstowe i wymagają wartości. Użyjemy dodatku Dynamo do zapisania położeń punktów adaptacyjnych dla każdego parametru. Ułatwia to współdziałanie, jeśli geometrię trzeba wysłać do inżyniera na potrzeby doradztwa w sprawie fasady.
W przykładowym arkuszu mamy duże, puste zestawienie. Parametry XYZ są współdzielone w pliku programu Revit, co pozwala dodać je do zestawienia.
Po powiększeniu widzimy, że parametry XYZ nie są jeszcze wypełnione. Pierwsze dwa parametry są obsługiwane przez program Revit.
Aby zapisać te wartości, wykonamy złożoną operację na liście. Sam wykres jest prosty, ale używane koncepcje opierają się w znacznym stopniu na odwzorowaniu listy omówionym w rozdziale poświęconym listom.
Wybierz wszystkie komponenty adaptacyjne z dwoma węzłami.
Wyodrębnij położenie każdego punktu za pomocą węzła AdaptiveComponent.Locations.
Przekształć te punkty w ciągi. Pamiętaj, że parametr jest oparty na tekście, dlatego trzeba wprowadzić poprawny typ danych.
Utwórz listę czterech ciągów definiujących parametry do zmiany: XYZ1, XYZ2, XYZ3 i XYZ4.
Podłącz tę listę do wejścia parameterName węzła Element.SetParameterByName.
Połącz węzeł Element.SetParameterByName z wejściem combinator węzła List.Combine. Połącz komponenty adaptacyjne z wejściem list1. Połącz węzeł String from Object z wejściem list2.
Tworzymy w tym miejscu odwzorowanie listy, ponieważ zapisujemy cztery wartości dla każdego elementu, co powoduje utworzenie złożonej struktury danych. Węzeł List.Combine definiuje operację o jeden krok w dół w hierarchii danych. Dlatego właśnie wejścia element i value węzła Element.SetParameterByName są pozostawione puste. Węzeł List.Combine łączy listy podrzędne na swoich wejściach z pustymi wejściami węzła Element.SetParameterByName na podstawie kolejności, w jakiej są one połączone.
Po wybraniu panelu w programie Revit widać teraz, że dla każdego parametru istnieją wartości ciągów. W rzeczywistości utworzylibyśmy prostszy format do zapisania punktu (X, Y, Z). Można to zrobić za pomocą operacji na ciągach w dodatku Dynamo, ale pominiemy to tutaj, aby nie wykraczać poza zakres niniejszego rozdziału.
Widok przykładowego zestawienia z wypełnionymi parametrami.
Każdy panel ETFE ma teraz współrzędne XYZ zapisane dla każdego punktu adaptacyjnego, co reprezentuje narożniki każdego panelu na potrzeby produkcji.
Program Revit to środowisko bogate w dane. Daje to wiele możliwości wybierania, znacznie wykraczających poza metodę „wskaż i kliknij”. Można wykonać zapytanie do bazy danych programu Revit i dynamicznie połączyć elementy programu Revit z geometrią dodatku Dynamo podczas wykonywania operacji parametrycznych.
Biblioteka programu Revit w interfejsie użytkownika zawiera kategorię „Selection”, która umożliwia wybieranie geometrii na wiele sposobów.
Aby prawidłowo wybrać elementy programu Revit, należy w pełni rozumieć hierarchię elementów programu Revit. Chcesz wybrać wszystkie ściany w projekcie? Wybierz według kategorii. Chcesz wybrać wszystkie fotele Eamesa w holu urządzonym w stylu z połowy XX wieku? Wybierz według rodziny.
Omówimy pokrótce hierarchię programu Revit.
Pamiętasz systematykę organizmów z biologii? Królestwo, typ, gromada, rząd, rodzina, rodzaj, gatunek? Elementy programu Revit są skategoryzowane podobnie. Na poziomie podstawowym hierarchię programu Revit można podzielić na kategorie, rodziny, typy* i wystąpienia. Wystąpienie to pojedynczy element modelu (z unikatowym identyfikatorem), a kategoria definiuje ogólną grupę (na przykład „ściany” czy „stropy”). Dzięki uporządkowaniu bazy danych programu Revit w ten sposób można wybrać jeden element, a następnie wybrać wszystkie podobne elementy na podstawie określonego poziomu w hierarchii.
*Uwaga — typy w programie Revit definiuje się inaczej niż typy w programowaniu. Typ w programie Revit oznacza gałąź hierarchii, a nie „typ danych”.
Trzy poniższe ilustracje przedstawiają główne kategorie wyboru elementów programu Revit w dodatku Dynamo. To narzędzia, które można doskonale łączyć, a w kolejnych ćwiczeniach omówimy niektóre z nich.
Najprostszym sposobem bezpośredniego wybrania elementu programu Revit jest wskazanie i kliknięcie go. Można wybrać cały element modelu lub części jego topologii (na przykład ścianę lub krawędź). Pozostają one dynamicznie połączone z tym obiektem programu Revit, więc gdy w pliku programu Revit zmieni się jego położenie lub parametry, odpowiedni element dodatku Dynamo zostanie zaktualizowany na wykresie.
Menu rozwijane zawierają listę wszystkich dostępnych elementów w projekcie programu Revit. Można ich użyć, aby tworzyć odniesienia do elementów programu Revit, które niekoniecznie są widoczne w widoku. Jest to doskonałe narzędzie do wykonywania zapytań dotyczących istniejących elementów oraz tworzenia nowych w projekcie programu Revit lub edytorze rodzin.
![](../.gitbook/assets/selecting _database_navigation_with_dynamo_nodes_02.png)
Można również wybrać element programu Revit na podstawie określonych poziomów w hierarchii programu Revit. Jest to zaawansowana opcja umożliwiająca dostosowywanie dużych zestawów danych w przygotowaniu do tworzenia dokumentacji lub generacyjnego tworzenia i dostosowywania wystąpień.
Pamiętając o trzech powyższych ilustracjach, przejdźmy do ćwiczenia polegającego na wybieraniu elementów z podstawowego projektu programu Revit w przygotowaniu do zastosowań parametrycznych, które będziemy tworzyć w pozostałych sekcjach tego rozdziału.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Ten plik przykładowy programu Revit zawiera trzy typy elementów prostego budynku. Użyjemy tego przykładu do wybierania elementów programu Revit w kontekście hierarchii programu Revit.
Bryła budynku
Belki (ramy konstrukcyjne)
Kratownice (komponenty adaptacyjne)
Jakie wnioski można wyciągnąć z elementów aktualnie widocznych w widoku projektu programu Revit? Do jakiego poziomu hierarchii musimy dojść, aby wybrać odpowiednie elementy? To zadanie będzie oczywiście bardziej złożone podczas pracy nad dużym projektem. Dostępnych jest wiele opcji: można wybierać elementy według kategorii, poziomów, rodzin, wystąpień i tak dalej.
Ponieważ pracujemy z podstawową konfiguracją, wybierzmy bryłę budynku, wybierając opcję „Mass” z menu rozwijanego w węźle Categories. Można go znaleźć na karcie Revit>Selection.
Wynikiem kategorii Mass jest sama ta kategoria. Musimy wybrać elementy. W tym celu użyjemy węzła „All Elements of Category”.
Na tym etapie można zauważyć, że w dodatku Dynamo nie widać żadnej geometrii. Wybraliśmy element programu Revit, ale nie przekonwertowaliśmy go na geometrię dodatku Dynamo. To ważne rozróżnienie. Wybierając dużą liczbę elementów, nie chcesz wyświetlać ich wszystkich w dodatku Dynamo, ponieważ spowolniłoby to działanie programu. Dodatek Dynamo jest narzędziem umożliwiającym zarządzanie projektem programu Revit bez konieczności wykonywania operacji na geometrii. Przyjrzymy się temu w następnej sekcji tego rozdziału.
W tym przypadku pracujemy z prostą geometrią, dlatego włączymy jej podgląd w dodatku Dynamo. Obok elementu „BldgMass” w powyższym węźle Watch znajduje się zielony numer. Oznacza on identyfikator elementu i informuje, że jest to element programu Revit, a nie geometria dodatku Dynamo. Następnym krokiem jest przekształcenie tego elementu programu Revit w geometrię dodatku Dynamo.
Przy zastosowaniu węzła Element.Faces otrzymujemy listę powierzchni reprezentujących poszczególne ściany bryły programu Revit. Teraz można wyświetlić geometrię w rzutni Dynamo i odwoływać się do tych ścian w celu wykonania operacji parametrycznych.
Oto alternatywna metoda. W tym przypadku zamiast wybierać za pomocą hierarchii programu Revit („All Elements of Category”), będziemy jawnie wybierać geometrię w programie Revit.
W węźle „Select Model Element” kliknij przycisk „select”(lub „change”). W rzutni programu Revit wybierz żądany element. W tym przypadku wybieramy bryłę budynku.
Zamiast węzła Element.Faces można użyć węzła Element.Geometry, aby wybrać całą bryłę jako jedną geometrię. Spowoduje to wybranie całej geometrii zawartej w tej bryle.
Używając węzła Geometry.Explode, można ponownie otrzymać listę powierzchni. Te dwa węzły działają tak samo jak węzeł Element.Faces, ale oferują alternatywne opcje wybierania geometrii elementu programu Revit.
Za pomocą podstawowych operacji listy można utworzyć zapytanie o interesującą nas ścianę.
Najpierw wyprowadź wybrane elementy z wcześniejszego węzła Element.Faces.
Następnie w węźle List.Count widzimy, że pracujemy z 23 powierzchniami w ramach bryły.
Zgodnie z tą liczbą zmieniamy maksymalną wartość w węźle *Integer Slider *na 22.
W węźle List.GetItemAtIndex wprowadzamy listy oraz łączymy węzeł *Integer Slider *z elementem index. Na suwaku zmieniamy wybrany element, zatrzymując się po przejściu do indeksu 9 i wyizolowaniu głównej fasady z kratownicami.
Poprzedni krok był mało wydajny. Możemy to zrobić znacznie szybciej, korzystając z węzła „Select face”. Dzięki temu można wyizolować ścianę, która sama nie jest elementem w projekcie programu Revit. Wykonujemy takie samo działanie jak w przypadku węzła „Select Model Element”, z tym że wybieramy powierzchnię, a nie cały element.
Załóżmy, że chcemy wyizolować główne ściany fasadowe budynku. W tym celu można użyć węzła „Select Faces”. Kliknij przycisk „Select”, a następnie wybierz cztery główne fasady w programie Revit.
Po wybraniu czterech ścian pamiętaj, aby kliknąć przycisk „Finish” w programie Revit.
Ściany zostały teraz zaimportowane do dodatku Dynamo jako powierzchnie.
Spójrzmy teraz na belki nad atrium.
Za pomocą węzła „Select Model Element” wybierz jedną z belek.
Połącz element belki z węzłem Element.Geometry, aby wyświetlić belkę w rzutni dodatku Dynamo.
Można powiększyć geometrię za pomocą węzła Watch3D (jeśli belka nie jest widoczna w widoku 3D, kliknij prawym przyciskiem myszy i wybierz polecenie „Dopasuj do okna”).
Częste pytanie w procesach roboczych Revit/Dynamo brzmi: jak wybrać jeden element i otrzymać wszystkie podobne elementy? Ponieważ wybrany element programu Revit zawiera wszystkie informacje o hierarchii, można użyć zapytania o typ rodziny i wybrać wszystkie elementy tego typu.
Połącz element belki z węzłem Element.ElementType.
W węźle Watch widać, że wynik to teraz symbol rodziny, a nie element programu Revit.
Element.ElementType to proste zapytanie, więc możemy równie łatwo użyć bloku kodu z poleceniem
x.ElementType;
, aby uzyskać takie same wyniki.
Aby wybrać pozostałe belki, należy użyć węzła „All Elements of Family Type”.
W węźle Watch widać, że wybraliśmy pięć elementów programu Revit.
Można również przekonwertować wszystkie pięć elementów na geometrię dodatku Dynamo.
Czy importując 500 belek, potrzebujemy wszystkich powierzchni do wykonania zamierzonej operacji parametrycznej? Czy możemy wyodrębnić podstawowe informacje z belek i wykonać zadania generacyjne z użyciem podstawowej geometrii? To pytanie, które będziemy mieć na uwadze w dalszej części tego rozdziału. Przyjrzyjmy się na przykład układowi kratownic.
Używając tego samego wykresu węzłów, wybierz element kratownicy zamiast elementu belki. Przed wykonaniem tej czynności usuń węzeł Element.Geometry z poprzedniego kroku.
Następnie możemy wyodrębnić niektóre podstawowe informacje z typu rodziny kratownic.
W węźle Watch widać, że otrzymaliśmy listę komponentów adaptacyjnych wybranych z programu Revit. Chcemy wyodrębnić podstawowe informacje, dlatego zaczniemy od punktów adaptacyjnych.
Połącz węzeł „All Elements of Family Type” z węzłem „AdaptiveComponent.Location”. Otrzymamy listę list, z których każda zawiera trzy punkty reprezentujące położenie punktów adaptacyjnych.
Po połączeniu z węzłem „Polygon.ByPoints” otrzymamy krzywą PolyCurve. Widać to w rzutni dodatku Dynamo. Za pomocą tej metody zwizualizowaliśmy geometrię jednego elementu i wyabstrahowaliśmy geometrię pozostałych elementów (których może być więcej niż w tym przykładzie).
Wskazówka: po kliknięciu zielonego numeru elementu programu Revit w dodatku Dynamo ten element zostanie powiększony w rzutni programu Revit.
Dodatek Dynamo jest elastycznym środowiskiem, zaprojektowanym do współdziałania z szeroką gamą programów, ale został pierwotnie utworzony do używania w programie Revit. Program wizualny zapewnia rozbudowane opcje modelu informacji o budynku (BIM). Dodatek Dynamo oferuje cały pakiet węzłów zaprojektowany specjalnie dla programu Revit, jak również biblioteki innych dostawców pochodzące z dobrze prosperującej społeczności AEC. W tym rozdziale omówiono podstawy korzystania z dodatku Dynamo w programie Revit.
Wersja programu Revit | Pierwsza stabilna wersja dodatku Dynamo | Ostatnia obsługiwana wersja dodatku Dynamo dla programu Revit |
---|
Więcej informacji na temat blokowania węzłów można znaleźć w sekcji .
Dynamo to projekt typu open source, który ciągle ewoluuje, a znaczna część jego rozwoju jest związana z programem Revit. Jeśli jesteś nowym użytkownikiem, odwiedź forum dyskusyjne i zacznij . Jeśli jesteś programistą i chcesz się zaangażować w rozwój dodatku Dynamo, odwiedź . Przydatnym zasobem dotyczącym bibliotek innych dostawców jest . Wiele z tych pakietów utworzono z myślą o architekturze, inżynierii i budownictwie. W tym rozdziale przyjrzymy się pakietom innych dostawców do panelowania.
Po zapoznaniu się z szeroką gamą zastosowań edycji parametrów można edytować dużą liczbę elementów w programie Revit za pomocą dodatku Dynamo. Może to być kosztowna pod względem obliczeń operacja, co oznacza, że może być powolna. W przypadku edytowania dużej liczby elementów można użyć funkcji zablokowania węzła, aby wstrzymać wykonywanie operacji programu Revit podczas tworzenia wykresu. Aby uzyskać więcej informacji na temat blokowania węzłów, zobacz sekcję w rozdziale poświęconym bryłom.
A co jeśli mamy 500 belek? Konwertowanie wszystkich tych elementów na geometrię dodatku Dynamo trwałoby bardzo długo. Jeśli w dodatku Dynamo obliczanie węzłów trwa zbyt długo, można użyć funkcji zablokowania węzła, aby wstrzymać wykonywanie operacji programu Revit podczas tworzenia wykresu. Aby uzyskać więcej informacji na temat blokowania węzłów, zobacz sekcję „” w rozdziale poświęconym bryłom.
2013 |
2014 |
2015 |
2016 |
2017 |
2018 |
2019 |
2020+ | 2.1.0 — program Revit od wersji 2020 zawiera teraz dodatek Dynamo, który jest aktualizowany razem z programem Revit. | Nie dotyczy |
Poprzednio omówiliśmy edycję podstawowej bryły budynku, a teraz dokładniej poznamy współdziałanie rozwiązań Dynamo/Revit, edytując dużą liczbę elementów jednocześnie. Dostosowywanie na dużą skalę jest bardziej złożone, ponieważ struktury danych wymagają bardziej zaawansowanych operacji na listach. Podstawowe zasady dotyczące ich wykonania są jednak zasadniczo takie same. Poznajmy kilka możliwości analizy na podstawie zestawu komponentów adaptacyjnych.
Załóżmy, że utworzyliśmy zakres komponentów adaptacyjnych, a teraz chcemy edytować parametry w oparciu o położenia punktów. Te punkty mogą na przykład sterować parametrem grubości, powiązanym z powierzchnią elementu. Mogą też sterować parametrem nieprzezroczystości, powiązanym z ekspozycją na słońce w ciągu roku. Dodatek Dynamo umożliwia połączenie analiz z parametrami w kilku prostych krokach. W poniższym ćwiczeniu poznamy podstawowy wariant.
Wykonaj zapytanie o punkty adaptacyjne wybranego komponentu adaptacyjnego za pomocą węzła AdaptiveComponent.Locations. Dzięki temu możemy użyć abstrakcyjnej wersji elementu programu Revit do analizy.
Wyodrębniając położenie punktów komponentów adaptacyjnych, można wykonać wiele analiz dotyczących elementu. Komponent adaptacyjny z czterema punktami umożliwia na przykład zbadanie odchylenia danego panelu od płaszczyzny.
Użyj ponownego odwzorowania, aby odwzorować zbiór danych w zakresie parametrów. Jest to podstawowe narzędzie używane w modelu parametrycznym, a jego działanie pokazano w poniższym ćwiczeniu.
W dodatku Dynamo można użyć położenia punktów komponentów adaptacyjnych do utworzenia najlepiej dopasowanej płaszczyzny dla każdego elementu. Można również wykonać zapytanie o położenie słońca w pliku programu Revit i zbadać orientację tej płaszczyzny względem słońca w porównaniu z innymi komponentami adaptacyjnymi. Ustawimy to w poniższym ćwiczeniu, tworząc algorytmiczny dach.
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
To ćwiczenie przedstawia rozszerzenie technik omówionych w poprzedniej sekcji. W tym przypadku definiujemy powierzchnię parametryczną na podstawie elementów programu Revit, tworząc wystąpienia czteropunktowych komponentów adaptacyjnych, a następnie edytując je na podstawie orientacji względem słońca.
Najpierw wybierzemy dwie krawędzie, używając węzła „Select Edge”. Te dwie krawędzie to długie boki atrium.
Połącz te dwie krawędzie w jedną listę, używając węzła List.Create.
Utwórz powierzchnię między dwiema krawędziami za pomocą węzła Surface.ByLoft.
Używając węzła Code Block, zdefiniuj zakres od 0 do 1 z 10 wartościami w równych odstępach:
0..1..#10;
Połącz węzeł Code Block z elementami wejściowymi *u *i v węzła Surface.PointAtParameter, a węzeł Surface.ByLoft z elementem wejściowym surface. Kliknij węzeł prawym przyciskiem myszy i zmień opcję skratowania na Iloczyn wektorowy. W ten sposób na powierzchni zostanie umieszczona siatka punktów.
Ta siatka punktów posłuży jako punkty sterujące dla powierzchni zdefiniowanej parametrycznie. Chcemy wyodrębnić położenia u i v każdego z tych punktów, aby można je było wstawić do wzoru parametrycznego i zachować tę samą strukturę danych. Można to zrobić za pomocą zapytania o położenia parametrów punktów, które właśnie utworzyliśmy.
Dodaj węzeł Surface.ParameterAtPoint do obszaru rysunku i połącz elementy wejściowe tak, jak pokazano powyżej.
Wykonaj zapytanie o wartości u tych parametrów, używając węzła UV.U.
Wykonaj zapytanie o wartości v tych parametrów, używając węzła UV.V.
Wyniki zawierają odpowiednie wartości u i v dla każdego punktu powierzchni. Teraz w odpowiedniej strukturze danych istnieje zakres od 0 do 1 dla każdej wartości, więc możemy zastosować algorytm parametryczny.
Dodaj węzeł Code Block do obszaru rysunku i wprowadź kod:
Math.Sin(u*180)*Math.Sin(v*180)*w;
. Jest to funkcja parametryczna umożliwiająca utworzenie sinusoidalnego wzniesienia na podstawie płaskiej powierzchni.Umożliwia połączenie UV.U z wejściem u oraz UV.V z wejściem v.
Element wejściowy w oznacza amplitudę kształtu, dlatego należy dołączyć do niego węzeł Number Slider.
Otrzymaliśmy listę wartości zdefiniowaną przez algorytm. Użyjemy tej listy wartości, aby przesunąć punkty w górę w kierunku +Z. Używając węzła Geometry.Translate, połącz węzeł *Code Block *z elementem wejściowym zTranslation, a węzeł Surface.PointAtParameter z elementem wejściowym geometry. Nowe punkty powinny być widoczne w podglądzie dodatku Dynamo.
Na koniec utworzymy powierzchnię za pomocą węzła NurbsSurface.ByPoints, łącząc węzeł z poprzedniego kroku z elementem wejściowym „points”. Otrzymaliśmy powierzchnię parametryczną. Możesz przeciągnąć suwak, aby zobaczyć, jak wzniesienie zmniejsza się i rośnie.
Używając tej powierzchni parametrycznej, chcemy zdefiniować podział na panele w celu utworzenia szyku czteropunktowych komponentów adaptacyjnych. Dodatek Dynamo nie zawiera gotowej funkcji podziału powierzchni na panele, poszukamy więc przydatnych pakietów dodatku Dynamo w społeczności.
Przejdź do obszaru Pakiety>Wyszukaj pakiet...
Wyszukaj „LunchBox” i zainstaluj pakiet „LunchBox for Dynamo”. To bardzo pomocny zestaw narzędzi do operacji geometrycznych takich jak ta.
Po pobraniu pakietu LunchBox masz do niego pełny dostęp. Wyszukaj „Quad Grid” i wybierz węzeł „LunchBox Quad Grid By Face”. Połącz powierzchnię parametryczną z elementem wejściowym surface i ustaw podziały U oraz V na 15. W podglądzie dodatku Dynamo powinna być widoczna powierzchnia podzielona na czworokątne panele.
Jeśli chcesz sprawdzić, jak powstała, możesz kliknąć dwukrotnie węzeł Lunch Box, aby to zobaczyć.
Wróćmy do programu Revit i pokrótce omówmy komponent adaptacyjny, którego używamy. Nie wchodząc w szczegóły, jest to panel dachowy, którego wystąpienia utworzymy. Jest to czteropunktowy komponent adaptacyjny, z grubsza odzwierciedlający panel z ETFE. Wielkość otworu pośrodku określa parametr o nazwie „ApertureRatio”.
Za chwilę zostanie otworzonych wiele wystąpień geometrii w programie Revit, dlatego należy wybrać „Ręczne” rozwiązywanie w dodatku Dynamo.
Dodaj węzeł Family Types do obszaru rysunku i wybierz opcję „ROOF-PANEL-4PT”.
Dodaj węzeł AdaptiveComponent.ByPoints do obszaru rysunku i połącz element wyjściowy Panel Pts węzła „LunchBox Quad Grid by Face” z elementem wejściowym points. Połącz węzeł Family Types z elementem wejściowym familySymbol.
Kliknij przycisk Uruchom. Podczas tworzenia geometrii program Revit przez pewien czas nie będzie dostępny do pracy. Jeśli trwa to zbyt długo, zmniejsz liczbę „15” w węźle Code Block na niższą. Spowoduje to zmniejszenie liczby paneli na dachu.
Uwaga: jeśli w dodatku Dynamo obliczanie węzłów trwa zbyt długo, można użyć funkcji zablokowania węzła, aby wstrzymać wykonywanie operacji programu Revit podczas tworzenia wykresu. Aby uzyskać więcej informacji na temat blokowania węzłów, zobacz sekcję „Blokowanie” w rozdziale poświęconym bryłom.
W programie Revit otrzymaliśmy szyk paneli na dachu.
Po powiększeniu można dokładniej przyjrzeć się właściwościom powierzchni.
W dalszej części określimy wielkość otworu każdego panelu na podstawie jego ekspozycji na słońce. W programie Revit po powiększeniu i wybraniu jednego panelu na pasku właściwości widać parametr o nazwie „Aperture Ratio”. Rodzina jest ustawiona tak, aby zakres wielkości otworu wynosił w przybliżeniu od 0,05 do 0,45.
Po włączeniu ustawienia Solar Path widzimy bieżące położenie słońca w programie Revit.
Można odnieść się do tego położenia słońca za pomocą węzła SunSettings.Current.
Aby uzyskać wektor oświetlenia naturalnego, należy połączyć element SunSettings z węzłem Sunsetting.SunDirection.
Połącz element Panel Pts używany do utworzenia komponentów adaptacyjnych z węzłem Plane.ByBestFitThroughPoints, aby utworzyć przybliżoną płaszczyznę dla komponentu.
Wykonaj zapytanie o normalną tej płaszczyzny.
Użyj iloczynu skalarnego, aby obliczyć kierunek oświetlenia naturalnego. Iloczyn skalarny to formuła określająca, na ile równoległe lub przeciwrównoległe są dwa wektory. Czyli porównujemy normalną płaszczyzny każdego elementu adaptacyjnego z wektorem oświetlenia naturalnego w celu wykonania przybliżonej symulacji kierunku oświetlenia naturalnego.
Oblicz wartość bezwzględną wyniku. Dzięki temu iloczyn skalarny będzie prawidłowy także wtedy, gdy normalna płaszczyzna będzie skierowana w przeciwnym kierunku.
Kliknij przycisk Uruchom.
Iloczyn skalarny zawiera szeroki zakres liczb. Chcemy użyć ich względnego rozkładu, ale musimy umieścić te liczby w zakresie odpowiednim dla parametru „Aperture Ratio”, który chcemy edytować.
Węzeł Math.RemapRange to doskonałe narzędzie do tego celu. Umożliwia on ponowne odwzorowanie wejściowej listy w granicach dwóch wartości docelowych.
Zdefiniuj wartości docelowe 0,15 i 0,45 w węźle Code Block.
Kliknij przycisk Uruchom.
Połącz ponownie odwzorowane wartości z węzłem Element.SetParameterByName.
Połącz ciąg „Aperture Ratio” z elementem wejściowym parameterName.
Połącz komponenty adaptacyjne z elementem wejściowym element.
Kliknij przycisk Uruchom.
W programie Revit z odległości widać wpływ kierunku oświetlenia naturalnego na wielkość otworu paneli z ETFE.
Po powiększeniu widać, że panele z ETFE wystawione na słońce są bardziej zamknięte. Naszym celem jest ograniczenie przegrzewania się pod wpływem energii słonecznej. Jeśli chcemy uzyskać więcej światła poprzez wystawienie na słońce, wystarczy przełączyć dziedzinę w węźle Math.RemapRange.
/
/
/