Krzywe
Krzywe w dodatku Dynamo
Co to jest krzywa?
Krzywe są pierwszym z opisanych typów danych geometrycznych, które mają bardziej znany zestaw właściwości opisujących kształt: jak bardzo są zakrzywione lub proste? Jak są długie lub krótkie? Należy też pamiętać, że punkty są nadal blokami konstrukcyjnymi służącymi do definiowania dowolnego elementu — od linii do splajnu oraz wszystkich typów krzywych.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-a62f24012ab0239ba4811ea2dff6003de993b1c9%252FCurveTypes.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=b8e77c4d&sv=1)
Linia
Polilinia
Łuk
Okrąg
Elipsa
Krzywa NURBS
Krzywa PolyCurve
Linia
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-826627ea8ce10abae7f02c7fe203872001a7f7e9%252Fcurves%2520-%2520line%2520by%2520start%2520point%2520end%2520point%2520%281%29.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=aee53583&sv=1)
Krzywa NURBS
NURBS to model używany do dokładnego przedstawiania krzywych i powierzchni. Krzywa sinusoidalna w dodatku Dynamo utworzona za pomocą dwóch różnych metod tworzenia krzywych NURBS w celu porównania wyników.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-98e0a27fcdfa3f84aadc2fa7f72c4a40b64feb24%252Fcurves%2520-%2520Nurbs%2520Curves.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=45fe309b&sv=1)
Węzeł NurbsCurve.ByControlPoints używa listy punktów jako punktów kontrolnych
Węzeł NurbsCurve.ByPoints rysuje krzywą przechodzącą przez listę punktów
Pobierz plik przykładowy, klikając poniższe łącze.
Pełna lista plików przykładowych znajduje się w załączniku.
Bliższe spojrzenie na...
Krzywe
Termin Krzywa obejmuje zazwyczaj wszystkie różne kształty zakrzywione (nawet jeśli są proste). Krzywa jako taka to nadrzędna kategoryzacja wszystkich tych typów kształtów — linii, okręgów, splajnów itp. Określając to bardziej technicznie: krzywa opisuje każdy możliwy punkt, który można znaleźć przez wprowadzenie „t” do kolekcji funkcji — od funkcji prostych (x = -1.26*t, y = t
) po funkcje wymagające przeprowadzenia złożonych obliczeń. Niezależnie od tego, z jakiego rodzaju krzywą pracujemy, ten parametr o nazwie „t” jest właściwością, którą można ocenić. Ponadto niezależnie od wyglądu kształtu wszystkie krzywe mają także punkt początkowy i punkt końcowy, które zbiegają się z minimalnymi i maksymalnymi wartościami „t” użytymi do utworzenia krzywej. Pomaga to również zrozumieć jej kierunkowość.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-0f4faae032d89e228ee5276c63ffe211b81f33ec%252FCurveParameter.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=6c5014ff&sv=1)
Ważne: dodatek Dynamo zakłada, że domena wartości „t” dla krzywej jest rozumiana jako 0,0 do 1,0.
Wszystkie krzywe posiadają również wiele właściwości lub cech, których można używać do ich opisania lub analizy. Gdy odległość między punktem początkowym a końcowym wynosi zero, krzywa jest „zamknięta”. Ponadto każda krzywa ma wiele punktów kontrolnych, a jeśli wszystkie te punkty znajdują się w tej samej płaszczyźnie, krzywa jest „płaska”. Niektóre właściwości mają zastosowanie do całej krzywej, natomiast inne mają zastosowanie tylko do określonych punktów wzdłuż krzywej. Na przykład płaskość stanowi właściwość globalną, a wektor styczny dla danej wartości „t” stanowi właściwość lokalną.
Linie
Linie są najprostszą postacią krzywych. Mogą nie wyglądać na zakrzywione, ale w rzeczywistości są krzywymi — bez krzywizny. Istnieje kilka różnych sposobów tworzenia linii. Najbardziej intuicyjna to pociągnięcie jej od punktu A do punktu B. Kształt linii AB zostanie narysowany między punktami, z matematycznego punktu widzenia będzie się ona rozciągać w nieskończoność w obu kierunkach.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-9555bc2c06d4546f4986fe08ebd33bfc833dfed6%252FLine.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=9503bfbd&sv=1)
Po połączeniu dwóch linii uzyskujemy polilinię. Tutaj mamy prostą reprezentację punktu kontrolnego. Edycja dowolnego z tych punktów spowoduje zmianę kształtu polilinii. Jeśli polilinia jest zamknięta, mamy do czynienia z wielobokiem. Jeśli długości krawędzi wieloboku są równe, określamy go jako regularny.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-f8b80b3be9e4e84038510b3c1157dade66c34c96%252FPolyline.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=e3aeb7cf&sv=1)
Łuki, okręgi, łuki eliptyczne i elipsy
Wraz ze wzrostem złożoności funkcji parametrycznych definiujących kształt możemy pójść o krok dalej od linii, aby utworzyć łuk, okrąg, łuk eliptyczny lub elipsę, opisując jeden lub dwa promienie. Różnice między łukiem a okręgiem lub elipsą polegają tylko na tym, czy kształt jest zamknięty.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-34ff9494e298d036665dfb85fd11806fd4dbea7f%252FArcs%252BCircles.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=c641f215&sv=1)
Krzywe NURBS i PolyCurve
NURBS (niejednorodne wymierne splajny podstawowe) to reprezentacje matematyczne, które mogą dokładnie modelować dowolne kształty — od prostej dwuwymiarowej linii, okręgu, łuku lub prostokąta po najbardziej złożoną trójwymiarową swobodną krzywą organiczną. Ze względu na swoją elastyczność (stosunkowo niewiele punktów kontrolnych, a przy tym gładką interpolację opartą na ustawieniach stopni) i precyzję (związanie przez solidną matematykę) modele NURBS mogą być używane w każdym procesie: od ilustracji i animacji po produkcję.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-8255d971dcc09bc07e5d8a55e6a08f116a757656%252FNURBScurve.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=f0e0dd2&sv=1)
Stopień: stopień krzywej określa zakres wpływu, jaki punkty kontrolne mają na krzywą; im większy stopień, tym większy ten zakres. Stopień jest dodatnią liczbę całkowitą. Liczba ta wynosi zazwyczaj 1, 2, 3 lub 5, ale może być dowolną dodatnią liczbą całkowitą. Linie NURBS i polilinie mają zazwyczaj stopień 1, a większość krzywych swobodnych ma stopień 3 lub 5.
Punkty kontrolne: punkty kontrolne to lista punktów o długości co najmniej stopnień+1. Jedną z najprostszych metod zmiany kształtu krzywej NURBS jest przesunięcie jej punktów kontrolnych.
Waga: punkty kontrolne mają skojarzoną liczbę zwaną wagą. Wagi są zazwyczaj liczbami dodatnimi. Gdy wszystkie punkty kontrolne krzywej mają tę samą wagę (zwykle 1), krzywa jest nazywana niewymierną. W przeciwnym razie krzywa jest nazywana wymierną. Większość krzywych NURBS jest niewymiernych.
Węzły: węzły są listą liczb (stopień+N-1), gdzie N jest liczbą punktów kontrolnych. Węzły są używane razem z wagami do sterowania wpływem punktów kontrolnych na wynikową krzywą. Jeden z nich służy do tworzenia punktów podziału w niektórych punktach krzywej.
![](https://primer2.dynamobim.org/~gitbook/image?url=https%3A%2F%2F2069116583-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FT8P36P8hlroW5MOSGuXc%252Fuploads%252Fgit-blob-e293011f5618ca0ec01f6c8392d298a85bedc25f%252FNURBScurve_Degree.jpg%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=8a6fce92&sv=1)
Stopień = 1
Stopień = 2
Stopień = 3
Należy zauważyć, że im większa wartość stopnia, tym więcej punktów kontrolnych jest używanych do interpolacji wynikowej krzywej.
Last updated