Aproximační křivky

Download Report

Transcript Aproximační křivky

Křivky
Plochy
1
Obsah







Rozdělení
Spojitost
Křivost
Interpolační křivky
Aproximační křivky
Plochy
Analýzy ploch
2
Rozdělení křivek

Křivky jsou obyčejně v počítači reprezentovány jako soustava
parametrů nějaké rovnice, která je posléze generativně zobrazována.

Toto vyjádření může být v podstatě trojího druhu:
 Explicitní
y =f(x)

Implicitní
F(x,y) = 0

Parametrické
x = x(t)
y = y(t)
z = z(t)
3
Rozdělení křivek

Explicitní
y= f(x)

Derivace v obecném bodě:
tgα = f‘(x)
4
Rozdělení křivek

Implicitní
F(x,y) = 0

Např. pro výpočet průsečíku s implicitně zadanou křivkou ve
3D prostoru.
5
Rozdělení křivek
Základním prvkem teorie křivek v počítačové grafice
jsou křivky polynomiální
(Pn(t) = a0 + alt + ... + antn).
 Z nich se skládají křivky po částech polynomiální, to jsou
křivky, jejichž segmenty jsou polynomiálními křivkami.
 Nejčastěji používané jsou křivky třetího stupně - kubiky,
které poskytují dostatečně širokou škálu tvarů. Jejich
výpočet bývá nenáročný (díky stupni polynomu), jsou
snadno manipulovatelné a je možné u nich zaručit
spojitost C2, požadovanou někdy při modelování v CAD
systémech.
 Křivky vyššího stupně mohou způsobovat nežádoucí
vlnění a oscilace a jsou náročnější na výpočet.

6
Rozdělení křivek
 Definujeme několik řídicích bodů (řídicí polygon) a z
jejich polohy se určuje průběh křivky.
 Máme dva základní druhy interpretace řídicích bodů:
Interpolační
Aproximační
7
Spojitost

Při navazování oblouků je významným faktorem
spojitost křivek. Říkáme, že výsledná křivka je spojitá,
pokud je spojitá ve všech svých bodech, a tedy zejména
v navazovacích bodech. Křivka je hladká, pokud jsou ve
všech jejích bodech spojité i její první derivace. Pro
vyšší derivace říkáme, že křivka má spojitost druhého,
třetího a obecně n-tého řádu.
 Parametrická – C0,C1,C2.
 Geometrická – poziční, tečná, křivostní
(G0, G1, G2, popř. G3, G4).
8
Spojitost



Dva segmenty jsou spojitě
navázány (neboli mají spojení
třídy C0), pokud je koncový
bod
prvního
segmentu
počátečním bodem segmentu
druhého.
Dva segmenty mají spojení
C1, pokud je tečný vektor v
koncovém bodě segmentu Q1
roven tečnému vektoru Q2 v
jeho počátečním bodě.
Analogicky rovnost vektoru
první a druhé derivace je
požadována pro C2.
9
Spojitost
 Dva segmenty křivky Q(t) jsou G0 spojité, pokud je koncový
bod Q1 počátečním bodem Q2.
 Dva segmenty jsou G1 spojité, pokud tečné vektory
segmentu Q1 a segmentu Q2 jsou lineárně závislé. Tato
spojitost zaručuje totožnost tečen (nikoli tečných vektorů).
Pohybující se bod v uzlu nemůže změnit skokem směr, ale
může skokem změnit rychlost.
 Opticky zaručuje G1 spojitost "skoro stejnou" hladkost jako C1,
z hlediska použití bývá daleko snažší zaručit spojitost G1 nežli
C1.
 Spojitost G2 je definována jako shoda prvních křivostí 1k v
uzlu obou segmentů , kde 1k(t) je tzv. první křivost.
Spojitost C1 implikuje G1 (obráceně však nikoliv).
10
Spojitost G prakticky
 Spojitost je matematické vyjádření hladkosti přechodu (změn
přechodu) mezi dvěma spojenými křivkami nebo plochami.
 G0 spojitost: křivky mají společný koncový bod, plochy mají
společnou hranu. Ve spojení křivek existuje ostrá změna směru
nebo ostrá hrana u spojení ploch.
 Obrázek: dvě úsečky, úsečka + oblouk, oblouk + oblouk.
11
Spojitost G prakticky
 G1 spojitost: spojené křivky nebo plochy jsou ve společném
bodě (hraně) navzájem tečné (tečné vektory jsou rovnoběžné),
avšak mohou mít rozdílnou „rychlost“, tedy velikost změny
směru (křivost).
 Obrázek: úsečka + oblouk, oblouk + oblouk.
12
Spojitost G prakticky
 G2 spojitost: jako G1, ale křivost dvou spojených křivek nebo
ploch je ve společném bodě (hraně) stejná – mění se plynule.
Křivky (plochy) mají ve společném bodě (hraně) stejnou
„rychlost“.
 Obrázek: úsečka + spline.
13
Spojitost G prakticky
 G3 spojitost: stejné jako G2, ale rychlost změny křivosti je u
obou křivek (ploch) stejná.
 G4 spojitost: stejné jako G3, ale rychlost změny rychlosti
změny je u obou křivek stejná. Nejhladší typ napojení.
14
Křivost
 Jedná se o převrácenou hodnotu poloměru křivky nebo plochy
v daném bodě, resp.:
 do každého bodu křivky lze umístit takovou kružnici, která má
stejnou první i druhou derivaci jako křivka v tomto bodě.
Taková kružnice se nazývá oskulační.
 Poloměr oskulační kružnice je poloměrem křivosti křivky v
daném bodě, převrácená hodnota je křivostí křivky v daném
bodě.
15
Křivost
 Graf křivosti poskytuje představu o hladkosti křivky.
 Je možné odhalit křivky, které jako hladké jenom vypadají.
 Graf křivosti je spojitou funkcí křivostí křivky sestrojených pro
všechny body křivky. Ve skutečnosti se výsledek interpoluje do
spojité křivky z určitého počtu kroků (dělení křivky).
16
Interpolační křivky
 Lagrangeova interpolační křivka
 Fergusonovy kubiky
P(t) = P0F1(t) + P1F2(t) + P0'F3(t) + P1'F4(t)
 Catmull-Rom splajny
17
Aproximační křivky
Bézierovy kubiky


Jelikož manipulace s vektory u Fergusonových kubik je poměrně
nenázorná, je Bézierova metoda podstatně populárnější. Vychází totiž
pouze ze zadání řídicího polygonu bodů, který určuje tvar výsledné
křivky
Bézierova kubika je zadána čtyřmi body P0, P1, P2 a P3. Vychází z
prvního bodu P0 a končí v bodě posledním P3. Vyklenutí je řízeno body
P2 a P3.
18
Aproximační křivky
Obecné Beziérovy křivky


Zobecněním Bézierových kubik jsou obecné Bézierovy křivky. Bézierova
křivka n-tého řádu vznikne z n+1 bodů řídicího polygonu P0, P1, ... ,
Pn. Jedná se o kubickou parabolu procházející body P0, P3. Úsečky
P0P1, P3P2 určují tečny v krajních bodech a jejich směrnice jsou
číselně rovny třetině délky těchto úseček. Křivky lze s výhodou použít
všude tam, kde je potřeba snadného hladkého napojování. V bodě
spojení se zajistí společná tečna, tím se docílí spojitosti křivky i její
derivace.
Bézierovy křivky jsou pro svou
snadnou manipulovatelnost často
používány v CAD systémech (např.
AutoCAD). Jejich jednoduchá tvorba
zaručuje jejich snadnou
manipulovatelnost (pouhou změnou
polohy bodu se mění tvar výsledné
křivky).
19
Aproximační křivky
Racionální Beziérovy křivky

Křivku lze s výhodou použít v případě, že je třeba měnit tvar křivky bez změny
polohy řídících bodů s dodržením tečnosti v krajních bodech . Každému řídícímu
bodu se přiřadí nezáporné reálné číslo mi, které řídí tvar křivky. Nejvýznamnějším
přínosem racionálních Bézierových křivek je schopnost změnit tvar křivky bez
změny polohy bodů řídicího polygonu. Velmi dobře se modelují křivky s prudkou
změnou tvaru.
20
Aproximační křivky
Coonsovy kubiky



Coonsova kubika se zadává stejně jako
kubika Bézierova čtyřmi řídicími body P0, Pl,
P2, a P3. Krajní body křivky tedy nevychází z
řídicích bodů, ale z antitěžiště trojúhelníků
P0PlP2 a P1P2P3.
Největší výhoda Coonsových kubik se stane
zřejmou teprve v okamžiku, kdy je
použijeme pro skládání aproximačních
křivek. Uvažujme řídicí polygon složený z
bodů P0, P1, ..., Pn. Budeme-li výslednou
křivku skládat z Coonsových oblouků vždy
tak, že pro jeden oblouk použijeme vrcholy
P0P1P2P3, pro další P1P2P3P4 atd., získáme
křivku, která se nazývá B-splajn.
Vlastností B-splajnu je, že má ve všech
vnitřních bodech spojitost druhého řádu. Z
hlediska konstrukce je pro tímto způsobem
vytvářenou křivku výhodné i to, že změnou
jednoho bodu dojde pouze k lokální změně
čtyř oblouků, jejichž konstrukce se bod
účastní.
21
Aproximační křivky
Splajn křivky
Mějme dáno n + 1 opěrných bodů P0, P1, ..., Pn. Splajn křivkou m-tého
řádu rozumíme funkci f(z), která má spojité derivace f0, f'(z), ..., f(m-1)
a na každém intervalu <xi, xi+1> je f(x) polynomem stupně m. Splajn
křivka se tedy skládá z polynomů a zaručuje spojitost derivací v
navazovacích bodech.
Uniformní neracionální kubický B-splajn

Porovnáme-li vztahy pro tečné vektory a vektory druhých derivací dvou
po sobě následujících segmentů Qi a Qi+1, zjistíme, že segment Qi+1
vychází z posledního bodu segmentu Qi a že jsou identické první a
druhé derivace v tomto bodě. Křivka je tedy v uzlech C2 spojitá.
22
Aproximační křivky
NURBS


Neuniformní racionální B-splajn křivky (NURBS - non uniform rational Bspline) jsou dvojím zobecněním B-splajn křivek. Termín neuniformní je
odvozen od vzdálenosti uzlů ve smyslu parametru t, která nemusí být u
těchto křivek konstantní.
Křivka NURBS je určena n + 1 body řídicího polynomu, uzlovým
vektorem U délky m + 1 a stupněm křivky p. Uzlový vektor pro křivku
NURBS procházející prvním a posledním bodem řídicího polynomu.
23
Aproximační křivky

Křivky NURBS mají tyto vlastnosti:




Křivka prochází prvním a posledním bodem řídícího polygonu
Změna polohy nebo váhy jednoho bodu má vliv jen na část křivky
Křivka umožňuje vyjádřit kuželosečky
Pro hodnoty wi = 1 je NURBS Bézierovou křivkou.
24
Plochy
Interpolační plochy

Nejčastěji se používají plochy
určené vektorovým polynomem.
Aproximační plochy

Bézierovy, Fergusonovy a
Coonsovy plochy patří mezi tzv.
technické plochy. Uživatel
modeluje plochu pomocí řídících
bodů, okrajových křivek,
tečných vektorů bez hlubokých
znalostí matematiky a
geometrie.
25
Plochy
Beziérovy plochy



Bézierova bikubická plocha je dvourozměrnou prezentací Bézierovi kubiky. Řídící
body Pij tvoří tzv. řídící polygon, kterým je plocha tvarována.
Hrany řídícího polygonu jsou tečny plochy ve směru souřadných ploch, okraje
plochy jsou tvořeny Bézierovými kubikami.
Jednotlivé plochy se jednoduše spojují a je možné zaručit hladké napojování,
výsledná plocha je spojitá i se svými prvními parciálními derivacemi. Okraj, který
je napojován, je společný oběma plochám, což se zajistí společným okrajem
řídícího polygonu.
26
Plochy
Fergusonova plocha

Plocha je dvojrozměrným
zobecněním Fergusonových křivek.
27
Plochy
Coonsova plocha řízená polygonem

Plocha je zobecněním Coonsovy kubiky Při
spojování ploch lze u výsledné plochy
zajistit hladkost druhého stupně, plocha
má spojité i druhé derivace, je hladší než
plocha vytvořená z Bézierových ploch.
Díky této vlastnosti jsou Coonsovy plochy
v technické praxi často používány.
Coonsova plocha definovaná okrajem

Plochu určují čtyři křivky, které tvoří její
uzavřenou hranici.
28
Plochy
 NURBS plochy





zobecnění B-spline ploch
dnes průmyslový standard v geometrickém modelování
poměrně složitý matematický popis
jednotná (univerzální) reprezentace širokého spektra ploch
- jednotné algoritmy, výpočetní procedury pro řešení např.
množinových operací, průsečíků se světelnými paprsky
apod.
invariantní ke všem transformací a projekcím
29
NURBS plochy
 Definice pomocí:




Řídicí sítě (kontrolní body)
Stupňů v daných proměnných
Vektorů parametrizace
Váhou vrcholů
30
Class A plochy





Původ označení v návrhu lodí, nyní nejčastější použití v
automobilovém průmyslu.
Rozšiřují se i do oblasti spotřebního zboží (např. mobilní
telefony, zubní kartáčky, atd.).
Vnitřní nebo vnější plochy, které při běžném používání výrobku
vidíme a u kterých je důležitý estetický dojem a vysoká kvalita
povrchu.
Matematicky se jedná o plochy s G2 spojitostí (s křivostním
napojením), tedy se stejným poloměrem křivosti podél
společné hranice, může být použito i G3.
Promítnuté paprsky světla nejsou podél společné hranice ploch
nijakým způsobem deformovány (přerušeny), takže vyvolávají
dojem jednolitosti plochy.
31
Class A plochy

Víko motorového prostoru a návrh sportovního automobilu jako
ukázky Class A ploch.
32
Class A plochy
 Class B plochy – nejsou vždy viditelné – druhá
strana Class A ploch s uvažováním tloušťky
dané součásti.
 Mohlo by se vyskytnout i označení Class C –
plochy, které jsou vždy zakryté a nejsou běžně
viditelné.
33
Class A plochy
 Postup při návrhu automobilu – koncepty:



Tvorba designu – různé 2D a 3D koncepty, každý z nich se
prověřuje z hlediska realizovatelnosti.
Výsledkem je uspokojivý koncept návrhu.
Využívá se tužko nebo perokresba i výpočetní technika
(CAS; tablety, např. software Autodesk Alias Studio).
34
Class A plochy
 Postup při návrhu automobilu – model:



Vytvoření fyzického nefunkčního modelu vozu podle
konceptu.
Hliněný model – de facto se jedná o sochu, digitalizace 3D
scannováním.
Digitální model – převod 2D skic do 3D podoby, výstup
např. pro Rapid Prototyping.
35
Class A plochy
 Postup při návrhu automobilu – tvorba
přesného konstrukčního řešení na základě dat z
digitálního (digitalizovaného) modelu:
 Class A plochy.
 Vytvořená data se dále využívají pro další účely,
např. FEM, CAM, atd.
36
Analýzy ploch
 Zebra analýza
 Analýza křivosti
 Analýzy povrchů (analýza křivosti)
 Gaussova analýza
 Střední křivost
 Maximální křivost
 Analýza sklonu (zešikmení)
37
Analýzy ploch
 Zebra analýza
 Analýza spojitosti plochy promítáním rovnoběžných
pruhů na povrch tělesa.
 Pro snadnější zobrazení je možné nastavit různou
hustotu i tloušťku pruhů.
38
Analýzy ploch
 Zebra analýza
 G0 spojitost – na společné hranici ploch mají pruhy
místa, ve kterých se výrazně mění jejích směr a jsou
vzájemně přesazeny.
39
Analýzy ploch
 Zebra analýza
 G1 spojitost – na společné hranici ploch pruhy nejsou
vzájemně přesazeny, ale výrazně se mění jejich
směr.
40
Analýzy ploch
 Zebra analýza
 G2 spojitost – pruhy na plochách nejsou přesazeny a
jejich směr se mění plynule.
41
Analýzy ploch
 Analýza křivosti
 Vizuální analýza křivosti a spojitosti povrchů, ploch a
hran.
42
Analýzy ploch
 Analýza povrchu (analýza křivosti)
 Pomocí falešných barev lze vyhodnotit
křivost ploch v různých místech a odhalit tak
nechtěné anomálie křivosti.
 Gaussova analýza – jedná se o součin
křivostí v „u“ a „v“ směru. Lze použít při
rozhodování, zda bude možné plochu
rozvinout.
43
Analýzy ploch
 Analýza povrchu (analýza křivosti)
 Gaussova analýza – pozitivní křivost,
negativní křivost, nulová křivost (alespoň v
jednom směru je povrch rovinný, např.
válec).
44
Analýzy ploch
 Analýza povrchu (analýza křivosti)
 Střední křivost – barevné zobrazení střední
křivosti plochy (poloviny součtu hlavních
křivostí).
 Hlavní křivosti – minimální a maximální
hodnoty normálové křivosti v daném bodě.
 Použití např. pro šablonované prvky.
45
Analýzy ploch
 Analýza povrchu (analýza křivosti)
 Maximální křivost – barevné zobrazení větší
z hodnot „u“ nebo „v“ křivosti
46
Analýzy ploch
 Analýza zešikmení ploch
 Grafické znázornění úhlu odklonu plochy od
definované roviny, využití např. při modelování
odlitků a forem.
47
Literatura


http://cs.wikibooks.org/wiki/Geometrie/Úvod_do_křivek
http://www.designtech.cz/c/plm/jak-se-rodi-automobil.htm
48