Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Eine kurze Vorstellung, vor allem an Hand von Beispielen weniger von Theorie und ohne Anspruch auf Vollständigkeit und strenge Wissenschaftlichkeit eben.

Ähnliche Präsentationen


Präsentation zum Thema: "Eine kurze Vorstellung, vor allem an Hand von Beispielen weniger von Theorie und ohne Anspruch auf Vollständigkeit und strenge Wissenschaftlichkeit eben."—  Präsentation transkript:

1 eine kurze Vorstellung, vor allem an Hand von Beispielen weniger von Theorie und ohne Anspruch auf Vollständigkeit und strenge Wissenschaftlichkeit eben für die Schule gedacht NURBS & CO

2 Am Anfang ein wenig Eigenwerbung: oder gz-dg-cad/ gz-dg-cad/ mit z.B. folgenden Informationen Architektur Rundgang Architektur Rundgang wo jeden Monat ein besonders spannendes Architektur Thema besprochen wird VRML-Lehrgang POV-Ray Lehrgang Blender Lehrgang Nichteuklidische Geometrie (gegen Jahresende)

3 Approximation durch SPLINEFUNKTIONEN Eine Anzahl von Punkten soll durch eine möglichst glatte Polynomfunktion verbunden werden. Vergleich: EIN Polynom - Spline

4 Beispiel: P 0 (-4,0), P 1 (0,0), P 2 (4,0), P 3 (6,2), P 4 (8,0), P 5 (12,0), P 6 (16,0) Es sind also sechs Polynomfunktionen P(x), Q(x),...U(x) nötig, eine pro Intervall. Derive: Zuerst werden die Punkte eingegeben dann die Polynomfunktionen definiert dann die Anschlussbedingungen eingegeben (C2-Übergänge in jedem Zwischenpunkt) und die Randbedingungen (Wendpunkte)

5 Innen: C2-Übergänge In den Randpunkten: Wendepunkte Die Gesamtkrümmung ist minimal Nachteil: Änderung eines Punktes bewirkt Totaländerung. Hier ein Splinerechner:

6 Jetzt wird ein ganz anderer Weg beschritten. Es ist also wieder eine Anzahl n+1 von Punkten A 0, A 1,... A n, gegeben. Die Punkte der interpolierenden Kurve sollen durch ein gewichtetes Mittel der gegebenen bestimmt werden, also etwa X = g 0 A 0 + g 1 A 1 + g 2 A g n A n mit variablen Gewichtsfunktionen g i (u) Der Parameterbereich für u soll sein [0, 1] und die Summe der g i (u) soll immer (d.h. für alle u) =1 sein, X befindet sich dann immer in der konvexen Hülle der Punkte.

7 Die Bernsteinpolynome B 0,0 = 1, B 0,1 (u) = 1-u, B 1,1 (u) = u B 0,2 (u) = (1-u)² B 1,2 (u) = 2u(1-u) B 2,2 (u) = u² B 0,3 (u) = (1-u)³ B 1,3 (u) = 3u(1-u)² B 2,3 (u) = 3u²(1-u) B 3,3 (u) = u³ B 0,4 (u) = (1-u) 4 B 1,4 (u) = 4u(1-u) 3 B 2,4 (u) = 6u²(1-u)² B 3,4 (u) = 4u³(1-u) B 4,4 (u) = (1-u) 4

8 Wichtige Eigenschaft: sie bilden eine Zerlegung der 1 Und sind daher als Gewichtungsfunktionen geeignet. 1 = 1 n = ( u+(1-u) ) n = Σ B i,n (u)

9 Nicht-rationale Bezierkurven Quelle :

10 Quelle: Läuft durch Start- und Endknoten P 0 bzw. P n, in diesen tangential zu P 0 P 1 bzw. P n-1 P n ; Grad ist abhängig von der Anzahl der Kontrollpunkte (Grad = n = Anzahl der Kontrollpunkte – 1 Anwendung in vielen Grafikprogrammen Änderung eines Punktes führt zu Globaländerung der Kurve

11 Bezierflächen in Tensorproduktdarstellung. Quelle:

12 Bearbeitungsfunktionen bei Blender Kurve einfügen: Add - Kurve - Bezier Schließen: durch Drücken von C im Edit Modus Den Öffnungspunkt verschieben: Schließen Sie die Kurve (mit C). Wählen Sie dann die beiden Punkte aus, zwischen denen die Kurve geöffnet sein soll, und drücken X->Erase Segment. Zwei Kurventeile verbinden: mit F (make Segment) wieder verbinden. Ein Kurvensegment abtrennen: Separierte Kurvensegmente können Sie mit P (separate) in ein eigenes Objekt umwandeln. Extrude: zuerst in Mesh umwandeln: ALT + C Neue Punkte: klicken Sie mit Strg-LMT in das Fenster.

13 Kritik an den Bezierkurven Die Bernsteinpolynome sind überall 0 (ausgenommen die Randpunkte), daher beeinflusst jeder Punkt die gesamte Im Anfangspunkt ist nur das erste Polynom 0, im Endpunkt nur das letzte, alle anderen sind dort = 0 und daher geht die Bezierkurve durch Anfangs- und Endpunkt. Der Grad der Kurve ist um 1 geringer als die Anzahl der Punkte, bei vielen Punkten daher riesig. Das alles will man dezidiert nicht haben.

14 Die Gewichtsfunktionen für B-Splines. Man hat daher die Gewichtsfunktionen so modelliert, dass sie im Ausdruck unten nur in einem bestimmten Intervall 0 und daher der betreffende Punkt das Aussehen auch nur in diesem Intervall beeinflussen kann. Ändert man daher einen Punkt ab, so führt das nur zu einer lokalen Änderung der Kurve, der Rest bleibt unbeeinflusst.

15 Die Gewichtsfunktionen vom Grad 0 [N 0, 0 (u):=CHI(0, u, 1), N 1, 0 (u):=CHI(1, u, 2), N 2, 0 (u):=CHI(2, u, 3),...] sind Treppenfunktionen, die jeweils im Intervall [i, i+1] den Wert 1 haben und sonst =0 sind. Alle aufsummiert ergeben trivialerweise 1. Für u aus [0,1) erhält man immer den Punkt P0

16 Die Gewichtsfunktion vom Grad 1: Sägezahn. Alle aufsummiert ergeben 1, aber erst ab u=1!! N 0, 1 (u) :=(u-0)*CHI(0,u,1) + (2-u)*CH(1,u,2) N 1, 1 (u) :=(u-1)*CHI(1,u,2) + (3-u)*CH(2,u,3) N 2, 1 (u) :=(u-2)*CHI(2,u,3) + (4-u)*CH(3,u,4) Usw.

17 Die Gewichtsfunktionen vom Grad 2 Das Verfahren von oben setzt man sinngemäß fort, allerdings sind die Summen dann nicht 1 sondern 2, man muss also durch 2 dividieren. Jeder Teil besteht aus drei gewöhnlichen Parabeln, insgesamt mit Breite 3, sonst =0. Alle aufsummiert ergeben 1, aber erst ab u=2!! Für ganzzahlige u sind genau zwei 0 mit Wert beidemale 1/2, das sind durch die Halbierungspunkte der Seiten des Stützpolygones.

18 Die Gewichtsfunktion vom Grad 3: besteht aus vier kubischen Parabeln, mit Breite 4, sonst =0. Alle aufsummiert ergeben 1, aber erst ab u=3!!

19 Rekursionsformel von de Boor/Cox/Mansfield Grad 0: liefert also nur die Punkte zurück. Grad 1: liefert also nur den Streckenzug zurück Grad 2: liefert eine Kurve, die die Polygonseiten in deren Halbierungspunkten berührt, sie beginnt im ersten und endet im letzten Grad 3: liefert eine Kurve ohne besonders ins Auge stechende Eigenschaften

20 Standard B-Spline in Blender Add - Curve – Nurbs Im Edit Modus

21 Non Uniforme B-Splines Grad 0: [N 0, 0 (u):=CHI(0, u, 0), N 1, 0 (u):=CHI(0, u, 0), N 2, 0 (u):=CHI(0, u, 1), N 3, 0 (u):=CHI(1, u, 2),...] wobei die ersten beiden 0 sind. Grad 1: N 0, 1 (u) := (u-0)*0 + (0-u)*0 0 N 1, 1 (u) := (u-0)*0 + (1-u)*N 2, 0 (u) N 2, 1 (u) := (u-0)*N 2, 0 (u) + (2-u)*N 3, 0 (u) N 3, 1 (u) := (u-1)*N 3, 0 (u) + (3-u)*N 4, 0 (u) Usw.

22 Beispiel: U = < 0,0,0,1,2,3,4,5,... Zu sehen sind Ursache und Wirkung: die Kurve geht durch den Mehrfachknoten

23 Blender Im Bild der Standard Nurbs offen und geschlossen Im Editiermodus.

24 Nurbs-Flächen in Blender. Die Standard Fläche ist eher sparsam, sie geht nämlich ebenso wie die Kurve keineswegs durch ihre Stützpunkte. Festgelegt ist sie übrigens durch ein 4*4 Gitter aus 16 Punkten.


Herunterladen ppt "Eine kurze Vorstellung, vor allem an Hand von Beispielen weniger von Theorie und ohne Anspruch auf Vollständigkeit und strenge Wissenschaftlichkeit eben."

Ähnliche Präsentationen


Google-Anzeigen