Dynamo
Primer for v2.0
Čeština
Čeština
  • O aplikaci
  • Úvod
    • Co je aplikace Dynamo a jak funguje?
    • Uživatelská příručka Primer, komunita a platforma aplikace Dynamo
  • Nastavení aplikace Dynamo
  • Uživatelské rozhraní
    • Pracovní prostor
    • Knihovna
  • Uzly a dráty
  • Základní uzly a koncepce
    • Rejstřík uzlů
    • Geometrie pro výpočetní návrh
      • Přehled geometrie
      • Vektor, rovina a souřadnicový systém
      • Body
      • Křivky
      • Povrchy
      • Tělesa
      • Sítě
    • Stavební bloky programů
      • Data
      • Matematika
      • Logika
      • Řetězce
      • Barva
    • Práce se seznamy
      • Co je to seznam
      • Práce se seznamy
      • Seznamy seznamů
      • N-rozměrné seznamy
    • Slovníky v aplikaci Dynamo
      • Co je to slovník
      • Uzly slovníku
      • Slovníky v blocích kódu
      • Případy použití aplikace Revit
  • Vlastní uzly a balíčky
    • Vlastní uzly
      • Úvod do práce s vlastními uzly
      • Tvorba vlastního uzlu
      • Publikování do knihovny
    • Balíčky
      • Úvod do práce s balíčky
      • Příklad balíčku – sada nástrojů pro sítě
      • Vývoj balíčku
      • Publikování balíčku
      • Importování Zero-Touch
  • Dynamo pro aplikaci Revit
    • Propojení s aplikací Revit
    • Výběr
    • Úpravy
    • Tvorba
    • Přizpůsobení
    • Dokumentování
  • Dynamo for Civil 3D
    • Připojení aplikace Civil 3D
    • Začínáme
    • Knihovna uzlů
    • Vzorové pracovní postupy
      • Silnice
        • Umístění sloupů osvětlení
      • Terén
        • Umístění služeb
      • Pomůcky
        • Přejmenování stavebních objektů
      • Železnice
        • Vůle obalových křivek
      • Zaměření
        • Správa skupin bodů
    • Pokročilá témata
      • Vazby objektů
      • Python a Civil 3D
    • Přehrávač skriptů Dynamo
    • Užitečné balíčky
    • Zdroje
  • Dynamo v aplikaci Forma (beta verze)
    • Nastavení rozšíření Dynamo Player v aplikaci Forma
    • Přidávání a sdílení grafů v rozšíření Dynamo Player
    • Spouštění grafů v rozšíření Dynamo Player
    • Rozdíly mezi výpočetní službou Dynamo a počítačovou aplikací Desktop
  • Kódování v aplikaci Dynamo
    • Bloky kódů a jazyk DesignScript
      • Co je blok kódu
      • Syntaxe DesignScript
      • Zkratka
      • Funkce
    • Geometrie pomocí jazyka DesignScript
      • Základy geometrií v jazyku DesignScript
      • Geometrická primitiva
      • Vektorová matematika
      • Křivky: Interpolované a řídicí body
      • Posunutí, otočení a další transformace
      • Plochy: Interpolace, řídicí body, spojení profilů, rotace
      • Geometrická parametrizace
      • Průnik a oříznutí
      • Booleovské operace geometrií
      • Generátory bodů v jazyce Python
    • Python
      • Uzly jazyka Python
      • Python a Revit
      • Nastavení vlastní šablony jazyka Python
    • Změny jazyka
  • Osvědčené postupy
    • Strategie grafů
    • Strategie skriptování
    • Skriptování – reference
    • Správa programu
    • Efektivní práce s velkými sadami dat v aplikaci Dynamo
  • Vzorové pracovní postupy
    • Pracovní postupy Začínáme
      • Parametrická váza
      • Body atraktoru
    • Rejstřík konceptů
  • Příručka Primer pro vývojáře
    • Sestavení aplikace Dynamo ze zdroje
      • Sestavení doplňku DynamoRevit ze zdroje
      • Správa a aktualizace závislostí v aplikaci Dynamo
    • Vývoj pro aplikaci Dynamo
      • Začínáme
      • Případová studie funkce Zero-Touch – uzel osnovy
      • Provádění skriptů jazyka Python v uzlech Zero-Touch (C#)
      • Další práce s funkcí Zero-Touch
      • Pokročilé přizpůsobení uzlů aplikace Dynamo
      • Použití typů COM (interoperability) v balíčcích aplikace Dynamo
      • Případová studie uzlu NodeModel – vlastní uživatelské rozhraní
      • Aktualizace balíčků a knihoven aplikace Dynamo pro aplikaci Dynamo 2.x
      • Aktualizace balíčků a knihoven aplikace Dynamo pro aplikaci Dynamo 3.x
      • Rozšíření
      • Definování vlastní organizace balíčků pro Dynamo 2.0+
      • Rozhraní příkazového řádku aplikace Dynamo
      • Integrace pro aplikaci Dynamo
      • Vývoj pro modul Dynamo pro aplikaci Revit
      • Publikování balíčku
      • Vytvoření balíčku z aplikace Visual Studio
      • Rozšíření jako balíčky
    • Žádosti o přijetí změn
    • Očekávání při testování
    • Příklady
  • Příloha
    • Nejčastější dotazy
    • Vizuální programování a aplikace Dynamo
    • Zdroje
    • Poznámky k verzi
    • Užitečné balíčky
    • Vzorové soubory
    • Mapa integrace hostitelů
    • Stažení souboru PDF
    • Klávesové zkratky aplikace Dynamo
Powered by GitBook
On this page
  • Cíl
  • Klíčové koncepty
  • Kompatibilita verzí
  • Datová sada
  • Řešení
  • Získání dat ze souboru aplikace Excel
  • Získání návrhových linií koridorů
  • Vytvoření souřadnicových systémů
  • Vytvoření referencí bloků
  • Výsledek
  • Bonus: Vizualizace v aplikaci Dynamo
  • Nápady
Edit on GitHub
Export as PDF
  1. Dynamo for Civil 3D
  2. Vzorové pracovní postupy
  3. Silnice

Umístění sloupů osvětlení

PreviousSilniceNextTerén

Last updated 1 month ago

Jedním z mnoha případů skvělého použití aplikace Dynamo je dynamické umísťování samostatných objektů podél modelu koridoru. Často je potřeba objekty umístit na místa, která jsou nezávislá na vložených sestavách podél koridoru, což je velmi zdlouhavý úkol, který je třeba provést ručně. A pokud se změní horizontální nebo vertikální geometrie koridoru, je nutné provést značné množství předělávek.

Cíl

Klíčové koncepty

  • Načítání dat z externího souboru (v tomto případě soubor aplikace Excel)

  • Uspořádání dat ve slovnících

  • Použití souřadnicových systémů k řízení polohy, měřítka nebo natočení

  • Umístění referencí bloků

  • Vizualizace geometrie v aplikaci Dynamo

Kompatibilita verzí

Tento graf bude funkční v aplikaci Civil 3D 2020 a vyšších verzích.

Datová sada

Začněte stažením níže uvedených vzorových souborů a poté otevřete soubor DWG a graf aplikace Dynamo.

Doporučujeme soubor aplikace Excel uložit ve stejném adresáři jako graf aplikace Dynamo.

Řešení

Zde je uveden přehled logiky tohoto grafu.

  1. Načtěte soubor aplikace Excel a importujte data do aplikace Dynamo.

  2. Získejte návrhové linie ze zadané základny koridoru.

  3. Vytvořte souřadnicové systémy podél návrhové linie koridoru v požadovaných staničeních.

  4. Pomocí souřadnicových systémů umístěte reference bloků v modelovém prostoru.

Pojďme na to!

Získání dat ze souboru aplikace Excel

V tomto vzorovém grafu použijeme soubor aplikace Excel k uložení dat, která aplikace Dynamo použije k umístění referencí bloků sloupů osvětlení. Tabulka vypadá následovně.

Použití aplikace Dynamo k načtení dat z externího souboru (například souboru aplikace Excel) je skvělou strategií, zejména pokud je potřeba data sdílet s ostatními členy týmu.

Data ze souboru aplikace Excel se do aplikace Dynamo importují následujícím způsobem.

Nyní, když máme data, je nutné je rozdělit podle sloupců (Corridor, Baseline, PointCode atd.), aby je bylo možné použít ve zbývající části grafu. Běžně se to dělá pomocí uzlu List.GetItemAtIndex a zadáním čísla indexu každého sloupce, který chceme použít. Například sloupec Corridor má index 0, sloupec Baseline má index 1 atd.

Vypadá to dobře, že? Ale tento přístup v sobě skrývá možný problém. Co když se v budoucnu změní pořadí sloupců v souboru aplikace Excel? Nebo se mezi dva sloupce přidá nový sloupec? Potom graf nebude správně fungovat a bude vyžadovat aktualizaci. Budoucí fungování grafu můžeme zajistit vložením dat do slovníku, přičemž záhlaví sloupců v souboru aplikace Excel budou sloužit jako klíče a zbývající data jako hodnoty.

Pokud jsou pro vás slovníky novinkou, přečtěte si část Slovníky v aplikaci Dynamo .

Graf je díky tomu odolnější, protože umožňuje flexibilně měnit pořadí sloupců v souboru aplikace Excel. Dokud záhlaví sloupců zůstanou stejná, pak lze data jednoduše načíst ze slovníku pomocí jeho klíče (tj. záhlaví sloupce), což nyní provedeme.

Získání návrhových linií koridorů

Nyní, když máme importovaná a připravená data aplikace Excel, začneme je používat k získávání informací o modelech koridorů z aplikace Civil 3D.

  1. Vybere model koridoru podle jeho názvu.

  2. Získá konkrétní základnu v rámci koridoru.

  3. Získá návrhovou linii v rámci základny podle kódu bodu.

Vytvoření souřadnicových systémů

Nyní vytvoříme souřadnicové systémy podél návrhových linií koridoru v hodnotách staničení, které jsme zadali v souboru aplikace Excel. Tyto souřadnicové systémy budou použity k definování polohy, otočení a měřítka referencí bloků sloupů osvětlení.

Pokud jsou pro vás souřadnicové systémy novinkou, přečtěte si část Vektor, rovina a souřadnicový systém .

Všimněte si, že je zde použit blok kódu k otočení souřadnicových systémů v závislosti na tom, na které straně základny se nacházejí. Toho lze dosáhnout pomocí posloupnosti několika uzlů, ale toto je dobrý příklad situace, kdy je jednodušší to prostě sepsat.

Pokud jsou bloky kódu pro vás novinkou, přečtěte si část Bloky kódů a jazyk DesignScript.

Vytvoření referencí bloků

Blížíme se k cíli! Máme všechny informace, které potřebujeme, abychom mohli skutečně umístit reference bloků. Nejprve je nutné získat požadované definice bloků pomocí sloupce BlockName v souboru aplikace Excel.

Posledním krokem je vytvoření referencí bloků.

Výsledek

Po spuštění grafu by se měly v modelovém prostoru podél koridoru zobrazit nové reference bloků. A tady je ta skvělá část – pokud je režim spuštění grafu nastaven na Automaticky a upravíte soubor aplikace Excel, reference bloků se automaticky aktualizují!

Další informace o režimech spouštění grafů naleznete v části Uživatelské rozhraní.

Zde je příklad spuštění grafu pomocí Přehrávače skriptů Dynamo.

Pokud je pro vás Přehrávač skriptů Dynamo novinkou, přečtěte si část Přehrávač skriptů Dynamo.

Bonus: Vizualizace v aplikaci Dynamo

Vizualizace geometrie koridoru v aplikaci Dynamo může být užitečná kvůli získání kontextu. Tento konkrétní model má tělesa koridoru již extrahovaná v modelovém prostoru, takže je přeneseme do aplikace Dynamo.

Je tu však ještě něco, co musíme vzít v úvahu. Tělesa jsou relativně „těžkým“ typem geometrie, což znamená, že tato operace zpomalí graf. Proto by se hodilo, kdyby existoval jednoduchý způsob, jak zvolit, zda chceme tělesa zobrazit, nebo ne. Zřejmou odpovědí je odpojení uzlu Corridor.GetSolids, což však vytvoří upozornění pro všechny navazující uzly, což je trochu nepřehledné. To je situace, kdy vítězoslavně použijeme uzel ScopeIf.

  1. Všimněte si šedé čáry v dolní části uzlu Object.Geometry. To znamená, že náhled uzlu je vypnutý (přístupný po kliknutí pravým tlačítkem myši na uzel), což umožňuje, aby uzel GeometryColor.ByGeometryColor „nebojoval“ s jinou geometrií o prioritu zobrazení v náhledu na pozadí.

  2. Uzel ScopeIf v zásadě umožňuje selektivně spustit celou větev uzlů. Pokud je vstup test nastaven na hodnotu false, potom se nespustí žádné uzly připojené k uzlu ScopeIf.

Zde je výsledek v náhledu na pozadí v aplikaci Dynamo.

Nápady

Zde je několik nápadů, jak byste mohli rozšířit možnosti tohoto grafu.

Přidejte do souboru aplikace Excel sloupec rotation a použijte jej k řízení otáčení souřadnicových systémů.

Přidejte do souboru aplikace Excel horizontální nebo vertikální odsazení, aby se sloupy osvětlení mohly v případě potřeby odchýlit od návrhové linie koridoru.

Místo použití souboru aplikace Excel s hodnotami staničení vygenerujte hodnoty staničení přímo v aplikaci Dynamo pomocí počátečního staničení a typické rozteče.

Umístěte reference bloků sloupů osvětlení podél koridoru v hodnotách staničení určených v souboru aplikace Excel.

Úkol splněn!

🎯
🎉
232KB
Roads_CorridorBlockRefs.dyn
54MB
Roads_CorridorBlockRefs.dwg
12KB
LightPoles.xlsx
Struktura tabulky souboru aplikace Excel
Import dat aplikace Excel do aplikace Dynamo
Vložení dat aplikace Excel do slovníku
Načítání dat ze slovníku
Získání souřadnicových systémů podél návrhových linií koridoru
Získání požadovaných definic bloků z dokumentu
Vytvoření referencí bloků v modelovém prostoru
Provádění změn v souboru aplikace Excel a rychlé zobrazení výsledků v aplikaci Civil 3D
Spuštění grafu pomocí Přehrávače skriptů Dynamo a zobrazení výsledků v aplikaci Civil 3D
Vizualizace geometrie koridoru v aplikaci Dynamo