Matematyka
Last updated
Last updated
Jeśli najprostszą formą danych są liczby, najprostszym sposobem powiązywania tych liczb jest matematyka. Od prostych operatorów, takich jak dzielenie czy funkcje trygonometryczne, po bardziej złożone formuły — matematyka stanowi doskonały sposób na rozpoczęcie badania zależności i wzorców między liczbami.
Operatory to zestaw komponentów, w których używane są funkcje algebraiczne z dwiema wejściowymi wartościami liczbowymi dającymi jedną wartość wyjściową (dodawanie, odejmowanie, mnożenie, dzielenie itp.). Można je znaleźć w obszarze Operatory > Operacje.
Ikona | Nazwa (składnia) | Dane wejściowe | Dane wyjściowe |
---|---|---|---|
Dodawanie (+) | var[]...[], var[]...[] | var[]...[] | |
Odejmowanie (-) | var[]...[], var[]...[] | var[]...[] | |
Mnożenie (*) | var[]...[], var[]...[] | var[]...[] | |
Dzielenie (/) | var[]...[], var[]...[] | var[]...[] |
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Połącz operatory i zmienne, aby utworzyć bardziej złożone zależności za pomocą formuł. Użyj suwaków, aby utworzyć formułę, którą można sterować za pomocą parametrów wejściowych.
1. Utwórz sekwencję liczb reprezentującą „t” w równaniu parametrycznym. Lista powinna być wystarczająco duża, aby można było zdefiniować spiralę.
Number Sequence: zdefiniuj sekwencję liczb w oparciu o trzy wejścia: start, amount i step.
2. W powyższym kroku utworzono listę liczb definiujących dziedzinę parametryczną. Następnie utwórz grupę węzłów reprezentujących równanie złotej spirali.
Złota spirala jest zdefiniowana jako równanie:
Poniższa ilustracja przedstawia złotą spiralę w postaci programowania wizualnego. Podczas przechodzenia przez grupę węzłów należy zwrócić uwagę na analogię pomiędzy programem wizualnym a równaniem pisemnym.
a. Number Slider: dodaj dwa suwaki liczb do obszaru rysunku. Suwaki te reprezentują zmienne a i b równania parametrycznego. Te elementy reprezentują stałą, która jest elastyczna, lub parametry, które można dostosować do żądanego wyniku.
b. Multiplication (*): węzeł mnożenia jest reprezentowany przez gwiazdkę. Użyjemy tego wielokrotnie, aby połączyć zmienne mnożenia.
c. Math.RadiansToDegrees: wartości „t” muszą zostać przekształcone w stopnie w celu ich oszacowania w funkcjach trygonometrycznych. Należy pamiętać, że podczas szacowania tych funkcji dodatek Dynamo domyślnie obsługuje wartości w stopniach.
d. Math.Pow: jako funkcja wartości „t” i liczby „e” tworzy to ciąg Fibonacciego.
e. Math.Cos i Math.Sin: te dwie funkcje trygonometryczne będą różnicować współrzędną x i współrzędną y każdego punktu parametrycznego.
f. Watch: teraz widzimy, że wynik to dwie listy — współrzędne x i y punktów użytych do wygenerowania spirali.
Teraz zestaw węzłów z poprzedniego kroku będzie działać poprawnie, ale to sporo pracy. Aby utworzyć wydajniejszy proces roboczy, zapoznaj się z częścią DesignScript w celu definiowania ciągu wyrażeń Dynamo w jednym węźle. W następnej serii kroków przeanalizujemy używanie równania parametrycznego do rysowania spirali Fibonacciego.
Point.ByCoordinates: połącz górny węzeł multiplication z wejściem „x”, a dolny — z wejściem „y”. Na ekranie pojawi się spirala parametryczna punktów.
Polycurve.ByPoints: połącz węzeł Point.ByCoordinates z poprzedniego kroku z węzłem points. Węzeł connectLastToFirst możemy pozostawić bez wejścia, ponieważ nie tworzymy krzywej zamkniętej. Spowoduje to utworzenie spirali przechodzącej przez każdy punkt zdefiniowany w poprzednim kroku.
Mamy gotową spiralę Fibonacciego. Przekształcimy to jeszcze bardziej w dwóch osobnych ćwiczeniach, tworząc kształty nautilusa i słonecznika. Są to abstrakcje systemów naturalnych, ale zapewni to dobrą reprezentację tych dwóch różnych zastosowań spirali Fibonacciego.
Circle.ByCenterPointRadius: użyjemy tutaj węzła circle z tymi samymi wejściami co w poprzednim kroku. Domyślną wartością promienia jest 1,0, dlatego natychmiast widoczne będą wyniki okręgów. Od razu staje się jasne, w jaki sposób te punkty odbiegają dalej od początku.
Number Sequence: jest to oryginalny szyk „t”. Przez połączenie tej pozycji z wartością Circle.ByCenterPointRadius środki okręgów wciąż odbiegają dalej od początku, ale promień okręgów rośnie, tworząc interesujący wykres okręgów Fibonacciego.
Jeszcze lepiej, jeśli uda Ci się przekształcić go w wykres 3D.
Mamy już powłokę nautilusa — przejdźmy do siatek parametrycznych. Użyjemy podstawowego obrotu na spirali Fibonacciego, aby utworzyć siatkę Fibonacciego, a wynik zostanie wymodelowany na wzór rosnących nasion słonecznika.
Punktem wyjścia będzie ten sam krok co w poprzednim ćwiczeniu: utworzenie szyku spirali punktów za pomocą węzła Point.ByCoordinates.
![](../images/5-3/2/math-part IV-01.jpg)
Następnie wykonaj te minikroki, aby wygenerować serię spiral o różnych obrotach.
a. Geometry.Rotate: dostępnych jest kilka opcji Geometry.Rotate. Należy pamiętać, aby wybrać węzeł z wejściami geometry, basePlane i degrees. Połącz węzeł Point.ByCoordinates z wejściem geometry. Kliknij prawym przyciskiem myszy ten węzeł i upewnij się, że skratowanie jest ustawione na Iloczyn wektorowy
b. Plane.XY: połącz z wejściem basePlane. Wykonamy obrót wokół początku, który ma to samo położenie co podstawa spirali.
c. Number Range: na potrzeby wartości wejściowej w stopniach utworzymy wiele obrotów. Można to zrobić szybko za pomocą węzła Number Range. Połącz to z wejściem degrees.
d. Number: aby zdefiniować zakres liczb, dodaj trzy węzły number do obszaru rysunku w kolejności pionowej. Od góry do dołu przypisz odpowiednio wartości 0,0, 360,0 i 120,0. Sterują one obrotem spirali. Zwróć uwagę na wyniki z wyjścia węzła Number Range po połączeniu trzech węzłów number z tym węzłem.
Nasz wynik zaczyna przypominać wir. Dostosuj niektóre parametry węzła Number Range i obserwuj, jak zmieniają się wyniki.
Zmień rozmiar kroku (step) węzła Number Range z 120,0 na 36,0. Zwróć uwagę, że w ten sposób powstaje więcej obrotów, co zapewnia gęstszą siatkę.
Zmień rozmiar kroku (step) węzła Number Range z 36,0 na 3,6. Daje to teraz dużo gęstszą siatkę, a kierunkowość spirali jest niejasna. W ten sposób utworzyliśmy słonecznik.