NURBS & CO eine kurze Vorstellung, vor allem an Hand von Beispielen

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Hauptseminar Robot/Computer Vision SS 2001 Active Contours von Andrew Blake und Michael Isard B-Splines Florian Klaschka.
Polynomial Root Isolation
Mit dieser Methode vergleichen Sie sehr einfach zwei oder mehr Präsentationen Herbert Manthei
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Das virtuelle Physiklabor im Computer: Vom Experiment zur Simulation
Die Beziérkurve Adrian Lehmann
Mathematik 9. Jahrgang: Zentrische Streckung
Flächen und Umfang Quadrat Einheitsquadrat Umfang Fläche Dreieck
Berechnung und Vereinfachung von Termen
Digitalgeometrie mit Anwendungen zur Bildanalyse und Computergrafik
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2012.
Markus Tank, Wie arbeitet man mit dem Rich Text Editor?
Graphische Datenverarbeitung
Zeichnen für Anfänger -für das Zeichnen benutzten wir das Programm „Autosketch“ Dafür gehen wir in das Startmenü, dann auf Programm und danach auf Autosketch.
8. Jahrgang: Abbildungen DIE DREHUNG
Algorithmus. Ein Kochrezept, zum Beispiel: Kartoffelbrei.
Windows Explorer.
Kapitel 5 Stetigkeit.
V. Algebra und Geometrie
Grundlegende Analysen & Zwischendarstellungen
Präsentationen: Multimedia Video Audio Objekte (OLE) Steuerelemente Startseite.
Bézier und NURBS Kurven & Flächen Vortrag von Stefan Endler
Excel Kurs Teil II Allgemeines zu Excel-Funktionen, SUMME, MIN, MAX Mehrwertsteuer-Berechnungen, absolute und relative Bezüge F. Bäumer.
So animieren Sie Kreisdiagramme mit der Eingangs-Animation „Rad“
Kubische Bézier Kurven
Mathematische Grundlagen und Rechnen mit algebraischen Zahlen
Die Steigung m In der allgemeinen Funktionsgleichung y=mx+b
Wir müssen also überlegen: Implementierung der Knoten, Implementierung der Kanten, daraus: Implementierung des Graphen insgesamt. Annahme: die Knoteninhalte.
O Digitale Schriften Schööön ! Rasterschriften Umriss-Schriften
Heute: Scherenzange zeichnen
§9 Der affine Raum – Teil 2: Geraden
Wie macht man ein Sudoku? Transformations-Methode:
Kakuro Regeln und Strategien
Variationsformalismus für das freie Teilchen
Neuer Aufbau, neue Elemente Schubladen In unseren neuen Schubladenelementen hat viel Information auf wenig Raum Platz. Sie öffnen eine Schublade durch.
Tetraederzerlegung Ina Ehmann Tetraederzerlegung.
Computergrafik – Inhalt Achtung! Kapitel ist relevant für CG-2!
Ausgleich von Sterbetafeln
1.) Programmaufruf und Einloggen:
Moin. Ich benutze PPT 2002 und möchte drei Bilder nacheinander 1
Temperaturmessung.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Aufgabe Modellieren Sie mittels Bézier-Kurven einen Kreis.
Dynamische Visualisierungen zum Fundamentalsatz der Algebra
Hallo Ich bin neu hier in diesem Forum, habe aber schon viele Hilfreiche Tips gefunden! Allerdings habe ich doch noch eine Frage. Ich möchte nämlich gerne,
Teil 2: Kurven und Flächen
Designerkurven - Bézierkurven im Unterricht
Kessamo · Anleitung · Lernen Lernkiste Kessamo
Abtragen von Strecken P Q O H t 1-t und Daraus folgt:
Inhalt Definition des Integrals Infinitive Flächen (offenes Intervall)
Disziplin 2: Man geht aus von zwei 3er-Stapeln und einem 6er-Stapel
Vorwissen: Begriff der Steigung Geradengleichung Polynomfunktionen Monotonie und Extremwerte In den ersten Beispielen werden dieses Wissen allerdings wiederholt.
PHP: Operatoren und Kontrollstrukturen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
1 Erstellung eines Lebenslaufes
Jedem angehenden Ingenieur wird schon zu Beginn beigebracht, zum Beispiel die Summe von zwei Größen nicht etwa in der Form darzustellen. Diese Form ist.
Constraint Delaunay Triangulations
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Dreieckssätze Pythagoras und Co SFZ 14/15 W.Seyboldt

Vorstellen und Herleiten der Horner Schemas
Konstruktion eines Rechtecks
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Numerik Hauptsache, man hat Zahlen 'raus Was man exakt nicht schafft, das macht man mit Numerik Fallen und Fußangeln in der Numerik Prof. Dr. Dörte Haftendorn,
© WZL/Fraunhofer IPT Splines in der Datenverarbeitung Seminarvortrag von Selman Terzi Aachen, den
Die Numerische Differentiation
Kollisionsuntersuchung konvexer Polyeder
 Präsentation transkript:

NURBS & CO 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

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

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

Beispiel: P0(-4,0), P1(0,0), P2(4,0), P3(6,2), P4(8,0), P5(12,0), P6(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)

In den Randpunkten: Wendepunkte Die Gesamtkrümmung ist minimal Innen: C2-Übergänge In den Randpunkten: Wendepunkte Die Gesamtkrümmung ist minimal Nachteil: Änderung eines Punktes bewirkt Totaländerung. Hier ein Splinerechner: http://www.arndt-bruenner.de/mathe/scripts/kubspline.htm

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

Die Bernsteinpolynome B0,0 = 1, B0,1(u) = 1-u,   B1,1(u) = u B0,2(u) = (1-u)²  B1,2(u) = 2u(1-u)  B2,2(u) = u² B0,3(u) = (1-u)³   B1,3(u) = 3u(1-u)²    B2,3(u) = 3u²(1-u)    B3,3(u) = u³ B0,4(u) = (1-u)4   B1,4(u) = 4u(1-u)3    B2,4(u) = 6u²(1-u)²    B3,4(u) = 4u³(1-u)   B4,4(u) = (1-u)4  

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

Nicht-rationale Bezierkurven Quelle: www.dma.ufg.ac.at

Läuft durch Start- und Endknoten P0 bzw. Pn , Quelle: http://www.at-mix.de/bezier_kurve.htm Läuft durch Start- und Endknoten P0  bzw. Pn , in diesen tangential zu P0 P1 bzw. Pn-1 Pn ; 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

in Tensorproduktdarstellung. Quelle: Bezierflächen in Tensorproduktdarstellung. Quelle: http://www.grg21oe.at/mathe_geom/Kurs/freiformflaeche.htm

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.

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.

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. Cv bc

Die Gewichtsfunktionen vom Grad 0 [N0,0(u):=CHI(0, u, 1), N1,0(u):=CHI(1, u, 2), N2,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

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

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.

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

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

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

Non Uniforme B-Splines Grad 0: [N0,0(u):=CHI(0, u, 0), N1,0(u):=CHI(0, u, 0), N2,0(u):=CHI(0, u, 1), N3,0(u):=CHI(1, u, 2), ...] wobei die ersten beiden ≡ 0 sind. Grad 1: N0,1(u) := (u-0)*0 + (0-u)*0 ≡ 0 N1,1(u) := (u-0)*0 + (1-u)*N2,0(u) N2,1(u) := (u-0)*N2,0(u) + (2-u)*N3,0(u) N3,1(u) := (u-1)*N3,0(u) + (3-u)*N4,0(u) Usw.

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

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

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.