Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Ačkoliv je aplikace Dynamo flexibilním prostředím, které je navrženo pro vestavění do celé řady programů, původně se jednalo o modul určený pro použití v aplikaci Revit. Vizuální program nabízí robustní možnosti pro informační model budovy (BIM). Aplikace Dynamo nabízí celou sadu uzlů navržených výhradně pro aplikaci Revit a také knihovny třetích stran od komunity AEC. Tato kapitola popisuje základy práce s modulem Dynamo pro aplikaci Revit.
Výkonnou funkcí aplikace Dynamo je, že můžete upravovat parametry na parametrické úrovni. Například generativní algoritmus nebo výsledky simulace lze použít k řízení parametrů pole prvků. Tímto způsobem může sada instancí ze stejné rodiny obsahovat uživatelské vlastnosti v projektu aplikace Revit.
Parametry instance definují otvor panelů na povrchu střechy v rozsahu Poměr otvoru od 0.1 do 0.4.
Parametry založené na typu jsou použity u každého prvku na povrchu, protože se jedná o stejný typ rodiny. Materiál každého panelu může být například řízen parametrem založeným na typu.
Pokud jste již vytvořili rodinu aplikace Revit, nezapomeňte, že je nutné přiřadit typ parametru (řetězec, číslo, kóta atd.) Při přiřazování parametrů z aplikace Dynamo zkontrolujte, zda používáte správný typ dat.
Aplikaci Dynamo můžete použít také v kombinaci s parametrickými vazbami definovanými ve vlastnostech rodiny aplikace Revit.
Jako rychlý přehled parametrů v aplikaci Revit si ukážeme, že existují parametry typu a parametry instance. Oba lze upravovat pomocí aplikace Dynamo, ale v níže uvedeném cvičení budeme pracovat s parametry instance.
Až zjistíte, jak široké jsou možnosti použití parametrů úprav, možná budete chtít upravovat velké množství prvků v aplikaci Revit pomocí aplikace Dynamo. Může to být výpočetně nákladná operace, což znamená, že může být pomalá. Pokud upravujete velký počet prvků, můžete použít funkci uzlu „zmrazit“, aby bylo možné pozastavit provádění operací aplikace Revit při vytváření grafu. Další informace o zmrazení uzlů najdete v části Zmrazení v kapitole Tělesa.
Od verze 0.8 je aplikace Dynamo v zásadě bez jednotek. Díky tomu může aplikace Dynamo zůstat abstraktním vizuálním programovacím prostředím. Uzly aplikace Dynamo, které spolupůsobí s kótami aplikace Revit, budou odkazovat na jednotky projektu aplikace Revit. Pokud například nastavujete parametr délky v aplikaci Revit z aplikace Dynamo, číslo v aplikaci Dynamo pro danou hodnotu bude odpovídat výchozím jednotkám v projektu aplikace Revit. Níže uvedené cvičení funguje v metrech.
K rychlému převodu jednotek použijte uzel Convert Between Units. Jedná se o užitečný nástroj pro konverzi délkových, plošných a objemových jednotek za pochodu.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
V níže uvedeném cvičení jsou použity metry.
Toto cvičení je zaměřeno na úpravy prvků aplikace Revit bez provedení geometrické operace v aplikaci Dynamo. Zde neimportujeme geometrii aplikace Dynamo, pouze upravujeme parametry v projektu aplikace Revit. Toto cvičení je základní, pokročilejší uživatelé aplikace Revit si mohou všimnout, že se jedná o parametry instance objemu, ale stejnou logiku lze použít na pole prvků, které chcete přizpůsobit ve velkém měřítku. To vše provedeme s uzlem Element.SetParameterByName.
Začněte s ukázkovým souborem aplikace Revit pro tuto část. Z předchozího řezu jsme odstranili konstrukční prvky a adaptivní příhradové nosníky. V tomto cvičení se zaměříme na parametrický nýt v aplikaci Revit a v aplikaci Dynamo provedeme manipulaci.
Po výběru budovy v položce Objem v aplikaci Revit se na panelu vlastností zobrazí pole parametrů instance.
V aplikaci Dynamo můžeme načíst parametry výběrem cílového prvku.
Vyberte objem budovy pomocí uzlu Select Model Element.
Všechny parametry tohoto objemu lze dotazovat pomocí uzlu Element.Parameters. To zahrnuje parametry typu a instance.
Odkazujte na uzel Element. Parameters kvůli vyhledání cílových parametrů. Nebo si můžeme v předchozím kroku prohlédnout panel vlastností a vybrat si názvy parametrů, které chcete upravit. V tomto případě hledáme parametry, které ovlivňují velké geometrické pohyby na objemu budovy.
Provedeme změny prvku aplikace Revit pomocí uzlu Element.SetParameterByName.
Pomocí bloku kódu definujte seznam parametrů, s uvozovkami kolem každé položky označujícími řetězec. Můžeme také použít uzel List.Create s řadou uzlů string připojených k několika vstupům, ale blok kódu je rychlejší a jednodušší. Ujistěte se, že řetězec odpovídá přesnému názvu v aplikaci Revit, přičemž se rozlišují malá a velká písmena:
{"BldgWidth","BldgLength","BldgHeight", "AtriumOffset", "InsideOffset","LiftUp"};
Také chceme určit hodnoty pro každý parametr. Přidejte na kreslicí plochu šest posuvníků celých čísel a každý přejmenujte na odpovídající parametr v seznamu. Dále nastavte hodnoty každého posuvníku podle výše uvedeného obrázku. V pořadí shora dolů: 62, 92, 25, 22, 8 a12
Definujte další blok kódu se seznamem stejné délky jako názvy parametrů. V tomto případě pojmenujeme proměnné (bez uvozovek), které vytvářejí vstupy pro blok kódu. Připojte posuvníky ke každému odpovídajícímu vstupu:
{bw,bl,bh,ao,io,lu};
Připojte blok kódu ke vstupu value uzlu Element.SetParameterByName*. Po automatické kontrole spuštění se výsledky automaticky zobrazí.
*Tato ukázka funguje s parametry instance, ale ne s parametry typu.
Stejně jako v aplikaci Revit je mnoho těchto parametrů na sobě závislých. Samozřejmě existují kombinace, ve kterých se může geometrie přerušit. Tento problém můžeme vyřešit definovanými vzorci ve vlastnostech parametru nebo můžeme nastavit podobnou logiku pomocí matematických operací v aplikaci Dynamo (pokud si chcete cvičení rozšířit, je to další výzva).
Tato kombinace poskytuje nový návrh objemu budovy: 100, 92, 100, 25, 13, 51.
Nyní se podívejme, jak můžeme pomocí podobného postupu upravit fasádu.
Zkopírujme graf a zaměřme se na zasklení fasády, ve kterém bude umístěn systém příhradových nosníků. V tomto případě izolujeme čtyři parametry:
{"DblSkin_SouthOffset","DblSkin_MidOffset","DblSkin_NorthOffset","Facade Bend Location"};
Dále vytvoříme posuvníky čísel a přejmenujeme je na příslušné parametry. První tři posuvníky shora dolů by měly být přemapovány na doménu s obsahem [0,10], zatímco poslední posuvník Facade Bend Location by měl být přemapován na doménu s obsahem [0,1]. Tyto hodnoty by měly odshora dolů vycházet z těchto hodnot (i když jsou libovolné): 2.68, 2.64, 2.29, 0.5.
Definujte nový blok kódu a připojte posuvníky:
{so,mo,no,fbl};
Změnou posuvníků v této části grafu můžeme dosáhnout toho, že zasklení fasády bude mnohem výraznější: 9.98, 10.0, 9.71 ,0.31.
Úpravy parametrů dokumentace probíhají podle toho, jak je vysvětleno v předchozích částech. V této části se podíváme na parametry úprav, které nemají vliv na geometrické vlastnosti prvků, ale místo toho si připravíme soubor aplikace Revit pro dokumentaci.
V níže uvedeném cvičení použijeme základní odchylku od uzlu roviny k vytvoření výkresu aplikace Revit pro dokumentaci. Každý panel na parametricky definované střešní konstrukci má jinou hodnotu odchylky. Chceme vyřadit rozsah hodnot pomocí barvy a naplánováním adaptivních bodů, které předáme konzultantovi fasád, inženýrovi nebo dodavateli.
Odchylka od uzlu roviny vypočítá vzdálenost, o kterou se sada čtyř bodů liší od roviny optimálního proložení mezi nimi. Je to rychlý a snadný způsob, jak studovat proveditelnost stavby.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
Začněte se souborem aplikace Revit pro tuto část (nebo pokračujte od předchozí části). Tento soubor má pole panelů ETFE na střeše. Na tyto panely se budeme odkazovat v tomto cvičení.
Přidejte na kreslicí plochu uzel Family Types a vyberte položku ROOF-PANEL-4PT.
Tento uzel připojte k uzlu Select All Elements of Family Type, abyste do aplikace Dynamo načetli všechny prvky z aplikace Revit.
Pomocí uzlu AdaptiveComponent.Locations můžete dotazovat umístění adaptivních bodů pro každý prvek.
Vytvořte polygon z těchto čtyř bodů pomocí uzlu Polygon.ByPoints. Všimněte si, že nyní máme abstraktní verzi panelového systému v aplikaci Dynamo, aniž by bylo nutné importovat úplnou geometrii prvku aplikace Revit.
Vypočtěte rovinnou odchylku pomocí uzlu Polygon.PlaneDeviation.
Stejně jako v předchozím cvičení nastavíme poměr otvoru každého panelu podle jeho rovinné odchylky.
Přidejte na kreslicí plochu uzel Element.SetParameterByName a připojte adaptivní komponenty ke vstupu prvku. Připojte blok kódu, který načte hodnotu Aperture Ratio do vstupu parameterName.
Výsledky odchylek nelze přímo připojit ke vstupu hodnoty, protože je potřeba hodnoty přemapovat na rozsah parametrů.
Pomocí uzlu Math.RemapRange přemapujte hodnoty odchylek do domény mezi 0.15 a 0_._45 zadáním
0.15; 0.45;
do bloku kódu.Tyto výsledky zapište do hodnoty vstupu pro Element.SetParameterByName.
V aplikaci Revit můžeme trochu pochopit změny otevření napříč povrchem.
Po přiblížení je zřejmé, že uzavřené panely jsou zatíženy vůči rohům povrchu. Otevřené rohy jsou směrem k horní části. Rohy představují oblasti větší odchylky, zatímco vyboulení má minimální zakřivení, což dává smysl.
Nastavení Aperture Ratio jasně nedemonstruje odchylku panelů na střeše a také měníme geometrii skutečného prvku. Předpokládejme, že chceme pouze prozkoumat odchylku z hlediska proveditelnosti výroby. Bylo by užitečné vybarvit panely podle rozsahu odchylky pro naši dokumentaci. To můžeme provést pomocí řady kroků uvedených níže a velmi podobným postupem jako výše uvedené kroky.
Odstraňte uzel Element.SetParameterByName a jeho vstupní uzly a přidejte uzel Element.OverrideColourInView.
Přidejte na kreslicí plochu uzel Color Range a zadejte do vstupu barvy Element.OverrideColorInView. Aby bylo možné vytvořit gradient, je nutné propojit hodnoty odchylek s barevným rozsahem.
Pozastavením ukazatele myši nad vstupem value lze vidět, že hodnoty pro vstup musí být mezi hodnotami 0 a 1, aby bylo možné mapovat barvu na každou hodnotu. Hodnoty odchylek je nutné přemapovat do tohoto rozsahu.
Pomocí uzlu Math.RemapRange přemapujte hodnoty odchylky roviny do rozsahu od* 0* do 1. (Poznámka: Pomocí uzlu MapTo můžete také definovat zdrojovou doménu.)
Vložte výsledky do uzlu Color Range.
Všimněte si, že náš výstup je rozsah barev místo rozsahu čísel.
Pokud máte nastavenou možnost Ruční, klikněte na tlačítko Spustit. Od této chvíle si vystačíte s nastavením Automaticky.
V aplikaci Revit vidíme mnohem čitelnější gradient, který je reprezentativní pro rovinnou odchylku podle našeho rozsahu barev. Ale co když chceme přizpůsobit barvy? Minimální hodnoty odchylek jsou znázorněny červeně, což se zdá být opak toho, co bychom očekávali. Chceme mít maximální odchylku červenou a minimální odchylkou reprezentovanou klidnější barvou. Vraťme se zpátky do aplikace Dynamo, kde to opravíme.
Pomocí bloku kódu přidejte dvě čísla na dva různé řádky:
0;
a255;
.Vytvořte červenou a modrou barvu zadáním příslušných hodnot do dvou uzlů Color.ByARGB.
Vytvořte seznam z těchto dvou barev.
Tento seznam vložte do vstupu colors uzlu Color Range a sledujte, jak se aktualizuje vlastní rozsah barev.
V aplikaci Revit nyní můžeme lépe rozpoznat oblasti maximální odchylky v rozích. Tento uzel slouží k přepsání barvy v pohledu, takže může být skutečně užitečné, pokud máme konkrétní výkres v sadě výkresů, které se soustředí na konkrétní typ analýzy.
Po výběru jednoho panelu ETFE v aplikaci Revit se zobrazí čtyři parametry instance: XYZ1, XYZ2, XYZ3, a XYZ4. Po vytvoření jsou všechny prázdné. Jedná se o textově orientované parametry a potřebují hodnoty. Pomocí aplikace Dynamo zapíšeme umístění adaptivních bodů do každého parametru. To napomáhá interoperabilitě, pokud je nutné geometrii poslat inženýrovi nebo konzultantovi fasád.
Ve vzorovém výkresu máme velký prázdný výkaz. Parametry XYZ jsou sdílené parametry v souboru aplikace Revit, které nám umožňují přidat je do výkazu.
Po přiblížení vidíme, že parametry XYZ nejsou dosud vyplněny. Aplikace Revit spravuje první dva parametry.
K zápisu do těchto hodnot provedeme složitou operaci nad seznamem. Samotný graf je jednoduchý, ale koncepty vychází z mapování seznamu, jak je popsáno v kapitole o seznamech.
Vyberte všechny adaptivní komponenty se dvěma uzly.
Extrahujte umístění každého bodu pomocí uzlu AdaptiveComponent.Locations.
Převeďte tyto body na řetězce. Nezapomeňte, že parametr je textový, takže je potřeba zadat správný typ dat.
Vytvořte seznam čtyř řetězců definujících parametry, které chcete změnit: XYZ1, XYZ2, XYZ3 a XYZ4.
Tento seznam vložte do vstupu parameterName pro uzel Element.SetParameterByName.
Spojte uzel Element.SetParameterByName se vstupem combinator uzlu List.Combine. Připojte vstup adaptive components ke vstupu list1. Připojte uzel String z uzlu String from Object ke vstupu list2.
Zde mapujeme seznam, protože zapisujeme čtyři hodnoty pro každý prvek, který vytvoří složitou datovou strukturu. Uzel List.Combine definuje operaci o jeden krok níže v hierarchii dat. Proto jsou vstupy element a value uzlu Element.SetParameterByName ponechány prázdné. Uzel List.Combine připojuje podseznamy svých vstupů k prázdným vstupům uzlu List.SetParameterByName podle pořadí jejich připojení.
Po výběru panelu v aplikaci Revit nyní vidíme, že pro každý parametr máme hodnoty řetězce. Ve skutečnosti vytvoříme jednodušší formát pro zápis bodu (X,Y,Z). To lze provést pomocí řetězcových operací v aplikaci Dynamo, ale to nyní obejdeme, abychom neodbočovali od tématu.
Pohled ukázkového výkazu s vyplněnými parametry.
Každý panel ETFE nyní obsahuje souřadnice XYZ zapsané pro každý adaptivní bod, což představuje rohy jednotlivých panelů pro výrobu.
V aplikaci Dynamo můžete pomocí plně parametrického ovládání vytvořit pole prvků aplikace Revit. Uzly aplikace Revit v aplikaci Dynamo nabízí možnost importovat prvky z obecných geometrií do určitých typů kategorií (například stěny a podlaží). V této části se zaměříme na import parametricky flexibilních prvků s adaptivními komponentami.
Adaptivní komponenta je flexibilní kategorie rodiny, která se dobře hodí ke generativním aplikacím. Po vytvoření instance můžete vytvořit složitý geometrický prvek, který je řízen základním umístěním adaptivních bodů.
Níže je uveden příklad tříbodové adaptivní komponenty v Editoru rodin. Tím se vytvoří příhradový nosník, který je definován pozicí každého adaptivního bodu. V níže uvedeném cvičení vygenerujeme pomocí této komponenty sérii příhradových nosníků přes celé průčelí.
Adaptivní komponenta je dobrým příkladem doporučených postupů interoperability. Pole adaptivních komponent je možné vytvořit definováním základních adaptivních bodů. A při přenosu těchto dat do jiných programů existuje možnost zredukovat geometrii na jednoduchá data. Import a export pomocí programu, jako je například aplikace Excel, se řídí podobnou logikou.
Řekněme, že konzultant průčelí chce znát umístění prvků příhradových nosníků, aniž by bylo třeba počítat s plně kloubovou geometrií. Při přípravě výroby se může konzultant odkazovat na umístění adaptivních bodů a regenerovat geometrii v programech, jako je Inventor.
Pracovní postup použitý v níže uvedeném cvičení umožňuje přístup ke všem těmto datům při tvorbě definice pro tvorbu prvků aplikace Revit. Tímto procesem sjednotíme konceptualizaci, dokumentaci a výrobu do jednoho plynulého pracovního postupu. Tímto se vytvoří inteligentnější a efektivnější proces pro interoperabilitu.
První cvičení níže znázorňuje, jak aplikace Dynamo odkazuje na data pro tvorbu prvků aplikace Revit. Chcete-li vytvořit více adaptivních komponent, definujte seznam seznamů, kde každý seznam obsahuje tři body představující každý bod adaptivní komponenty. Toto mějte na paměti při správě datových struktur v aplikaci Dynamo.
Další metodou importu parametrické geometrie aplikace Dynamo do aplikace Revit je DirectShape. V souhrnu prvek DirectShape a související třídy podporují možnost externě ukládat vytvořené geometrické tvary do dokumentu aplikace Revit. Geometrie může obsahovat uzavřená tělesa nebo sítě. Prvek DirectShape je primárně určen k importu tvarů z jiných datových formátů, například IFC nebo STEP, kde není k dispozici dostatek informací k vytvoření „skutečného“ prvku aplikace Revit. Prvek DirectShape, podobně jako u pracovního postupu formátů IFC a STEP, funguje dobře při importu geometrií vytvořených v aplikaci Dynamo do projektů aplikace Revit jako skutečných prvků.
Nyní následuje rozbor a druhé cvičení týkající se importu geometrie aplikace Dynamo jako prvku DirectShape do projektu aplikace Revit. Pomocí této metody můžeme přiřadit importované geometrii kategorii, materiál a název – to vše při zachování parametrického propojení s grafem aplikace Dynamo.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
Počínaje tímto souborem příkladu z této části (případně pokračováním v práci se souborem aplikace Revit v předchozí relaci) se zobrazuje stejný objem aplikace Revit.
Takto soubor vypadá po otevření.
Toto je systém příhradových nosníků vytvořený pomocí aplikace Dynamo, který je inteligentně propojen s objemem aplikace Revit.
Byly použity uzly Select Model Element a Select Face a nyní pokračujeme o jeden krok v hierarchii geometrie níže a použijeme příkaz Select Edge. Pokud je spouštění výpočetního modulu aplikace Dynamo nastaveno na hodnotu Automaticky, graf se bude průběžně aktualizovat podle změn v souboru aplikace Revit. Vybraná hrana je dynamicky svázána s topologií prvků aplikace Revit. Dokud se topologie* nezmění, připojení mezi aplikacemi Revit a Dynamo zůstane aktivní.
Vyberte horní křivku proskleného průčelí. Tato křivka se táhne přes celou délku budovy. Pokud máte s výběrem hrany potíže, nezapomeňte, že můžete vybrat výběr v aplikaci Revit přesunutím kurzoru nad hranu a opakovaným stisknutím klávesy Tab, dokud se nezvýrazní požadovaná hrana.
Pomocí dvou uzlů Select Edge vyberte každou hranu představující náklon uprostřed průčelí.
Totéž proveďte u dolních hran průčelí v aplikaci Revit.
Uzly Watch zobrazují, že se nyní v aplikaci Dynamo nacházejí čáry. Toto se automaticky převede na geometrii aplikace Dynamo, protože hrany samy nejsou prvky aplikace Revit. Tyto křivky jsou reference, pomocí kterých se vytvoří instance adaptivních příhradových nosníků na průčelí.
*Abychom zachovali konzistentní topologii, odkazujeme se na model, který nemá přidány další plochy ani hrany. Zatímco parametry mohou změnit její tvar, způsob, jakým je vytvořena, zůstává konzistentní.
Nejprve je potřeba spojit křivky a sloučit je do jednoho seznamu. Tímto způsobem je možné „seskupit“ křivky za účelem provedení operací geometrie.
Vytvořte seznam pro dvě křivky uprostřed průčelí.
Spojte tyto dvě křivky do objektu Polycurve připojením komponenty List.Create do uzlu Polycurve.ByJoinedCurves.
Vytvořte seznam pro dvě křivky v dolní části průčelí.
Spojte tyto dvě křivky do objektu Polycurve připojením komponenty List.Create do uzlu Polycurve.ByJoinedCurves.
Nakonec spojte tři hlavní křivky (jednu úsečku a dva objekty polycurve) do jednoho seznamu.
Chceme využít horní křivku, což je čára představující plný rozsah průčelí. Podél této čáry vytvoříme roviny, které se protnou se sadou křivek, jež jsme seskupili do seznamu.
V bloku kódu definujte rozsah pomocí následující syntaxe:
0..1..#numberOfTrusses;
Do vstupu bloku kódu přidejte celočíselný posuvník. Jak jste už možná uhodli, toto bude představovat počet příhradových nosníků. Všimněte si, že posuvník ovládá počet položek v rozsahu definovaném od *0 *do 1.
Připojte blok kódu ke vstupu param uzlu Curve.PlaneAtParameter a připojte horní hranu ke vstupu curve. Tímto získáte deset rovin rovnoměrně rozložených po celém rozsahu průčelí.
Rovina je abstraktní část geometrie, která představuje dvourozměrný prostor, který je nekonečný. Roviny jsou skvělé k tvorbě obrysů a protínání, což provedeme i v tomto kroku.
Pomocí uzlu Geometry.Intersect (nastavte vázání na kartézský součin) připojte uzel Curve.PlaneAtParameter ke vstupu entity uzlu Geometry.Intersect. Připojte hlavní uzel List.Create ke vstupu geometry. Nyní jsou ve výřezu aplikace Dynamo zobrazeny body, které představují průsečík každé křivky s definovanými rovinami.
Všimněte si, že výstup je seznam seznamů. Příliš mnoho seznamů pro tento účel. Je třeba zde provést částečné vyrovnání. Je také třeba postoupit o krok níže v seznamu a vyrovnat výsledek. K tomuto účelu použijte operaci List.Map, jak je popsáno v kapitole o seznamech.
Připojte uzel Geometry.Intersect ke vstupu seznamu uzlu List.Map.
Připojte uzel Flatten ke vstupu f(x) uzlu List.Map. Výsledkem jsou 3 seznamy a každý z nich obsahuje stejný počet příhradových nosníků.
Tato data je třeba změnit. Pokud chceme vytvořit instanci příhradového nosníku, je nutné použít stejný počet adaptivních bodů, jaký je definován v rodině. Jedná se o tříbodovou adaptivní komponentu, takže místo tří seznamů o 10 položkách (numberOfTrusses) chceme 10 seznamů o 3 položkách. Tímto způsobem je možné vytvořit 10 adaptivních komponent.
Připojte uzel List.Map k uzlu List.Transpose. Nyní máme požadovaný výstup dat.
Chcete-li potvrdit správnost dat, přidejte na kreslicí plochu uzel Polygon.ByPoints a zkontrolujte náhled v aplikaci Dynamo.
Stejným způsobem jako jste vytvořili polygony, uspořádejte do pole i adaptivní komponenty.
Přidejte na kreslicí plochu uzel AdaptiveComponent.ByPoints a připojte uzel List.Transpose ke vstupu points.
Pomocí uzlu Family Types vyberte rodinu AdaptiveTruss a připojte ji ke vstupu FamilyType uzlu AdaptiveComponent.ByPoints.
V aplikaci Revit nyní máme deset příhradových nosníků rovnoměrně rozložených po průčelí.
Při kontrole grafu zvyšte hodnotu numberOfTrusses na 30 pomocí posuvníku. Mnohé příhradové nosníky nejsou příliš realistické, ale parametrické propojení funguje. Po ověření nastavte hodnotu numberOfTrusses na 15.
A v rámci posledního testu můžeme výběrem objemu v aplikaci Revit a úpravou parametrů instance změnit tvar budovy a sledovat chování příhradových nosníků. Nezapomeňte, že abyste tyto aktualizace mohli vidět, graf aplikace Dynamo musí být otevřený, a propojení bude přerušeno ihned, jakmile bude graf zavřen.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
Začněte otevřením vzorového souboru této lekce – ARCH-DirectShape-BaseFile.rvt.
Ve 3D pohledu uvidíte objem budovy z předchozí lekce.
Podél hrany atria vede jedna referenční křivka, na kterou se poté v aplikaci Dynamo odkážeme.
Podél protilehlé hrany atria je další referenční křivka, na kterou se v aplikaci Dynamo odkážeme také.
Pokud se chcete odkázat na geometrii, použijte uzel Select Model Element pro každého člena v aplikaci Revit. Vyberte objem v aplikaci Revit a importujte geometrii do aplikace Dynamo pomocí uzlu Element.Faces – objem by měl být nyní viditelný v náhledu aplikace Dynamo.
Pomocí uzlů Select Model Element a CurveElement.Curve importujte do aplikace Dynamo první referenční křivku.
Pomocí uzlů Select Model Element a CurveElement.Curve importujte do aplikace Dynamo druhou referenční křivku.
Po oddálení a posunu pohledu doprava ve vzorovém grafu je vidět velká skupina uzlů – jedná se o geometrické operace, které generují konstrukci mřížkované střechy viditelnou v náhledu aplikace Dynamo. Tyto uzly se generují pomocí funkce Uzel na kód, jak je popsáno v části bloku kódu této příručky.
Konstrukce je řízena třemi hlavními parametry – Diagonal Shift (Diagonální posun), Camber (Nadvýšení) a Radius (Poloměr).
Zde je vidět podrobné přiblížení parametrů tohoto grafu. Tyto parametry je možné upravit, tak aby bylo možné dosáhnout jiných výstupních geometrií.
Jakmile přetáhnete uzel DirectShape.ByGeometry na kreslicí plochu, uvidíte, že obsahuje čtyři vstupy: geometry, category, material a name.
Vstup geometry bude těleso vytvořené v části tvorby geometrie grafu.
Vstup category je možné vybrat pomocí rozevíracího uzlu Category. V tomto případě použijeme možnost Structural Framing (Rámová konstrukce).
Vstup material se vybere pomocí výše uvedeného pole uzlů – v tomto případě je však možné jej snadno definovat jako „Výchozí“.
Po spuštění aplikace Dynamo se bude v aplikaci Revit uvnitř projektu na střeše nacházet importovaná geometrie. Jedná se spíš o prvek rámové konstrukce než o obecný model. Parametrické propojení s aplikací Dynamo zůstane neporušené.
Modul Dynamo pro aplikaci Revit rozšiřuje informační model budovy o data a logiku grafického editoru algoritmů. Jeho flexibilita spolu s robustní databázi aplikace Revit umožňují pracovat na BIM inovativním způsobem.
Tato kapitola se zaměřuje na práci na BIM v rozhraní Dynamo. Jednotlivé části jsou zaměřeny zejména na praktická cvičení, protože práce na projektu je nejlepší způsob, jak se seznámit s grafickým editorem algoritmů pro BIM. Řekněme si ale nejdřív něco k počátkům programu.
Protože se aplikace Revit i aplikace Dynamo neustále vyvíjejí, může dojít k situaci, kdy verze aplikace Revit nebude kompatibilní s nainstalovanou verzí modulu Dynamo pro aplikaci Revit. Níže jsou uvedeny verze modulu Dynamo pro aplikaci Revit, které jsou kompatibilní s aplikací Revit.
Díky specializovanému týmu vývojářů a aktivní komunitě ušel projekt od svým počátku dlouhou cestu.
Aplikace Dynamo původně sloužila ke zjednodušení pracovních postupů AEC v aplikaci Revit. Ačkoliv aplikace Revit pro každý projekt vytváří robustní databázi, průměrní uživatelé měli problém při přistupování k těmto datům mimo rozhraní. Aplikace Revit nabízí rozsáhlé API (aplikační programové rozhraní), které umožňuje vývojářům vytvářet přizpůsobené nástroje. Programátoři toto API využívali dlouhá léta, ale textové programování není pro každého. Aplikace Dynamo sloužila ke zpřístupnění dat aplikace Revit prostřednictvím jednoduchého grafického editoru.
Pomocí základních uzlů aplikace Dynamo spolu s uzly pro aplikaci Revit je možné rozšířit parametrické pracovní postupy pro interoperabilitu, dokumentaci, analýzu a generování. S aplikací Dynamo lze zdlouhavé pracovní postupy automatizovat a zaměřit se pouze na návrh.
V projektu aplikace Revit nebo Editoru rodiny přejděte na doplňky a klikněte na možnost Dynamo.*
*Aplikace Dynamo se spustí pouze v souboru, ve kterém byla otevřena.
Po otevření aplikace Dynamo v aplikaci Revit je k dispozici nová kategorie s názvem „Revit“. Jedná se o rozšíření uživatelského rozhraní, které nabízí uzly pro práci s aplikací Revit.*
*Pokud použijete uzly určené pro práci v aplikaci Revit, graf aplikace Dynamo bude fungovat pouze při otevření v modulu Dynamo pro aplikaci Revit. Pokud graf modulu Dynamo pro aplikaci Revit otevřete například v aplikaci Dynamo Sandbox, uzly aplikace Revit budou chybět.
Protože Revit je platforma s robustními funkcemi pro správu projektů, výpočet parametrických operací v aplikaci Dynamo může být složitý a pomalý. Pokud aplikaci Dynamo trvá výpočet uzlů dlouho, bude možná užitečné využít funkci „zmrazení“ uzlu, která pozastaví provádění operací aplikace Revit, zatímco vyvíjíte graf.
Další informace o zmrazení uzlů naleznete v části Uzly a dráty.
Aplikace Dynamo byla původně vytvořena pro AEC a její velká a rostoucí komunita nabízí skvělou příležitost spojit se a učit se od expertů z oboru. Komunitu aplikace Dynamo tvoří architekti, inženýři, programátoři a konstruktéři, kteří rádi sdílejí a tvoří.
Aplikace Dynamo je projekt s otevřeným zdrojovým kódem, která se neustále vyvíjí, přičemž velké množství vývoje souvisí také s aplikací Revit. Pokud s aplikací začínáte, neváhejte a ptejte se na diskuzním fóru! Pokud jste programátor a chcete se zapojit do vývoje aplikace Dynamo, přejděte na úložiště na Githubu. Skvělým zdrojem knihoven třetích stran je také nástroj Dynamo Package Manager. Mnoho z těchto balíčků bylo vyvinuto s ohledem na AEC a v této kapitole budou probrány balíčky třetích stran pro panelizaci.
Aplikace Dynamo také provozuje aktivní blog. Přečtěte si nejnovější příspěvky z vývoje.
Zatímco v předchozích částech byl kladen důraz na úpravu základního objemu budovy, tato část se zabývá více propojením aplikací Dynamo a Revit, konkrétně úpravou velkého počtu prvků najednou. Přizpůsobení ve velkém měřítku je čím dál složitější tím, jak datové struktury vyžadují čím dál pokročilejší operace seznamů. Základní principy za jejich prováděním však zůstávají v podstatě stejné. Následuje popis několika příležitostí k analýze v sadě adaptivních komponent.
Řekněme, že byl vytvořen určitý počet adaptivních komponent a vy chcete upravit parametry podle jejich umístění bodů. Body by mohly například řídit parametr tloušťky, který souvisí s plochou prvku. Nebo by mohly řídit parametr průhlednosti, který souvisí s vystavením slunečnímu záření po celý rok. Aplikace Dynamo umožňuje analýzu parametrů v několika snadných krocích, přičemž základní verze analýzy je popsána ve cvičení níže.
Zadejte dotaz na adaptivní body vybrané adaptivní komponenty pomocí uzlu AdaptiveComponent.Locations. Toto vám umožní pracovat během analýzy s abstrahovanou verzí prvku aplikace Revit.
Extrahování umístění bodu adaptivních komponent vám umožní spustit celou řadu analýz pro daný prvek. Například čtyřbodová adaptivní komponenta umožní studovat odchylku od roviny u daného panelu.
Pomocí přemapování můžete namapovat sadu dat na rozsah parametru. Jedná se o základní nástroj používaný v parametrických modelech a je znázorněn v níže uvedeném cvičení.
V aplikaci Dynamo je možné pomocí umístění bodů adaptivních komponent vytvořit nejlépe přizpůsobenou rovinu pro každý prvek. Také můžete zadat dotaz na pozici slunce v souboru aplikace Revit a studovat orientaci roviny vzhledem ke slunci v porovnání s jinými adaptivními komponentami. V níže uvedeném cvičení toto nastavíme vytvořením algoritmických střech.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
Toto cvičení rozšiřuje techniky znázorněné v předchozí části. V tomto případě definujeme parametrický povrch z prvků aplikace Revit, dále vytvoříme instance čtyřbodových adaptivních komponent a poté je upravíme podle orientace vzhledem ke slunci.
Začněte výběrem dvou hran pomocí uzlu Select Edge. Tyto dvě hrany jsou dvě dlouhá rozpětí atria.
Spojte dvě hrany do jednoho seznamu pomocí uzlu List.Create.
Vytvořte mezi dvěma hranami povrch pomocí uzlu Surface.ByLoft.
Pomocí bloku kódu definujte rozsah od 0 do 1 s 10 rovnoměrně rozmístěnými hodnotami:
0..1..#10;
.Připojte blok kódu ke vstupům *u *a v uzlu Surface.PointAtParameter a připojte uzel Surface.ByLoft ke vstupu surface. Klikněte pravým tlačítkem na uzel a změňte vázání na Kartézský součin. Tím se vytvoří osnova bodů na povrchu.
Tato osnova bodů slouží jako řídicí body parametricky definovaného povrchu. Je třeba extrahovat pozice u a v každého z těchto bodů, aby bylo možné je připojit k parametrickému vzorci a zachovat stejnou datovou strukturu. Toho dosáhnete zadáním dotazu na umístění parametrů bodů, které jste právě vytvořili.
Přidejte na kreslicí plochu uzel Surface.ParameterAtPoint a připojte vstupy, jak je znázorněno výše.
Zadejte dotaz na hodnoty u těchto parametrů pomocí uzlu UV.U.
Zadejte dotaz na hodnoty v těchto parametrů pomocí uzlu UV.V.
Výstup zobrazuje odpovídající hodnoty u a v pro každý bod povrchu. Nyní existuje rozsah od 0 do 1 pro každou hodnotu ve správné datové struktuře, čili je vše připraveno k použití parametrického algoritmu.
Přidejte na kreslicí plochu blok kódu a zadejte tento kód:
Math.Sin(u*180)*Math.Sin(v*180)*w;
. Jedná se o parametrickou funkci, která z plochého povrchu vytvoří sinusový oblouk.Připojte uzel UV.U ke vstupu u a UV.V ke vstupu v.
Vstup w představuje amplitudu tvaru, takže k němu připojíme posuvník čísel.
Nyní máme seznam hodnot definovaných algoritmem. Pomocí tohoto seznamu hodnot přesuňte body nahoru ve směru +Z. Pomocí uzlu Geometry.Translate připojte blok kódu ke vstupu zTranslation a uzel Surface.PointAtParameter připojte ke vstupu geometry. Nyní by se v náhledu aplikace Dynamo měly zobrazit nové body.
Nakonec vytvořte povrch pomocí uzlu NurbsSurface.ByPoints tím, že ke vstupu bodů připojíte uzel z předchozího kroku. Nyní máme parametrický povrch. Můžete volně přetahovat posuvník a pozorovat, jak se oblouk zmenšuje a zvětšuje.
U parametrického povrchu nyní chceme definovat způsob, jak z něj vytvořit panely a umístit tak čtyřbodové adaptivní komponenty do pole. Aplikace Dynamo nemá ve výchozím stavu funkci k vytvoření panelů z povrchu, čili je třeba prozkoumat komunitu a najít užitečné balíčky pro aplikaci Dynamo.
Přejděte do nabídky Balíčky > Vyhledat balíček.
Vyhledejte řetězec LunchBox a nainstalujte si balíček LunchBox for Dynamo. Jedná se o skutečně užitečnou sadu nástrojů pro operace geometrií, jako je právě tato.
Po stažení máte nyní plný přístup k sadě LunchBox. Vyhledejte řetězec Quad Grid a vyberte položku LunchBox Quad Grid By Face. Připojte parametrický povrch ke vstupu surface a nastavte podíly U a V na hodnotu 15. Nyní byste v náhledu aplikace Dynamo měli vidět povrch se čtyřmi panely.
Pokud vás zajímá nastavení tohoto balíčku, klikněte dvakrát na uzel Lunch Box a zjistěte, jak funguje.
Opět v aplikaci Revit se v rychlosti podíváme na adaptivní komponentu, kterou používáme. Není třeba ji stále sledovat, ale toto je o panel střechy, od kterého vytvoříme instanci. Jedná se o čtyřbodovou adaptivní komponentu, která je jednoduchou reprezentací systému ETFE. Otvor středového vybrání je u parametru s názvem ApertureRatio.
Chystáte se vytvořit instanci geometrie v aplikaci Revit, proto se ujistěte, že je řešič aplikace Dynamo nastaven na možnost Ruční.
Přidejte na kreslicí plochu uzel Family Types a vyberte položku ROOF-PANEL-4PT.
Přidejte na kreslicí plochu uzel AdaptiveComponent.ByPoints a připojte Panel Pts z výstupu balíčku LunchBox Quad Grid by Face ke vstupu points. Připojte uzel Family Types ke vstupu familySymbol.
Klikněte na možnost Spustit. Během tvorby geometrie bude aplikace Revit chvíli zaneprázdněna. Pokud to trvá příliš dlouho, snižte hodnotu v bloku kódu z 15 na nižší hodnotu. Tím se sníží počet panelů na střeše.
Poznámka: Pokud aplikaci Dynamo trvá výpočet uzlů dlouho, bude možná užitečné využít funkce uzlu „freeze“, která pozastaví provádění operací aplikace Revit, zatímco vyvíjíte graf. Další informace o zmrazení uzlů najdete v části Zmrazení v kapitole Tělesa.
Zpátky v aplikaci Revit máme pole panelů na střeše.
Po přiblížení se můžete blíže podívat na kvality jejich povrchů.
V rámci pokračování z předchozího kroku nastavte otvor každého panelu podle jeho vystavení slunci. Pokud přiblížíte pohled v aplikaci Revit a vyberete jeden panel, uvidíte na panelu vlastností, že je zde parametr s názvem Poměr otvoru. Rodina je nastavena, tak aby měl otvor rozsah zhruba od 0.05 do 0.45.
Pokud zapnete dráhu slunce, uvidíte v aplikaci Revit aktuální polohu slunce.
Na tuto polohu slunce se můžete odkázat pomocí uzlu SunSettings.Current.
Připojením nastavení slunce k uzlu Sunsetting.SunDirection získejte vektor slunečního záření.
U výstupu Panel Pts použitého k vytvoření adaptivních komponent aproximujte rovinu pro komponentu pomocí uzlu Plane.ByBestFitThroughPoints.
Zadejte dotaz na normálu této roviny.
K výpočtu orientace slunečního záření použijte skalární součin. Skalární součin je vzorec, který určuje, jak mohou dva vektory být rovnoběžné nebo nerovnoběžné. Čili vezmete normálu roviny každé adaptivní komponenty a porovnáte ji s vektorem slunečního záření, čímž zhruba nasimulujete orientaci slunečního záření.
Použijte absolutní hodnotu výsledku. Tím zajistíte, že bude skalární součin přesný, pokud je normála roviny otočena opačným směrem.
Klikněte na možnost Spustit.
Při pohledu na skalární součin je vidět, že máme k dispozici velký rozsah čísel. Chceme použít jejich relativní rozložení, ale je potřeba zhustit čísla do vhodného rozsahu parametru Poměr otvoru, který chceme upravit.
K tomuto účelu se skvěle hodí uzel Math.RemapRange. Ten vezme vstupní seznam a přemapuje jeho hranice na dvě cílové hodnoty.
Definujte cílové hodnoty 0.15 a 0.45 v bloku kódu.
Klikněte na možnost Spustit.
Připojte přemapované hodnoty k uzlu Element.SetParameterByName.
Připojte řetězec Aperture Ratio (Poměr otvoru) ke vstupu parameterName.
Připojte adaptivní komponenty ke vstupu element.
Klikněte na možnost Spustit.
Zpět v aplikaci Revit můžeme z dálky rozeznat vliv orientace slunečního záření na otvor v panelech ETFE.
Pokud přiblížíte pohled, zjistíte, že panely ETFE jsou více uzavřené, pokud směřují ke slunci. Cílem je snížit míru přehřátí při vystavení slunečnímu záření. Pokud chcete vpustit dovnitř více světla na základě slunečního záření, prostě jen přepněte doménu v uzlu Math.RemapRange.
Verze aplikace Revit | Pevní stabilní verze aplikace Dynamo | Poslední podporovaná verze modulu Dynamo pro aplikaci Revit |
---|---|---|
2013
2014
2015
2016
2017
2018
2019
2020+
2.1.0 – Aplikace Revit 2020 a novější nyní obsahuje aplikaci Dynamo, která je aktualizována, stejně jako Revit.)
Není použito
Aplikace Revit je prostředí obsahující velké množství dat. Díky tomu máte k dispozici celou řadu možností, které obnášejí více než jen najetí kurzorem a kliknutí. Při provádění parametrických operací můžete zadat dotaz do databáze aplikace Revit a dynamicky propojit prvky aplikace Revit s geometrií aplikace Dynamo.
Knihovna aplikace Revit v uživatelském rozhraní nabízí kategorii Selection (Výběr), která umožňuje výběr geometrie několika způsoby.
Chcete-li prvky aplikace Revit správně vybírat, je důležité plně pochopit hierarchii prvků aplikace Revit. Chcete vybrat všechny stěny v projektu? Vyberte je podle kategorie. Chcete vybrat každou židli Eames v moderní hale z poloviny století? Vyberte podle rodiny.
Zobrazme si stručný přehled hierarchie aplikace Revit.
Pamatujete si taxonomii z biologie? Říše, kmen, třída, řád, čeleď, rod, druh? Prvky aplikace Revit jsou uspořádány do kategorií podobným způsobem. Na základní úrovni je možné hierarchii aplikace Revit rozdělit na kategorie, rodiny, typy* a instance. Instance je samostatný prvek modelu (s jedinečným ID), zatímco kategorie definuje obecnou skupinu (například „stěny“ nebo „podlahy“). Pokud je databáze aplikace Revit tímto způsobem uspořádána, můžete vybrat jeden prvek a vybrat všechny podobné prvky podle určené úrovně hierarchie.
*Typy v aplikaci Revit jsou definovány jinak než typy u programování. Typ v aplikaci Revit odkazuje na větev hierarchie, nikoli na „datový typ“.
Tři níže uvedené obrázky rozebírají hlavní kategorie výběru prvků aplikace Revit v aplikaci Dynamo. Jsou to skvělé nástroje použitelné v kombinaci, a některé z nich budou rozebrány během následujících cvičení.
Najetí kurzorem a kliknutí je nejjednodušší způsob, jak přímo vybrat prvek aplikace Revit. Můžete vybrat prvek úplného modelu nebo součásti jeho topologie (jako je plocha nebo hrana). Prvek zůstane dynamicky propojený s objektem aplikace Revit, čili jakmile u souboru aplikace Revit dojde k aktualizaci umístění nebo parametrů, odkazovaný prvek aplikace Dynamo se v grafu aktualizuje.
Rozevírací nabídky slouží k tvorbě seznamu všech dostupných prvků v projektu aplikace Revit. Pomocí tohoto nástroje můžete odkazovat na prvky aplikace Revit, které nemusí být v pohledu viditelné. Jedná se o skvělý nástroj k dotazování existujících prvků nebo tvorbě nových v projektu aplikace Revit nebo v editoru rodin.
Prvek aplikace Revit můžete také vybrat podle konkrétních vrstev v hierarchii aplikace Revit. Toto je účinná možnost přizpůsobení velkých polí dat při přípravě dokumentace nebo generativních instancí a přizpůsobení.
Se třemi výše zmíněnými obrázky stále na paměti se pusťte do cvičení, které vybere prvky ze základního projektu aplikace Revit při přípravě pro parametrickou aplikaci, kterou vytvoříte ve zbývajících částech této kapitoly.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
V tomto vzorovém souboru aplikace Revit jsou k dispozici tři typy prvků jednoduché budovy. Tento soubor bude sloužit jako příklad výběru prvků aplikace Revit v rámci kontextu hierarchie aplikace Revit.
Objem budovy
Nosníky (rámová konstrukce)
Příhradové nosníky (adaptivní komponenty)
Jaké závěry je možné vyvodit z prvků aktuálně zobrazených v pohledu projektu aplikace Revit? A jak hluboko do hierarchie bude třeba jít, aby bylo možné vybrat vhodné prvky? Tyto problémy se samozřejmě stanou mnohem složitějšími, pokud pracujete na velkých projektech. K dispozici je mnoho možností: prvky je možné vybrat podle kategorií, úrovní, rodin, instancí atd.
Vzhledem k tomu, že nyní pracujete se základním nastavením, vyberte objem budovy kliknutím na položku Objem v rozevíracím uzlu Categories. Tyto položky naleznete na kartě Revit > Výběr.
Výstup kategorie Objem je pouze samotná kategorie. Je třeba vybrat prvky. K tomuto účelu použijte uzel All Elements of Category.
V tuto chvíli si všimněte, že v aplikaci Dynamo není zobrazena žádná geometrie. Vybrali jste prvek aplikace Revit, ale nepřevedli jste jej na geometrii aplikace Dynamo. Toto rozdělení je důležité. Pokud byste chtěli vybrat velký počet prvků, určitě byste nechtěli zobrazit všechny jejich náhledy v aplikaci Dynamo, protože tím by se vše zpomalilo. Aplikace Dynamo je nástroj ke správě projektu aplikace Revit bez nutnosti provádění operací geometrie, tomuto je věnována následující část této kapitoly.
V tomto případě pracujete s jednoduchou geometrií, čili je užitečné zobrazit v náhledu aplikace Dynamo geometrii. Položka „BldgMass“ ve výše zobrazeném uzlu Watch má vedle sebe zelené číslo. To představuje ID prvku a sděluje, že se zabýváme prvkem aplikace Revit, nikoli geometrií aplikace Dynamo. Dalším krokem je převedení tohoto prvku aplikace Revit na geometrii v aplikaci Dynamo.
Pomocí uzlu Element.Faces získáme seznam povrchů představujících každou plochu objemu aplikace Revit. Nyní je geometrie zobrazena ve výřezu aplikace Dynamo a je možné začít s odkazováním plochy pro parametrické operace.
Zde je alternativní metoda. Tentokrát se vyhneme výběru přes hierarchii aplikace Revit (All Elements of Category) a budeme vybírat, aby byla explicitně vybrána geometrie v aplikaci Revit.
V uzlu Select Model Element klikněte na tlačítko *Vybrat *(nebo Změnit). Ve výřezu aplikace Revit vyberte požadovaný prvek. V tomto případě vybíráme objem budovy.
Místo uzlu Element.Faces můžete k výběru plného objemu jako jedné geometrie tělesa použít uzel Element.Geometry. Tím vyberete veškerou geometrii obsaženou v daném objemu.
Pomocí uzlu Geometry.Explode můžete zase získat zpět seznam povrchů. Tyto dva uzly fungují stejně jako uzel Element.Faces, ale nabízejí alternativní možnosti, jak proniknout do geometrie prvku aplikace Revit.
Pomocí některých základních operací se seznamem se můžete dotazovat na určitou plochu.
Nejprve odešlete dříve vybrané prvky do uzlu Element.Faces.
Uzel List.Count následně zobrazí, že pracujete s 23 povrchy v objemu.
Na základě tohoto čísla změňte hodnotu Maximum u *celočíselného posuvníku *na 22.
Pomocí uzlu List.GetItemAtIndex zadejte jako vstupy seznamy a *celočíselný posuvník *pro vstup index. Při procházení vybraných prvků se zastavte na indexu 9 a izolujte hlavní fasádu od příhradových nosníků.
Předchozí krok byl trochu těžkopádný. Činnost tohoto kroku je možné provést mnohem rychleji pomocí uzlu Select Face. Můžete tak izolovat plochu, která není samotným prvkem v projektu aplikace Revit. Stejná interakce platí i pro uzel Select Model Element, s tím rozdílem, že se vybírá povrch, nikoli celý prvek.
Řekněme, že chcete izolovat stěny hlavní fasády budovy. Toho můžete dosáhnout pomocí uzlu Select Faces. Klikněte na tlačítko Vybrat a poté v aplikaci Revit vyberte čtyři hlavní fasády.
Po výběru čtyř stěn se ujistěte, že jste v aplikaci Revit kliknuli na tlačítko Dokončit.
Plochy jsou nyní importovány do aplikace Dynamo jako povrchy.
Nyní se zaměřme na nosníky nad atriem.
Pomocí uzlu Select Model Element vyberte jeden z nosníků.
Připojte prvek nosníku k uzlu Element.Geometry a nosník se zobrazí ve výřezu aplikace Dynamo.
Geometrii můžete přiblížit pomocí uzlu Watch3D (pokud nosník není v uzlu Watch 3D zobrazen, klikněte pravým tlačítkem a klikněte na položku Přizpůsobit oknu).
Otázka, která se může často vyskytovat u pracovních postupů aplikace Revit/Dynamo: Jak mohu vybrat jeden prvek a získat všechny podobné prvky? Vzhledem k tomu, že vybraný prvek aplikace Revit obsahuje všechny hierarchické informace, můžete zadat dotaz na typ rodiny a vybrat všechny prvky tohoto typu.
Připojte prvek nosníku k uzlu Element.ElementType.
Uzel Watch ukazuje, že výstupem je nyní symbol rodiny, nikoli prvek aplikace Revit.
Element.ElementType je jednoduchý dotaz, čili je možné jej provést stejně snadno i v bloku kódu pomocí výrazu
x.ElementType;
a získat tak stejné výsledky.
K výběru zbývajících nosníků se použije uzel All Elements of Family Type.
Uzel Watch zobrazuje, že je vybráno pět prvků aplikace Revit.
Všech pět prvků je také možné převést na geometrii aplikace Dynamo.
Co kdybyste pracovali s 500 nosníky? Převod všech těchto prvků na geometrii aplikace Dynamo by byl velmi pomalý. Pokud aplikaci Dynamo trvá výpočet uzlů dlouho, bude možná užitečné využít funkci „zmrazení“ uzlu, která pozastaví provádění operací aplikace Revit, zatímco vyvíjíte graf. Další informace o zmrazení uzlů najdete v části Zmrazení v kapitole Tělesa.
V každém případě, pokud chcete importovat 500 nosníků, potřebujete k provedení požadované parametrické operace všechny povrchy? Nebo je možné extrahovat z nosníků základní informace a provést generativní úlohy u základní geometrie? Tuto otázku mějte během procházení této kapitoly na paměti. Podívejme se dále například na systém příhradových nosníků
Pomocí stejného grafu uzlů vyberte prvek příhradového nosníku místo prvku nosníku. Ještě než to uděláte, odstraňte uzel Element.Geometry z předchozího kroku.
Dále jsme připraveni extrahovat některé základní informace z typu rodiny příhradových nosníků.
V uzlu Watch je vidět, že výstupem je seznam adaptivních komponent vybraných v aplikaci Revit. Pokud chcete extrahovat základní informace, začněte adaptivními body.
Připojte uzel All Elements of Family Type k uzlu AdaptiveComponent.Location. Tím se zobrazí seznam seznamů, z nichž každý má tři body představující umístění adaptivních bodů.
Připojením uzlu Polygon.ByPoints pak vrátíte objekt PolyCurve. Ve výřezu aplikace Dynamo je to vidět. Touto metodou jste vizualizovali geometrii jednoho prvku a abstrahovali geometrii zbývajícího pole prvků (které mohlo být početně větší než v tomto příkladu).
Tip: Pokud v aplikaci Dynamo kliknete na zelené číslo u prvku aplikace Revit, výřez aplikace Revit se na tento prvek přiblíží.