530 likes | 1.03k Vues
Freiformfl ächen mit Microstation. Andreas Asperl, Stefan Leopoldseder Institut f ür Diskrete Mathematik und Geometrie TU Wien zahlreiche Figuren mit freundlicher Genehmigung von Helmut Pottmann und Michael Hofer. Kurzfassung: B ézier-Kurven. b 1 1. b 0 2. b 1 2. b 0 3. b 0 1. b 2 1.
E N D
Freiformflächen mit Microstation Andreas Asperl, Stefan LeopoldsederInstitut für Diskrete Mathematik und GeometrieTU Wienzahlreiche Figuren mit freundlicher Genehmigung von Helmut Pottmann und Michael Hofer
b11 b02 b12 b03 b01 b21 Bézier Kurven:Algorithmus von de Casteljau • Bézier-Kurven sind die einfachsten Freiformkurven und sind in fast allen CAD-Paketen standardmäßig enthalten. b2 b1 de Casteljau-Schema: b0 b1b01 b2b11b02 b3b21b12b03 b3 0 t 1 b0
Mathematische Beschreibungeiner Bézier-Kurve Bézier-Kurve mit n+1 Kontrollpunkten b0,…,bn (Grad n): b0n(t)= wobei … Bernstein Polynome Bézier-Kurve mit 4 Kontrollpunkten b0,…,b3: b03(t)= (1 - t)3b0 + 3(1 - t)2 t b1 + 3(1 - t) t2 b2 + t3 b3 Bézier-Kurve mit 3 Kontrollpunkten b0,b1,b2: b02(t)= (1 - t)2b0 + 2(1 - t) t b1 + t2 b2 Bézier-Kurve mit 2 Kontrollpunkten b0,b1: b01(t)= (1 - t)b0 + t b1
Bézier-Flächen • Bézier-Flächen vom Grad (m,n) werden durch ein Netz von Kontrollpunkten bi,j bestimmt, 0<=i<=m, 0<=j<=n. • Parametrisierung einer Bézier-Fläche:
Bézier-Flächen • Zur Konstruktion eines Flächenpunktes einer (m,n) Bézier-Fläche: • Jede der m+1 ´Zeilen´ (verbinden jeweils n+1 Punkte mit festem Index i) als Kontrollpolygone auffassen und zum selbenTeilverhältnis Kurvenpunkte konstruieren. • Dies liefert m+1 Punkte, welche die Kontrollpunkte einer Bézier-Kurve m-ten Grades sind, die ganz auf der Fläche liegt.
Bézier-Kurven, Grad m=3 Bézier-Kurven, Grad n=2 Bézier-Flächen • Auf einer Bézier-Fläche vom Grad (m,n) liegt eine Schar von Bézier-Kurven vom Grad m, sowie eine Schar von Bézier-Kurven vom Grad n, die ganz auf der Fläche liegen.
Bézier-Flächen • Randkurven eines Bézier-Flächenstücks sind Bézier-Kurven • Eckpunkte des Kontrollnetzes sind Punkte des zugehörigen Bézier-Flächenstücks
Bézier-Regelflächen Da eine Bézier-Kurve ersten Grades eine geradlinige Strecke ist, ist eine Bézier-Fläche vom Grad (1,n) oder (m,1) ein Regelflächenstück. Sind bei einer Bézier-Fläche vom Grad (1,n) die n+1 Spaltenstrecken parallel, so erhält man ein Stück einer Zylinderfläche, das von den Bézier-Kurven zu den Randpolygonen des Netzes begrenzt wird.
HP-Fläche als Bézier-Fläche • Eine Bézierfläche vom Grad (1,1) ist eine HP-Fläche • Eine Bézier-Fläche vom Grad (1,1) ist durch 4 Kontrollpunkte B0,0, B0,1, B1,0, B1,1 gegeben, welche zu einem Kontrollvierseit verbunden werden • Falls dieses Vierseit nicht in einer Ebene liegt, ist die Bézier-Fläche das HP-Flächenstück mit dem Kontrollvierseit als Erzeugendenvierseit B1,0 B0,1 B0,0 B1,1
B1,2 B1,0 B1,1 B2,2 B2,0 B0,2 B0,0 B2,1 B0,1 HP-Fläche als (2,2)-Bézier-Fläche • Eine HP-Fläche entsteht auch durch das Ver-schieben einer Parabel p längs einer Parabel q (p,q mit parallelen Achsenrichtungen, gegengleich geöffnet) • Eine HP-Fläche kann also auch als Bézier-Fläche vom Grad (2,2) modelliert werden. • Analog kann auch ein elliptisches Paraboloid so erzeugt werden. • Achtung: Eine Bézier-fläche vom Grad (2,2) ist im allg. keine Quadrik!
Abwickelbarkeit vonBézier-Regelflächen Eine Erzeugende heisst torsal, wenn längs der gesamten Erzeugenden dieselbe Tangentialebene berührt. Das Regelflächenstück ist abwickelbar (ohne Verzerrungen in die Ebene abbildbar) genau dann, wenn alle Erzeugenden torsal sind. Das Modellieren einer abwickelbaren Regelflächen durch Bézier-Flächen ist sehr komplex. Es gelten nichtlineare Nebenbedingungen an die Position der Kontrollpunkte. Mit Ausnahme von Zylinder- und Kegelflächen sind abwickelbare Freiformflächen in CAD Paketen nicht enthalten. torsale Erzeugende nichttorsale Erzeugende
Grad und Kontrollpunkte von Splines • Splines sind Kurven, welche aus mehreren Kurvenstücken niedrigen Grades zusammen gesetzt sind. • Der Grad der Bezier-Segmente heißt Grad der Splinekurve. • Die Kontrollpunkte des Splines sind oft von den Kontrollpunkten der Beziersegmente verschieden.
Grad und Kontrollpunktevon B-Spline-Kurven • kubische B-Spline-Kurve • mit B-Spline Kontrollpolygon di • mit Kontrollpolygonen der kubischen Béziersegmente d1 d2 d5 d0 d3 d4
B-Spline-Kurven, NURBS B-Spline-Kurven wurden ins Computer Aided Design von J. Ferguson (1964) bei Boeing eingeführt. In CAD-Systemen taucht auch oft der Name NURBS (= Non-Uniform Rational B-Splines) auf. B-Spline-KurveGrad 2 B-Spline-KurveGrad 3 B-Spline-KurveGrad 7(= Bézier)
B-Spline Kurven • B-Spline-Kurven können offen oder geschlossen sein (in CAD Paketen als Option wählbar) • Bei einer geschlossenen B-Spline-Kurve (periodische B-Spline-Kurve) ist das Kontrollpolygon ein geschlossenes Polygon. • Die ersten und letzten Kontrollpunkte stimmen überein.
B-Spline-Flächen • Die Bézier-Methode ist zum Design komplizierterer Formen deshalb kaum geeignet, weil bei höherem Grad die Fläche die From der Eingabefigur nicht gut wiedergibt. Oft ist auch der globale Einfluss der Kontrollpunkte unerwünscht: Änderung eines einzigen Punktes beeinflusst das Flächenstück im gesamten Bereich. • In der Praxis verwendet man daher oft B-Spline-Flächen. Auf dieselbe Art wie man von Bezier-Kurven auf Bezier-Flächen erweitert, gelangt man von B-Spline-Kurven auf B-Spline-Flächen
B-Spline-Flächen • Die mathematische Beschreibung einer B-Spline-Fläche basiert auf einem Vierecksnetz; dieses besitzt im allgemeinen vier Randpolygone und beschreibt demnach ein von vier Randkurven begrenztes Flächenstück • Fallen ein oder zwei Paare gegenüberliegender Randpolygone des Vierecksnetzes zusammen, so entstehen schlauchförmige bzw. torusförmige Flächen
pi ei qi Beispiel Verbindungstorse • Zwei (ebene oder Raum-)Kurven p und q sollen durch eine abwickelbare Fläche (Torse) verbunden werden. • Diese Fläche ist eine Regelfläche und jede Erzeugende ei verbindet jeweils zwei Kurvenpunkte pi und qi, deren Kurventangenten gemeinsam mit der Erzeugenden e in einer Ebene liegen.
pi ei qi Beispiel Verbindungstorse • In Microstation ist eine Verbindungsregelfläche implementiert: Die Kurven p und q werden parametrisiert und als B-Splinekurven p(t) und q(t) approximiert. • Danach werden die Kurvenpunkte p(ti) und q(ti) zu gleichem Parameter ti mit einer Erzeugenden verbunden.
Freiformflächen • Freiformflächen sind wegen ihrer großen Bedeutung im industriellen Design (z.B. Automobilindustrie, Schiffbau) entwickelt worden. Sie finden inzwischen auch grosses Interesse für repräsentative Architekturen • Freiformmodule findet man in allen CAD-Systemen Kunsthalle Graz; Planung: Peter Cook, Colin Fournier Preston Scott Cohen;Torus House; Old Chatham Frank O. Gehry; Experience Music Project
Freiformflächen in der Forschung • Approximation einer gegebenen Fläche durch eine B-Splinefläche. Das nichtlineare Optimierungs-problem (unbekannte Position der Kontroll-punkte) wird iterativ mit einer Newton-Methode gelöst.
Freiformflächen in der Forschung • Approximation einer gegebenen Fläche durch eine B-Spline Regelfläche vom Grad (3,1). Die approximierende Regelfläche ist nicht abwickelbar, kann in einem nächsten Schritt aber durch eine Torse angenähert werden.
Unterteilungskurven(Subdivision curves) • Grundideen der Unterteilung gehen zurück in die 40er Jahreals G. Rahm „corner cutting“ dazu verwendeteglatte Kurven zu beschreiben • Anwendungen im CAD, geometrischen Modellieren und in der Computergraphik
Chaikins Algorithmus • In jedem Iterationsschritt k=1,2,… wird dieselbe Methode (corner cutting) angewendet • für k erhält man so eine quadratische B-Spline Kurve • In jedem Iterationsschritt werden die einzelnen Zwischenstrecken bei 1/4 bzw. 3/4 geteilt. P4 P1 P2 Q1 R1 R3 R0 Q2 Q0 Q3 R2 P0 P3
Chaikins Algorithmus k = 1 k = 2 k = 0 k = 3 k = 4 k = 5
Unterteilungsflächen (Subdivision surfaces) • Analog zum Kurvenfall wird in jedem Iterationsschritt die polygonale Flächendarstellung verfeinert, durch geeignetes Einfügen neuer Punkte • Bsp: Interpolierende Unterteilungsschemata, welche auf einer Triangulierung basieren P.Zorin
Unterteilungsflächen(Subdivision Surfaces) • Können im Gegensatz zu klassischen Freiformflächen (NURBS-Flächen, …) Flächen beliebiger Topologie darstellen • Methode: Ausgehend von einem polygonalen Netz wird dieses nach gegebenen Unterteilungsregeln verfeinert, bis man eine hinreichend glatte Fläche erhält
Unterteilungsflächen • Für Anwendungen noch wichtiger als der Kurvenfall, weil mit Unterteilungsflächen ein einfacher Zugang zur Modellierung komplizierter glatter Formen mit beliebiger Topologie gegeben ist Geri’s game, Pixar
Doo-Sabin-Schema • Einer der ersten Unterteilungsalgorithmen für Flächen wurde von Doo und Sabin 1978 vorgestellt • Der Algorithmus geht von einem Vierecksnetz aus, welches sodann schrittweise verfeinert wird Orginaler Würfel Erste Unterteilung Zweite Unterteilung Dritte Unterteilung Fünfte Unterteilung
Doo-Sabin-Schema • In jeder Vierecksmasche wird der Schwerpunkt S bestimmt (liegt im Schnitt der Verbindungsgeraden gegenüberliegender Seitenmitten) • Die neu eingefügten Punkte sind die Mittelpunkte der Verbindungsstrecken zwischen dem Schwerpunkt und den Ecken der Ausgangsmasche S
Doo-Sabin-Schema • Die eingefügten Punkte werden nach untenstehendem Prinzip verbunden • In einer Ecke mit Valenz k entsteht dabei ein k-Eck als Masche (vergleiche die Dreiecke im angegebenen Beispiel, welche aus Ecken mit Valenz drei entstehen) • Die alten Punkte werden nicht weiter verwendet; approximierender Algorithmus
Doo-Sabin-Schema • Aus Ecken mit Valenz k entstehen k-eckige Maschen • In diesen Maschen werden die neuen Punkte analog zu der bei den Vierecken angewandten Regel konstruiert: Man bestimmt den Schwerpunkt S und sodann die Mittelpunkte der Verbindungsstrecken von S mit den Maschenecken S
Doo-Sabin-Schema • Erzeugt eine Folge von polygonalen Netzen, welche gegen eine bi-quadratische B-spline Fläche konvergieren, bis auf die Umgebung der irregulären Punkte des Ausgangsnetzes • Eine Doo-Sabin-Fläche interpoliert die Schwerpunkte der Maschen des Ausgangsnetzes Orginaler Würfel Erste Unterteilung Zweite Unterteilung Dritte Unterteilung Fünfte Unterteilung
Beispiele zum Doo-Sabin-Schema • Man beachte die Möglichkeit der Modellierung von glatten Flächen beliebiger Topologie • Dies wäre mit B-Spline-Flächen nur durch kompliziertes Zusammenfügen von B-Spline-Patches möglich