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
  • Aritmetické operátory
  • Cvičení: Vzorec zlaté spirály
  • Část I: Parametrický vzorec
  • Část II: Od vzorce ke geometrii
  • Část III: Od spirály k loděnce
  • Část IV: Od loděnky k fylotaxii
Edit on GitHub
Export as PDF
  1. Základní uzly a koncepce
  2. Stavební bloky programů

Matematika

PreviousDataNextLogika

Last updated 6 days ago

Pokud jsou nejjednodušší formou dat čísla, nejjednodušším způsobem, jak se tato čísla mohou odlišit, je použití funkce Mathematics. Od jednoduchých operátorů, jako je dělení, až k trigonometrickým funkcím, možnost Math je skvělým způsobem, jak začít zkoumat číselné vztahy a vzory.

Aritmetické operátory

Operátory jsou sada komponent, které používají algebraické funkce se dvěma číselnými vstupními hodnotami, které vrací jednu výstupní hodnotu (součet, rozdíl, násobení, dělení atd.). Najdete je pod položkou Operátory > Akce.

Ikona
Název (Syntaxe)
Vstupy
Výstupy

Součet (+)

var[]...[], var[]...[]

var[]...[]

Rozdíl (-)

var[]...[], var[]...[]

var[]...[]

Násobení (*)

var[]...[], var[]...[]

var[]...[]

Dělení (/)

var[]...[], var[]...[]

var[]...[]

Cvičení: Vzorec zlaté spirály

Kliknutím na odkaz níže si stáhněte vzorový soubor.

Úplný seznam vzorových souborů najdete v dodatku.

Část I: Parametrický vzorec

Kombinací operátorů a proměnných vytvořte složitější vztah prostřednictvím vzorců. Pomocí posuvníků vytvořte vzorec, který lze řídit pomocí vstupních parametrů.

1. Vytvořte posloupnost čísel, která představuje „t“ v parametrické rovnici. Chceme tedy použít seznam, který je dostatečně velký k definici spirály.

Number Sequence: Definuje posloupnost čísel na základě tří vstupů: start, amount a step.

2. Výše uvedený krok vytvořil seznam čísel definujících parametrickou doménu. Dále vytvořte skupinu uzlů představující rovnici zlaté spirály.

Zlatá spirála je definována jako následující rovnice:

x=rcosθ=acosθebθx = r cos θ = a cos θ e^{bθ}x=rcosθ=acosθebθ
y=rsinθ=asinθebθy = r sin θ = a sin θe^{bθ}y=rsinθ=asinθebθ

Obrázek níže znázorňuje zlatou spirálu ve vizuální programové podobě. Při procházení skupiny uzlů se snažte věnovat pozornost souvislosti mezi vizuálním programem a psanou rovnicí.

a. Number Slider: Přidejte na kreslicí plochu dva posuvníky. Tyto posuvníky budou představovat proměnné a a b parametrické rovnice. Představují konstantu, která je flexibilní, nebo parametry, které lze upravit podle požadovaného výsledku.

b. Násobení (*): Uzel násobení je reprezentován hvězdičkou. Toto použijeme opakovaně k připojení násobných proměnných

c. Math.RadiansToDegree: Hodnoty 't' je nutné převést na stupně pro jejich vyhodnocení v trigonometrických funkcích. Nezapomeňte, že aplikace Dynamo pro vyhodnocení těchto funkcí ve výchozím stavu používá stupně.

d. Math.Pow: jako funkce 't' a čísla 'e' vytvoří Finobacciho posloupnost.

e. Math.Cos a Math.Sin: Tyto dvě trigonometrické funkce odliší souřadnice X a souřadnice Y každého parametrického bodu.

f. Watch: Nyní vidíte, že náš výstup jsou dva seznamy, které budou tvořit souřadnice x a y bodů použitých k vytvoření spirály.

Část II: Od vzorce ke geometrii

Point.ByCoordinates: Spojte horní uzel násobení se vstupem x a dolní část se vstupem y. Nyní vidíte parametrickou spirálu bodů na obrazovce.

Polycurve.ByPoints: Spojte uzel Point.ByCoordinates z předchozího kroku se vstupem points. Možnost connectLastToFirst můžeme nechat bez vstupu, protože neděláme uzavřený oblouk. Tím se vytvoří spirála, která prochází každým bodem definovaným v předchozím kroku.

Nyní jsme dokončili Fibonacciho spirálu. Pokračujme dvěma různými cvičeními, které pojmenujeme Loděnka a Slunečnice. Jedná se o abstrakce přírodních systémů, ale dvě různá použití Fibonacciho spirály budou dobře zastoupena.

Část III: Od spirály k loděnce

Circle.ByCenterPointRadius: Zde použijeme kruhový uzel se stejnými vstupy jako v předchozím kroku. Výchozí hodnota poloměru je 1.0, takže je vidět okamžitý výstup kružnic. Je okamžitě vidět, jak se body dále vzdalují od počátku.

Number Sequence: Toto je původní pole 't'. Jeho připojením k hodnotě poloměru v uzlu Circle.ByCenterPointRadius se středy kružnic stále vzdalují od počátku, ale poloměry kružnic se zvětšují, což vytváří zábavný Fibonacciho kruhový graf.

Bonusové body, pokud to vytvoříte ve 3D.

Část IV: Od loděnky k fylotaxii

Jako výchozí bod použijeme stejný krok z předchozího cvičení: Vytvoření spirálového pole bodů pomocí uzlu Point.ByCoordinates.

![](../images/5-3/2/math-part IV-01.jpg)

Dále postupujte podle těchto krátkých kroků a vygenerujte řadu spirál s různým natočením.

a. Geometry.Rotate: Existuje několik možností Geometry.Rotate. Ujistěte se, že jste vybrali uzel se vstupy geometry, basePlane a degrees. Připojte položku Point.ByCoordinates ke vstupu geometrie. Klikněte pravým tlačítkem na tento uzel a ujistěte se, že je vázání nastaveno na možnost Kartézský součin.

b. Plane.XY: Připojte se ke vstupu basePlane. Budeme se otáčet kolem počátku, což je stejné umístění jako základna spirály.

c. Number Range: Pro náš vstup stupně chceme vytvořit více otočení. To můžeme rychle provést pomocí komponenty Number Range. Připojte jej ke vstupu degrees.

d. Number: A k definování rozsahu čísel přidejte na kreslicí plochu ve vertikálním pořadí tři uzly čísel. Shora dolů přiřaďte hodnoty 0.0,360.0 a 120.0 v uvedeném pořadí. Tato čísla řídí otáčení spirály. Po připojení tří uzlů čísel k uzlu si všimněte výstupních výsledků z uzlu Number Range.

Náš výstup se začíná podobat víru. Upravíme některé parametry položky Number Range a podíváme se, jak se změní výsledky.

Změňte velikost kroku uzlu Number Range z 120.0 na 36.0. Všimněte si, že tím vznikají další otáčení, a proto získáváme hustší osnovu.

Změňte velikost kroku uzlu Number Range z 36.0 na 3.6. Tím získáme mnohem hustší osnovu a směr spirály je nejasný. Dámy a pánové, vytvořili jsme slunečnici.

Většina uzlů z předchozího kroku bude fungovat dobře, ale jedná se o pracný postup. Chcete-li vytvořit efektivnější pracovní postup, přečtěte si v části jak definovat řetězec výrazů aplikace Dynamo do jednoho uzlu. V následující řadě kroků se podíváme, jak použít parametrickou rovnici k nakreslení Fibonacciho spirály.

Nyní, když jsme vytvořili kruhovou ulitu loděnky, přejděme k parametrickým osnovám. Použijeme základní otočení Fibonacciho spirály k vytvoření Fibonacciho rastru a výsledek bude modelován po .

DesignScript
růstu slunečnicových semen
17KB
Building Blocks of Programs - Math.dyn