Interpolacija s parametričnimi polinomskimikrivuljami 1

Similar documents
Intervalske Bézierove krivulje in ploskve

Reševanje problemov in algoritmi

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POLONA ŠENKINC REŠEVANJE LINEARNIH DIFERENCIALNIH ENAČB DRUGEGA REDA S POMOČJO POTENČNIH VRST DIPLOMSKO DELO

Problem umetnostne galerije

TOPLJENEC ASOCIIRA LE V VODNI FAZI

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo DIPLOMSKO DELO.

Linearna algebra. Bojan Orel. Univerza v Ljubljani

AKSIOMATSKA KONSTRUKCIJA NARAVNIH

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SAŠO ZUPANEC MAX-PLUS ALGEBRA DIPLOMSKO DELO

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo MAGISTRSKA NALOGA. Tina Lešnik

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta

POLDIREKTNI PRODUKT GRUP

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo DIPLOMSKO DELO. Gregor Ambrož

JERNEJ TONEJC. Fakulteta za matematiko in fiziko

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Verjetnostni algoritmi za testiranje praštevilskosti

Eulerjevi in Hamiltonovi grafi

Linearna regresija. Poglavje 4

NIKJER-NIČELNI PRETOKI

ENAČBA STANJA VODE IN VODNE PARE

Călugăreanu-White-Fullerjev teorem in topologija DNA

Ogrodja prostorskih parametričnih krivulj

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Kvadratne forme nad končnimi obsegi

Linearne enačbe. Matrična algebra. Linearne enačbe. Linearne enačbe. Linearne enačbe. Linearne enačbe

Iskanje najcenejše poti v grafih preko polkolobarjev

Kode za popravljanje napak

UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Predmet: Analiza 3 Course title: Analysis 3. Študijska smer Study field ECTS

SLIKE CANTORJEVE PAHLJAµCE

OPTIMIZACIJSKE METODE skripta v pripravi

56 1 Upogib z osno silo

Cveto Trampuž PRIMERJAVA ANALIZE VEČRAZSEŽNIH TABEL Z RAZLIČNIMI MODELI REGRESIJSKE ANALIZE DIHOTOMNIH SPREMENLJIVK

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA FAKULTETA ZA MATEMATIKO IN FIZIKO DIPLOMSKO DELO MIHAELA REMIC

Iterativne metode podprostorov 2010/2011 Domače naloge

Matej Mislej HOMOMORFIZMI RAVNINSKIH GRAFOV Z VELIKIM NOTRANJIM OBSEGOM

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Simetrije cirkulantnih grafov

FRAKTALNA DIMENZIJA. Fakulteta za matematiko in fiziko Univerza v Ljubljani

Neli Blagus. Iterativni funkcijski sistemi in konstrukcija fraktalov

Jernej Azarija. Štetje vpetih dreves v grafih

SVM = Support Vector Machine = Metoda podpornih vektorjev

Hadamardove matrike in misija Mariner 9

DELOVANJA GRUP IN BLOKI NEPRIMITIVNOSTI

Hipohamiltonovi grafi

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA DIPLOMSKO DELO DIJANA MILINKOVIĆ

Attempt to prepare seasonal weather outlook for Slovenia

DOMINACIJSKO TEVILO GRAFA

Osnove numerične matematike

UČNI NAČRT PREDMETA / COURSE SYLLABUS Predmet: Analiza 1 Course title: Analysis 1. Študijska smer Study field. Samost. delo Individ.

SIMETRIČNI BICIRKULANTI

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA DIPLOMSKO DELO MAJA OSTERMAN

Verifikacija napovedi padavin

Hiperbolične funkcije DIPLOMSKO DELO

OPTIMIZACIJA Z ROJEM DELCEV

SIMETRIČNE KOMPONENTE

ZVEZDASTI MNOGOKOTNIKI

Naloge iz LA T EXa : 3. del

OFF-LINE NALOGA NAJKRAJŠI SKUPNI NADNIZ

IZRAČUN POLOŽAJA GPS-SATELITA IZ PODATKOV PRECIZNIH EFEMERID GPS-ORBIT COMPUTATION FROM PRECISE EPHEMERIS DATA

ENERGY AND MASS SPECTROSCOPY OF IONS AND NEUTRALS IN COLD PLASMA

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Kromatično število in kromatični indeks grafa

Dejan Petelin. Sprotno učenje modelov na podlagi Gaussovih procesov

Izbrana poglavja iz algebrai ne teorije grafov. Zbornik seminarskih nalog iz algebrai ne teorije grafov

Izvedbe hitrega urejanja za CPE in GPE

Simulacija dinamičnih sistemov s pomočjo osnovnih funkcij orodij MATLAB in Simulink

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK ZA MATEMATIKO

Solutions. Name and surname: Instructions

Uporaba preglednic za obdelavo podatkov

Izbrana poglavja iz velikih omreºij 1. Zbornik seminarskih nalog iz velikih omreºij

Ana Mlinar Fulereni. Delo diplomskega seminarja. Mentor: izred. prof. dr. Riste Škrekovski

Topološka obdelava slik

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA JOŠT MLINARIČ KJE JE BILA KAMERA DIPLOMSKO DELO

Particija grafa, odkrivanje skupnosti in maksimalen prerez

Študijska smer Study field. Samost. delo Individ. work Klinične vaje work. Vaje / Tutorial: Slovensko/Slovene

NEODLOČLJIVI PROBLEMI V TEORIJI IZRAČUNLJIVOSTI

UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Predmet: Optimizacija 1 Course title: Optimization 1. Študijska smer Study field

Makroekonomija 1: 4. vaje. Igor Feketija

Študijska smer Study field. Klinične vaje work. Nosilec predmeta / prof. dr. Peter Legiša, prof. dr. Bojan Magajna, prof. dr.

Univerza na Primorskem FAMNIT, MFI STATISTIKA 2 Seminarska naloga

Zgoščevanje podatkov

Klemen Kregar, Mitja Lakner, Dušan Kogoj KEY WORDS

UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Parcialne diferencialne enačbe Partial differential equations. Študijska smer Study field

Aritmetične operacije v logaritemskem številskem sistemu

3D transformacije in gledanje

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Naknadna stabilizacija videoposnetkov

Baroklina nestabilnost

OA07 ANNEX 4: SCOPE OF ACCREDITATION IN CALIBRATION

Primerjava metod aproksimativnega sklepanja pri izolaciji napak - simulacijska študija

Katastrofalno zaporedje okvar v medsebojno odvisnih omrežjih

modeli regresijske analize nominalnih spremenljivk

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA VERONIKA MIHELAK PRAVILNI IKOZAEDER DIPLOMSKO DELO

UČNI NAČRT PREDMETA / COURSE SYLLABUS Predmet: Numerične metode 1 Course title: Numerical methods 1. Študijska smer Study field

DIOFANTSKE ČETVERICE

Univerza v Ljubljani Fakulteta za matematiko in fiziko. Oddelek za fiziko. Seminar - 3. letnik, I. stopnja. Kvantni računalniki. Avtor: Tomaž Čegovnik

UNIVERZA V NOVI GORICI POSLOVNO-TEHNIŠKA FAKULTETA REŠEVANJE OPTIMIZACIJSKIH PROBLEMOV S PROGRAMSKIM PAKETOM SCICOSLAB DIPLOMSKO DELO.

Grafi, igre in še kaj

Uvod v odkrivanje znanj iz podatkov (zapiski predavatelja, samo za interno uporabo)

Analiza oblike in površine stabilograma

Implementacija modula r.cuda.los v odprtokodnem paketu GRASS GIS z vzporednim računanjem na grafičnih karticah NVIDIA CUDA

APLIKACIJA ZA DELO Z GRAFI

UČNI NAČRT PREDMETA / COURSE SYLLABUS Numerical linear algebra. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work

matematika + biologija = sistemska biologija? Prof. Dr. Kristina Gruden Prof. Dr. Aleš Belič Doc. DDr. Jure Ačimovič

Transcription:

Interpolacija s parametričnimi polinomskimikrivuljami Emil Žagar 22. november 200 Skriptajevnastajanju,zatojegotovopolnanapak. Hvaleˇzenbomzavse pripombe. Iskanje napak je obenem del učnega procesa pri tem predmetu.

Kazalo Uvod 3. Točkeinvektorji.... 3.2 Afinepreslikave.... 4 2 Krivulje 6 2. Parametričnekrivulje..... 6 3 Bézierovekrivulje 9 3. decasteljauovalgoritem... 9 3.2 RazcvetnaoblikaBézierovekrivulje... 0 3.3 BernsteinovaoblikaBézierovekrivulje...... 2 3.4 Subdivizija... 6 3.5 Višanjeinniˇzanjestopnje... 7 4 Zlepki Bézierovih krivulj 9 4. Definicija,lokalnostinglobalnost..... 9 4.2 Pogojigladkosti.... 2 4.3 KvadratičniBézieroviB-zlepki... 23 4.4 InterpolacijazBézierovimizlepki..... 24 4.5 C zveznikubičnizlepki... 24 4.6 C 2 zveznikubičnizlepki... 27 4.7 Izbiradelilnihtočk...... 30 5 Geometrijsko zvezne krivulje 35 5. Definicijageometrijskezveznosti..... 36 5.2 GzveznostravninskihBézierovihkrivulj.... 40 5.3 ν-zlepki...... 4 5.4 KubičniHermiteoviG zveznizlepki... 43 5.4. Minimizacijaproˇznostneenergije..... 44

KAZALO KAZALO 6 Geometrijskainterpolacija 48 6. Osnovnipojmigeometrijskeinterpolacije.... 48 6.2 Geometrijskainterpolacijasparabolami..... 50 6.2. Hermiteovprimer...... 50 6.2.2 Lagrangeovprimer...... 52 6.3 KubičnageometrijskainterpolacijavE 3..... 54 6.4 Asimptotičnaanaliza..... 59 6.4. Asimptotičniredaproksimacije...... 59 7 Krivulje s pitagorejskim hodografom 67 7. RavninskePHkrivulje.... 67 7.2 KontrolnetočkeBézierovihPHkrivulj...... 69 7.3 KompleksnareprezentacijaPHkrivulj...... 72 8 DodatekA 75 8. Rezultante.... 75 2

Poglavje Uvod. Točke in vektorji Večina naše obravnave bo vezana na metode, ki so nodvisne od koordinatnega sistema. Zanimale nas bodo torej predvsem lastnosti objektov in ne njihova povezava z izbranim koordinatnim sistemom(denimo dejstvo, da točka leˇzi na sredini povezave med dvema drugima točkama, da je točka vrh kota,...). Slednji seveda postane nepogrešljiv, ko ˇzelimo metodo implementirati, saj se moramo tedaj odločiti za konkretno izbiro koordinat. Koncept, ki temelji na neodvisnosti od koordinatnega sistema, zahteva natančno ločevanje med točkami, elementi d-dimenzionalnega evklidskegaprostora E d,invektorji,elementid-dimenzionalnegavektorskegaprostora R d.ponavaditočkeinvektorjekarakteriziramozdkoordinatami, vendar moramo(ne samo formalno) poudariti bistveno razliko med njimi. Najbostaa,b E d točki,potemobstajaenoličnodoločenvektorv,ki kaˇzeodadob(vbesedilubomotakotočke,kotvektorjeoznačevalizmalimi odebeljenimi črkami; če bo le mogoče, se bomo drˇzali pravila, da točke označujemo s črkami z začetka abecede). Določimo ga z odštevanjem komponent točk, torej v:=b a, a,b E d, v R d. Obratnozavsakvektorvobstajaneskončnoparovtočkainb,zakaterejev =b a. Odtodhitroopazimo,dalahkoelementeevklidskega prostora E d leodštevamo(tvorimovektorje),nemoremopajihseštevati. Medtem ko vektorje lahko tako seštevamo, kot odštevamo. Kljub temu pa lahko koncept seštevanja uvedemo tudi nad točkami. 3

.2 Afine preslikave Uvod DEFINICIJA.. Najbodoa j E d,j =0,,...,n,in α j R,j =0,,...,n, takarealnaštevila,daje n j=0 α j =.Potemvsoti b = n α j a j j=0 pravimobaricentričnakombinacijatočkb j,j=0,,...,n. Opazimo, da je tako seštevanje dobro definirano, saj je b =a 0 + n ( ) α j aj a 0, j= kar je vsota točke in vektorja. Morda najbolj znan primer baricentrične kombinacije točk je teˇzišče g = n j=0 n + b j. Poseben primer baricentrične kombinacije točk je konveksna kombinacija točk,kjerzakoeficiente α j zahtevamodasonenegativni. Ogledali smo si torej način, kako iz točk s seštevanjem tvorimo nove točke. Poglejmo sedaj, kako iz mnoˇzice točk tvorimo vektor. Zapišimo kar v = n β j b j, b j E d, β j R, j =0,,...,n. j=0 Čehočemo,dabovvektor,moraveljati n j=0 β j =0.Bralcuprepuščamo, da sam preveri zadnjo ugotovitev. Morda je na prvi pogled prepletanje koncepta točke in vektorja nenavadno. Pri izpeljavi mnogih algoritmov pa bo neprecenljive praktične in toretične vrednosti. Samo en primer. Denimo, da ˇzelimo pri izpeljavi formul hitro preveriti kakšen tip objekta smo dobili. Če se koeficienti pri točkah neseštejejov0ali,smogotovonaredilinapako,sajdobljeniobjektniniti vektor, niti točka. Več o formalnem preverjanju tipov v grafičnih okoljih najdetev[3]..2 Afinepreslikave Večina transformacij, ki jih v CAGD uporabljamo za premike ali skaliranje objektov, so afine preslikave. Kot smo videli, je osnovna operacija na točkah baricentrična kombinacija. Zato bomo definicijo afine preslikave naslonili nanjo. 4

.2 Afine preslikave Uvod DEFINICIJA.2. Preslikava Φ:E d E d jeafina,čeohranjabaricentrične kombinacije. Natančneje, naj bo a = n α j a j, j=0 n α j =, j=0 potem je Φa = n α j Φa j. j=0 Tako na primer afina preslikava preslika središče daljice med dvema točkama v središče daljice med slikama točk, ali pa teˇzišče mnoˇzice točk v teˇzišče preslikanih točk. Če izberemo koordinatni sistem(s tem izberemo izhodišče 0), potem lahko točko a enačimo z d-dimenzionalnim vektorjem, ki ima enake koordinatekota. Tedajsevsakaafinapreslikava Φizraˇzakot Φa =Aa +v, kjerjeamatrikadimenzijed dinvvektoriz R d. Najbolj znani primeri afinih preslikav so Identiteta:v =0inA=I,identiteta. Translacija:vpoljubeninA=I. Skaliranje: v = 0 in A diagonalna matrika. Rotacija:v =0inAortogonalnamatrika. Strig:v =0,Apatrikotnamatrikazidentitetamikotdiagonalnimi bloki. 5

Poglavje 2 Krivulje Osnovni objekti v CAGD so seveda točke in vektorji. Toda ti zaˇzivijo šele, ko jih konstruiramo s pomočjo naprednejših objektov. Najpreprostejši tak objektsokrivuljevvečdimenzionalnemprostoru E d.tosomnoˇzicetočk, ki jih navadno dobimo kot sliko(gladke) preslikave nekega zaprtega intervala. Taki preslikava pogosto rečemo parametrizacija krivulje. 2. Parametričnekrivulje Formalno parametrično krivuljo definiramo takole. DEFINICIJA 2.. Preslikavi p = (p,p 2,...,p d ) T :I E d, I R, rečemo parametrizacija krivulje p(i), ali na kratko kar parametrizacija krivulje p. Krivuljajegladka,čejepreslikavapgladkanaI. Posebej nas bodo zanimale take krivulje, katerih komponente parametrizacijesopolinomistopnje n.nespregljete,dajekrivuljaleslikapreslikave p, torej mnoˇzica p(i). Toda v praksi nas pravzaprav zanimajo samo parametrizacije krivulje p, saj lahko samo preko teh zares pridemo do krivulj, ki jih ˇzelimo uporabljati(risati, voditi po njih robote, slediti s kamerami,...).velikokratnaszanimajosamoregularnekrivulje.tosotake,za katerejeodvodp (t) = (p (t),p 2 (t),...,p d (t))t =0 R d zavsakt I. Pritemsmosp (t)označilivektorodvodanakrivuljoprit.domenoparametrizacije ˇzelimo pogosto spremeniti. Pravimo, da krivuljo(regularno) reparametriziramo. DEFINICIJA2..2 Reparametrizacijakrivuljepjepreslikavaq =p ϕ,kjerje ϕ:j I,J R, ϕ (u) >0zau Jin ϕ(j) =I. 6

2. Parametrične krivulje Krivulje Pri nalogah geometrijskega modeliranja nemalokrat ˇzelimo, da se pomembnejše karakteristike krivulje ne spremene z reparametrizacijo. Vsekakor najbitoveljalozakrivuljosamo.očitnosekrivulja(kotmnoˇzicatočkv sliki izbrane parametrizacije) z reparametrizacijo ne spremeni. Ža za njen odvodvizbranitočkitonivečres. Najbonamreča = p(t). Tedajje tangentanakrivuljopvtočkiaenakap (t),medtemkojetangentana reparametriziranokrivuljoq = p ϕvtočkia = p(t) =q(ϕ(u))enaka p (t) ϕ(u)(pritemsmosčrticooznačiliodvodpoprvotnemparametrut, s piko pa odvod po novem parametru u). Tangenta očitno ni invariantna glede na reparametrizacijo, je pa to res za enotsko tangento. Za krivulje obstajajo tudi druge invariante glede na reparametrizacijo. Toda njihovo število je odvisno od dimezije prostora, kjer se krivulja nahaja. Za ravninsko krivuljo je tako poleg enotske tangente invarianta tudi ukrivljenost krivulje. Za njeno definicijo potrebujemo pojem planarnega vektorskega produkta. DEFINICIJA2..3 Zavektorjau=(u,u 2 ) T,v = (v,v 2 ) T R 2 jeplanarni vektorskiprodukt definiranspredpisomu v =u v 2 u 2 v. Planarni vektorski produkt je v resnici kar determinanta det[u, v]. Predznačeno ukrivljenost ravninske parametrične krivulje sedaj definiramo takole. DEFINICIJA 2..4 Naj bo p regularna ravninska krivulja. Potem je predznačena ukrivljenost(rečemo ji tudi predznačena fleksijska ukrivljenost) v točki p(t) enaka kjerje Evklidskanorma. κ(t) = p (t) p (t) p (t) 3, Za krivulje v d-dimenzionalnem prostoru je d invariant glede na reparametrizacije. Te invariante krivuljo do togega premika enolično določajo. Omenimo samo še torzijsko ukrivljenost prostorske krivulje. DEFINICIJA 2..5 Torzijska ukrivljenost regularne prostorske krivulje p v točki p(t) je τ(t) = det[p (t),p (t),p (t)] p (t) p (t) 2 pri čemer je klasični vektorski produkt. Poleg invariant glede na reparametrizacijo, je pomemben tudi tip parametrične krivulje. Ker je v CAGD končni cilj ponavadi implementacija 7

2. Parametrične krivulje Krivulje algoritmov in metod v praksi, so zelo zaˇzeljene predvsem polinomske ali racionalne parametrične krivulje. V nadaljevanju se bomo ukvarjali predvsemspolinomskimi,torejtakimi,katerihkomponentep i sopolinomi stopnje n.najpaomenimo,dasevzadnjemčasuvsevečuporabljajo tudi racionalne, saj omogočajo konstrukcijo bolj natančnejših algoritmov za interpolacijo in aproksimacijo. 8

Poglavje 3 Bézierove krivulje Za uvod v obseˇzno teorijo polinomskih parametričnih krivulj si bomo ogledali Bézierove krivulje. To je poseben razred krivulj, ki sta jih neodvisnouvedlap.bézier inp.decasteljau 2 Vraziskovalnisferijebilonajprej opaˇzeno delo Béziera, čeprav se je kasneje izkazalo, da je de Casteljau odkril omenjeni tip krivulj neodvisno. Osnovna ideja obeh raziskovalcev je bila konstruirati krivulje, s katerimi bi oblikovalci hitro in učinkovito modelirali objekte. Za motivacijo si bomo ogledali de Casteljauov algoritem, ki velja za osnovni algoritem pri konstrukciji Bézierovih krivulj(algoritem je neodvisno odkril tudi raziskovalce v Bézierovi skupini). 3. de Casteljauov algoritem Splošni algoritem za izračun vrednosti točke na Bézierovi krivulji bomo najprej predstavili s preprostim primerom. Denimo, da so podane tri točke b j E 2,j=0,,2.Izberimoparametert Rinkonstruirajmo b 0(t) = ( t)b 0 +tb, b (t) = ( t)b +tb 2, b 2 0(t) = ( t)b 0(t) +tb (t). Opazimo, da v vsaki enačbi nastopa baricentrična kombinacija točk, torej je končni rezultat točka v ravnini. Ko vstavimo prvi dve enakosti v tretjo, dobimo b 2 0(t) = ( t) 2 b 0 +2t( t)b +t 2 b 2, (3.) PierreÉtienneBézier,90-999,francoskirazvojniinˇzenirpriRenaultu. 2 PauldeFagetdeCasteljau,930-,francoskirazvojniinˇzenirvCitroënu. 9

3.2 Razcvetna oblika Bézierove krivulje Bézierove krivulje torejkvadratnoparametričnob 2 :=b 2 0 krivuljo.konstrukcijajeafinoinvariantna, saj je končna krivulja dobljena kot ponavljanje linearne interpolacije,kijeafinoinvarinatna.iz(3.)meddrugimsleditudito,dajekrivulja ravninska. Sedaj smo pripravljeni na splošni de Casteljauov algoritem. Algoritem3..Podatki:b 0,b,...,b n E d int R. Definirajmo:b 0 j(t) =b j,j=0,,...,n. Ponavljajmo: b k j(t) = ( t)b k j +tb k j+ (t), k =,2,...,n, j =0,,...,n k. Izhod:b n (t):=b n 0(t)jetočkapriparametrutnaBézierovikrivuljib n. Pri računanju ponavadi točke iz algoritma 3.. zloˇzimo v trikotno tabelo b 0 0 b 0 b 0 b 0 2 b..... b 0 n b n... b n 0 b n b n 0 Čevsevmesnetočketudizarespotrebujemo,potempotrebujemo O(n 2 ) prostora, da jih shranimo. Pogosto pa potrebujemo le končne vrednosti, zatolahkovsaknovstopectočkprepišemokarvprvega,zakarpotrebujemo le O(n) prostora. Pomembno vlogo v praksi ima poligon P, ki ga zaporedoma tvorijo točkeb j.pravimomukontrolnipoligon,točkamb j pakontrolnetočke. 3.2 Razcvetna oblika Bézierove krivulje Na Bézierovo krivuljo lahko gledano tudi drugače. Oglejmo si naslednjo posplošitev de Casteljauovega algoritma 3... V algoritmu moramo izračunati n stolpcev, vrednost krivulje pri parametru t pa preberemo na koncu zadnjega stolpca. Namesto, da bi na k-tem koraku uporabili parameter t, 0

3.2 Razcvetna oblika Bézierove krivulje Bézierove krivulje uporabimonovparametert k. Vkubičnemprimerutakodobimonaslednjo tabelo vrednosti b 0 b b 0[t ] b 2 b [t ] b 2 0[t,t 2 ] b 3 b 2[t ] b 2 [t,t 2 ] b 3 0[t,t 2,t 3 ]. Končnatočkab 3 0[t,t 2,t 3 ]jesedajfunkcijatrehneodvisnihspremenljivk, torejnanjolahkogledamokotnafunkcijoiz R 3 v E 3. Sevedalahkoisti razmislekposplošimonapoljubnostopnjon.končnifunkcijib[,..., ],ki jetakoodvisnaodnspremenljivk,rečemorazcvetbézierovekrivuljeb n. Originalno krivuljo dobimo preprosto tako, da b izračunamo pri argumentiht =t 2 = =t n =t. Oglejmo si nekaj posebnih primerov izračuna v razcvetni obliki. Iz de Casteljauovegaalgoritmaneposrednosledib[0,0,...,0] =b 0 inb[,,...,] = b n.shemaza [t,t 2,...,t n ] = [0,0,...,]paseglasi Odtodzlahkavidimo,daje b 0 b b 0. b 2 b....... b0 b n b n b b =b[0,0,...,0,]. b j =b[0 (n j), (j) ], kjert (i) pomeniiponovitevargumentat. V razcvetni obliki se de Casteljauov algoritem tako izraˇza kot b[0 (n k j),t (k), (j) ] = ( t)b[0 (n k j+),t (k ), (j) ] +tb[0 (n k j),t (k ), (j+) ]. Točkanakrivuljijetedajb[t (n) ].Obenemopazimo,dapriizračunuvrazcvetni obliki ni pomemben vrstni red argumentov, torej je razcvet simetrična polinomska funkcija svojih argumentov. Toda ob tem ima še eno pomembno lastnost, je afina funkcija v vseh argumentih, ali kot rečemo na kratko, multiafina funkcija.

3.3 Bernsteinova oblika Bézierove krivulje Bézierove krivulje Seveda lahko razcvet gledamo kot na Bézierovo krivuljo, definirano nad intervalom [a, b]. Tedaj se de Casteljauov algoritem nad tem intervalom zapiše v obliki b k j = b u b a bk j + u a b a bk j+. Posamezne kontrolne točke v razcvetni obliko se tedaj izraˇzajo kot b j =b[a (n j),b (j) ]. Videli bomo, da s pomočjo razcvetne oblike zelo enostavno izrazimo nekatere pomembne algoritme z Bézierovimi krivuljami. Najprej pa si oglejmo še eno obliko zapisa Bézierove krivulje. 3.3 Bernsteinova oblika Bézierove krivulje Že zgled v prejšnjem razdelku je pokazal, da lahko Bézierovo krivuljo zapišemo kot posebno linearno kombinacijo polinomov in kontrolnih točk. Izkaˇze se, da je to res za vsako stopnjo Bézierove krivulje. Glavno vlogo pritemigrajobernsteinovi 3 polinomi. DEFINICIJA 3.3. Bernsteinov polinom stopnje n z indeksom i je definiran kot ( ) n Bi n(t) = t i ( t) n i, t [0,]. i Bernsteinovi polinomi so pomembni na več področjih matematike, morda najbolj v teoriji aproksimacij zveznih funkcij. Imajo celo kopico lepih lastnosti. Naštejmo samo nekatere(vse se nanašajo na interval [0, ]): Bi n (t) 0. Sobazaprostorapolinomovstopnje n. Bi n(t) =Bn n i ( t). Tvorijo particijo enote, torej n Bi n (t) =. i=0 3 SergeiNatanovičBernstein, 880-968,ruskimatematikrojenvOdessi(sedanja Ukrajina). 2

3.3 Bernsteinova oblika Bézierove krivulje Bézierove krivulje PolinomB n i imanatankoenekstrem(maksimum)vtočkit =i/n. Velja rekurzivna zveza B n i (t) = ( t)bn i (t) +tb n i (t), (3.2) pričemerveljadogovor,dajebi n (t) =0,čejei <0alii >n. Zaodvodinintegralvelja d ( ) dt Bn i (t) =n B n i (t) Bn i (t), (3.3) B n i (t)dt = n + n+ B n+ j (t) +konst. (3.4) j=i+ Vse lastnosti se dokaˇze dokaj enostavno. Formalne izračune prepuščamo bralcu. Naslednji pomemben izrek karakterizira Bézierovo krivuljo v Bernsteinovi obliki. IZREK3.3. Najbodob j E d,j =0,,...,n,kontrolnetočkeBézierovekrivuljeb n.potemje b n n (t) = b j B n j (t), t [0,]. j=0 DOKAZ. Oglejmo si de Casteljauov algoritem 3... Dovolj je dokazati, da se elementi k-tega stolpca v algoritmu izraˇzajo kot b k j(t) = j+k l=j b 0 j+k l (t)bk l j (t) = b l Bl j k (t), j =0,,...,n k. l=j Izberimostopnjon(stemsevedatudiosnovnekontrolnetočkeb 0 j :=b j, j =0,,...,n).Zgornjoformulobomodokazalizindukcijonak.Zak =0 je po definiciji prvega stolpca v algoritmu 3.. in po definiciji 3.3. Bernsteinovega polinoma b 0 j j(t) =b j =b j B0 0(t) = b l Bl j 0 (t). l=j Predpostavimosedaj,dajezanekk <n b k j(t) = j+k b l Bl j k (t), j =0,,...,n k. l=j 3

3.3 Bernsteinova oblika Bézierove krivulje Bézierove krivulje Elemente novega stolpca v de Casteljauovem algoritmu dobimo po formuli b k+ j (t) = ( t)b k j(t) +tb k j+(t), j =0,,...,n k. Uporabimo indukcijsko predpostavko ter lastnost(3.2) Bernsteinovih polinomov in dobimo b k+ j (t) = ( t) j+k l=j j++k b l Bl j k (t) +t b l Bl j k (t) l=j+ j+k ( ) =b j ( t)b0 k(t) + b l ( t)bl j k (t) +tbk l j (t) +b j++k tbk k(t) l=j+ j+k j++k =b j B0 k+ (t) + b l B k+ l j (t) +b j++k B k+ k+ (t) = l=j+ l=j Stemjedokazkončan. b l B k+ l j (t). Iz izreka 3.3. se da hitro razbrati nekaj zelo pomembnih lastnosti Bézierovih krivulj. IZREK3.3.2 Najbob n Bézierovakrivuljaskontrolnimitočkamib j E d,j = 0,,...,n.Zanjoveljanaslednje:. Krivulja je afino invariantna. 2. Krivulja je invariantna glede na afino transformacijo parametra, natančneje b n (t) = n b j B n a j (t), t =u b a, u [a,b]. j=0 3.Interpolirarobnikontrolnitočki,b n (0) =b 0 inb n () =b n. 4. Leži v konveksni ovojnici kontrolnih točk. 5.VsakahiperravninavE d sekakrivuljokvečjemutolikokratkotnjenkontrolni poligon. 6. Krivulja ima posebno simetrijo n j B j=0b n n j (t) = b n j Bn j n ( t). j=0 4

3.3 Bernsteinova oblika Bézierove krivulje Bézierove krivulje 7.Invariantnajegledenabaricentričnekombinacije.Najbo α + β =,potem je n ( ) αbj + βc j B n j (t) = α j=0 n j B j=0b n n j (t) + β c j B n j (t). j=0 8.Imalastnostlinearnenatančnosti.Najbodob j točkeenakomernorazporejenenadaljicimedtočkamacind,torej ( b j = j ) c + j d, j =0,,...,n. n n Potem je Bézierova krivulja natanko daljica med c in d. 9. Imajo lastnost psevdo lokalne kontrole. Če premaknemo samo eno kontrolno točkob j,sepremiknajboljproznavokolicitočke,kiustrezaparametruj/n. V resnici se vse točke na krivulji premaknejo v smeri vektorja premika kontrolne točke. 0. Višjo odvodi se izražajo kot d r n r dt rbn (t) =n(n ) (n r +) j=0 Pritemje b j :=b j+ b j in r b j = ( r ) b j. r b j B n r j (t), r =,2,...,n. (3.5) DOKAZ. Podroben dokaz posameznih točk bomo izpustili. Večino dokazovalipavsajzelopodrobnihnamigovjev[0]. Skorajvsezgornje lastnosti sledijo bolj ali manj iz lastnosti Bernsteinovih polinomov. Za pokušino dokaˇzimo denimo le zadnjo lastnost. Iz(3.5) in definicije preme diference je očitno, da je dovolj dokazati primer r =. Iz Bernsteinove oblike Bézierove krivulje sledi iz(3.3)pa d dt bn (t) =n =n n j=0 in dokaz je končan. b j ( ( n b j B n j= n d d dt bn (t) = b j dt Bn j (t), j=0 ) B n j (t) Bn j (t) n j (t) j=0 b j B n j (t) ) n =n j=0 b j B n j (t), 5

3.4 Subdivizija Bézierove krivulje 3.4 Subdivizija V prejšnjih razdelkih smo videli, da je Bézierova krivulja ponavadi definirana na intervalu [0, ]. Včasih pa ˇzelimo izraziti samo del osnovne Bézierove krivulje, denimo nad intervalom [0, c], kot samostojno Bézierovo krivuljo. Iskanju kontrolnih točk tega dela krivulje rečemo subdivizija. Naj imaosnovnakrivuljakontrolnetočkeb j,j=0,,...,n,iskanakrivuljapa kontrolnetočkec j,j=0,,...,n.želimo,dajec 0 =b 0,c n =b n (c)terdel krivuljeb n nadintervalom [0,c]natankokrivuljac n. Čeuporabimorazcvetni pristop iz prejšnjega razdelka, brez teˇzav dobimo kontrolne točke c j.kernaszanimainterval [0,c],je c j =b[0 (n j),c (j) ]. Vnerazcvetnioblikitorejc j =b j 0 (c).dobljenaformulaseimenujesubdivizijska formula za Bézierovo krivuljo. Tako smo dognali, da de Casteljauov algoritempolegizračunatočkeb n (c),vrnetudikontrolnetočkebézierove krivulje, ki ustreza intervalu [0, c]. Seveda zaradi lastnosti simetrije velja, da so kontrolne točke dela krivulje, ki ustreza intervalu [c, ], podane z b n j j. Subdivizijo seveda lahko ponavljamo. Najprej denimo pri parametru t = /2,natopaspetnapolovicidvehdobljenihsubdivizij. Takopo kkorakihpridemodo2 k kontrolnihpoligonov,kiskupajopisujejocelo osnovno Bézierovo krivuljo. Vsak od njih pa le majhen lok. Poligoni konvergirajo k loku krivulje z rastočim k zelo hitro, kar s pridom uporabimo pri nekaterih praktičnih problemih. Oglejmo si enega od njih. ŽelimopoiskatipresečiščeravninskeBézierovekrivuljeb n spremico l. Najprej uporabimo lastnost konveksne ovojnice. Da bo presečišče obstajalo, mora premica sekati konveksno ovojnico kontrolnih točk. Toda v praksi je računanje konveksne ovojnice zamudno, zato lahko problem nekoliko poenostavimo(pri tem pa morda potrebujemo nekaj več korakov algoritma). Namesto konveksne ovojnice lahko gledamo t.i. minimalni pravokotnik kontrolnega poligona. To je najmanjši pravokotnik, ki vsebuje kontrolne točke. Njegova konstrukcija je enostavna, po lastnosti konveksne ovojnice pa krivulja leˇzi tudi v tem pravokotniku. Potreben pogoj,da lsekakrivuljob n je,dasekadobljenipravokotnik. Čegane, presečišča ni, sicer pa je nadaljevanje algoritma na dlani. Naredimo subdivizijo pri t = /2. Izračunamo oba minimalna pravokotnika in preverimo, ali premica seka kakšnega od njih. Nato nadaljujemo na tistem delu (ali obeh), kjer presečišče obstaja. Ker se pravkotniki hitro zmanjšujejo, 6

3.5 Višanje in niˇzanje stopnje Bézierove krivulje lahko za presečišče po nekaj korakih vzamemo kar središče tistega pravokotnika, ki ga premica seka. 3.5 Višanje in niˇzanje stopnje Spoznali smo, da kontrolni poligon Bézierove krivulje lahko pove veliko o njenih lastnostih. Vendar njegova geometrija včasih ni dovolj fleksibilna za modeliranje oblike krivulje. V takem primeru bi ˇzeleli kontrolni poligon razširiti z novo točko, obenem pa ohraniti osnovno obliko krivulje. Oglejmo si ta problem malce bolj podrobno. Najbob:=b n Bézierovakrivuljastopnjenskontrolnimitočkamib j, j =0,,...,n.Kontrolnetočkeˇzelimorazširitiznovotočko,torejpoiskati kontrolnetočkeb () j,j = 0,,...,n +,tako,dabodobljenabézierova krivuljab () enakab.očitnomoraveljati b(t) = n ) n j( t j=0b j ( t) n j =b () (t) = j n+ b () j j=0 ( n + Kolevostranpomnoˇzimoz(t + ( t),se(3.6)prepišev n ) n ( j( t j=0b j ( t) n+ j +t j+ ( t) n j) j = n+ b () j j=0 ( n + j ) t j ( t) n+ j. j ) t j ( t) n+ j. (3.6) Primerjajmokoeficienteprit j ( t) n+ j naobehstranehinzapišimonaslednji izrek. IZREK 3.5.(VIŠANJE STOPNJE) Naj bo b Bézierova krivulja stopnje n podana skontrolnimitočkamib j,j =0,,...,n.ZapišemojolahkokotBézierovokrivuljo b () stopnjen +.Medkontrolnimitočkamib j krivuljebinkontrolnimitočkami b () j krivuljeb () veljazveza b () 0 =b 0, b () j = b () n+ =b n. j n + b j + ( j ) b j, j =,...,n, (3.7) n + 7

3.5 Višanje in niˇzanje stopnje Bézierove krivulje Iz zveze(3.7) sledi, da nov kontrolni poligon leˇzi v konveksni ovojnici originalnega. Torej je bliˇzje krivulji b kot originalni. To nam da idejo za zaporedno višanje stopnje. S tem bomo dobili isto krivuljo zapisano v obliki Bézierove krivulje višje stopnje, novi kontrolni poligoni pa se bodo pribliˇzevali krivulji(ne spregljete, da ima vsak nov kontrolni poligon eno točko več). S pomočjo matematične indukcije lahko dokaˇzemo, da se kontrolne točke po r korakih višanja stopnje izraˇzajo kot b (r) 0 =b 0, b (r) j = b (r) n+r =b n. n ( n b k k k=0 ) ( r j k ) ( n+r j ) j =,...,n +r, Formalno se da pokazati, da kontrolni poligoni z višanjem stopnje konvergirajohkrivuljib.žalpajeredkonvergencezelopočasen,zatonimavelike uporabne vrednosti. Se pa lahko algoritem višanja stopnje pospološi v t. i. algoritem rezanja kotov [7]. Podobno kot višanje stopnje lahko poskusimo tudi z niˇzanjem stopnje. Jasno je, da ta postopek ne bo(vedno) ohranjal originalne krivulje, saj je malo verjetno, da je krivulja nastala z višanjem stopnje. Lahko pa izvedemo aproksimacijo originalne krivulje s krivuljo niˇzje stopnje. Problem lahkozastavimopodobnokotprej,ledasedajzadanokrivuljobiščemo kontrolnetočkeb ( ) j,j =0,,...,n,krivuljeb ( ),kiaproksimirab. Predpostavimozatrenutek,dasmokontrolnetočkeb j dobiliizkontrolnih točkb ( ) j z višanjem stopnje(kot rečeno, to v splošnem seveda ni res). Potem lahko izpeljemo dve rekurzivni formuli za kontrolne točke zniˇzane stopnje j = nb j jb ( ) j, j =0,,...,n, (3.8) n j b ( ) j = nb j (n j)b ( ) j, j =n,n,...,. (3.9) j b ( ) V praksi se izkaˇze, da lahko obe formuli kombiniramo. Za levo polovicokontrolnihtočk(torejtiste,kisogledenaindeksbliˇzjeb 0 )uporabimo (3.8), za desno polovico pa(3.9). 8

Poglavje 4 Zlepki Bézierovih krivulj V tem poglavju si bomo ogledali naravno nadgradnjo Bézierovih krivulj, zlepke. Najbolj pogosta problema pri modeliranju ali oblikovanju sta gotovo interpolacija in aproksimacija. Pri prvem imamo nalogo, da med določenimi objekti(v našem primeru na primer Bézierovimi krivuljami) poiščemo takega, ki poteka skozi podane točke. Aproksimacijski problem interpolacijo malo poenostavi. Zahtevo, da krivulja poteka skozi dane točke zamenjamo s teˇznjo, da se jim vsaj dovolj pribliˇza. Pri obeh problemihnaletimonateˇzave,kojedanihtočkveliko. Tedajbizarešitev problema v splošnem potrebovali Bézierovo krivuljo visoke stopnje. To pa vsaj zaradi dveh slabosti ni dobra izbira: preveč računanja in slabe interpolacijske lastnosti polinomov visokih stopenj(spomnite se Rungejevega primera pri interpolaciji funkcij). Ker na število podatkov ponavadi nimamo vpliva, nam ostane samo ena smiselna moˇznost. Za objekte vzamemo krivulje niˇzjih stopenj, z njimi interpoliramo ali aproksimiramo manjše število podatkov, nato pa dobljene odseke lepimo med seboj. Objekt, ki ga dobimo, imenujemo zlepek. V naslednjem razdelku ga bomo formalno definirali. 4. Definicija, lokalnost in globalnost Zlepke lahko seveda definiramo zelo splošno. Vsi pristopi imajo skupno vsaj dvoje. Odločiti se moramo, v kakšni obliki bomo zlepke zapisali ter določiti stičišča posameznih delov. Pri parametričnih krivuljah to praktično pomeni, da se moramo odločiti za konkretno parametrizacijo zlepka. 9

4. Definicija, lokalnost in globalnost Zlepki Bézierovih krivulj DEFINICIJA 4.. Naj bo dano naraščajoče zaporedje delilnih točk(včasih jim rečemo tudi vozli) u 0 <u < <u N <u N. (4.) Parametričnapolinomskakrivuljas:[u 0,u N ] E d jebézierovzlepekstopnjen zgadkostjok,čevelja:.odsekzlepkas [sj,s j+ ],j=0,,...,n,jebézierovakrivuljastopnjen. 2. d l du ls(u j 0) = dl du ls(u j +0), j =,2,...,N, l =0,,...,k. Pritemsmozs(u 0)ins(u +0)označililevoindesnolimitokrivuljespri parametruu.zaradikrajšihoznakbomozaodsekzlepkanaintervalu [u j,u j+ ] nakratkopisalikars j. Parametruu,kipretečeinterval [u 0,u N ]pravimoglobalniparameter. Smiselnopaje,danaposameznemodsekukrivuljos,kijetupodefiniciji Bézierova krivulja, gledamo v t.i. lokalnem prametru t, t = u u j j, u [u j,u j+ ], j =0,,...,N. (4.2) Z j smonakratkooznačilikoličino u j =u j+ u j.lokalniparameter tako na j-tem odseku vedno preteče enotski interval [0, ]. Ker je transformacija(4.2) afina, očitno velja s [uj,u j+ ](u) =s j (t). Pri preverjanju pogojev gladkosti zlepka bomo vseskozi uporabljali naslednjo zvezo med globalnim in lokalnim parametrom. Izberimo u [u j,u j+ ].Potemje d du s(u) = d dt s j (t) dt du = j d dt s j (t). (4.3) Točkams(u j ) =s j (0) =s j (),kjerseposamezniodsekikrivuljstikajo, bomo rekli stične točke. Mnoˇzici vseh kontrolnih poligonov posameznih odsekov Bézierovih krivulj pa odsekoma Bézierov poligon krivulje s. Iz(4.2) je razvidno, da izbira delilinih točk igra pomembno vlogo pri pogojihgladkosti.panesamoto,izkazalosebo,damočnovplivatudina obliko zlepka s. 20

4.2 Pogoji gladkosti Zlepki Bézierovih krivulj 4.2 Pogojigladkosti Posvetimo se sedaj pogojem, ki zagotavljajo gladkost Bézierove krivulje v posamezni delilni točki. To so očitno tudi edine točke, v katerih je treba gladkost posebej preverjati, saj je drugje zlepek lokalno polinomska parametrična krivulja. Oglejmo si najpreprostejši primer, Bézierov zlepek s,sestavljenizdvehodsekovs 0 ins,definiranihnaintervalih [u 0,u ]in [u,u 2 ],u 0 < u < u 2. KerjevsakodsekBézierovakrivuljastopnjen, bo enolično določena s kontrolnimi točkami. Zaradi lastnosti interpolacije robnihkontrolnihtočkodtodsledi,dabozlepekzvezenvtočkis(u ), čebostaprvakontrolnatočkas 0 inzadnjakontrolnatočkas enaki. Ob upoštevanjutegadejstvalahkokontrolnetočkes 0 označimozb j, j = 0,,...,n,kontrolnetočkes pazb j,j = n,n +,...,2n. Nadaljujmo zobravnavanjempogojevc zveznosti.izdefinicijezlepka,(4.2),(4.3)in (3.5) dobimo 0 b n = b n. (4.4) Tako smo prišli do naslednjega pomembnega izreka. IZREK4.2. Najbos : [u 0,u 2 ] E d Bézierovzlepek,kijenadintervalom [u 0,u ],u 0 <u <u 2,podankotBézierovakrivuljas 0 skontrolnimitočkami b j,j=0,,...,n,nadintervalom [u,u 2 ]pakotbézierovakrivuljas,podana skontrolnimitočkamib j,j =n,n +,...,2n. Zlepeksjevtočkiu zvezno odvedljiv, če je b n+ =b n + 0 b n. (4.5) Iz zadnjega izreka je razvidno, da je zlepek s zvezno odvedljiva krivulja (C krivulja)natankotedaj,kosotočkeb n,b n inb n+ kolinearne,hkrati pa razdalje med njimi v ustreznem razmerju, ki ga določa domena krivulje s. Zvezna odvedljivost je torej bistveno odvisna tudi od izbire delilnih točk u j. Naslednje naravno vprašanje je, kakšni so pogoji za zvezno odvedljivostvišjegareda.oglejmosipodrobneješezveznostdrugihodvodov(c 2 zveznost). PrivzemimoenakeoznakekotpriobravnavipogojevC zveznosti.vdelilnitočkiu semorapolegprvihodvodovsosednjihsegmentovs 0 ins,ujematišedrugiodvod. Takoponovnoiz(4.2),(4.3)in(3.5) dobimo 2 2 b n 2 = 0 2 2 b n. (4.6) Slednji pogoj lahko zapišemo tudi nekoliko drugače. 2

4.2 Pogoji gladkosti Zlepki Bézierovih krivulj IZREK4.2.2 Najbodoizpolnjenipogojiizreka4.2..Zlepeksjevtočkiu dvakrat zvezno odvedljiv natanko tedaj, ko obstaja točka d, za katero velja kjer je b n = ( t )b n 2 +t d, b n+ = ( t )d +t b n+2, t = 0 0 +. DOKAZ. Privzemimo najprej, da je zlepek s dvakrat zvezno odvedljiv v u.iz(4.4)dobimo b n = zmnoˇzenjemzveze(4.6)z 0 paše Upoštevajmo zvezo(4.7), in(4.8) prepišimo v 0 + ( 0 b n+ + b n ) (4.7) 0 2 b n 2 = 0 2 b n. (4.8) 0 + 0 b n 0 b n 2 = 0 + b n+ 0 b n+2. Kratek račun pokaˇze, da leva in desna stran zgornje enakosti predstavljata ravnotočkodizizreka. Predpostavimo sedaj, da obstaja točka d, ki izpolnjuje pogoje izreka. Potemje b n+2 = (b n+ ( t )d) = ( b n+ t ) (b n ( t )b n 2 ). t t t Upoštevamo še(4.5) in z nekaj računanja pridemo do 2 (b n+2 2b n+ +b n ) = 2 (b n 2b n +b n 2 ), 0 karjeravnopogojzac 2 zveznost. Pogojizavišjiredzveznostisoleredkopotrebnivpraksi.Vseenojih zapišimo. Krivljasjevtočkiu zveznadoredar(c r zvezna)natanko tedaj,koje ( ) i ( i b n i = ) i i b n, i =0,,...,r. 0 22

4.3 Kvadratični Bézierovi B-zlepki Zlepki Bézierovih krivulj 4.3 Kvadratični Bézierovi B-zlepki KersopriC inc 2 zveznihbézierovihzlepkihkontrolnetočkemedseboj povezane, jih lahko izrazimo z manj podatki, kot pri splošni Bézierovi krivulji. OglejmosiprimerC zveznihkvadratičnihzlepkov. Ponovno izberimozaporedjedelilnihtočku 0 < u < < u N. Zaradi(4.7)je kvadratični Bézierov zlepek določen ˇze s kontrolnimi točkami b 0, b j,j =,3,...,2N, b 2N. (4.9) Preostale kontrolne točke se izraˇzajo kot b 2j = j + j ( j b 2j + j b 2j+ ), j =,2,...N. Očitno torej lahko kvadratični Bézierov zlepek definiramo samo z delinimi točkami in kotrolnimi točkami(4.9). Slednje tvorijo t.i. poligon Bézierovega B-zlepka oz.deboorovpoligon.ponavadikontrolnetočketegapoligona označimo z d :=b 0, d j :=b 2j+,j =0,,...,N, d N :=b 2N. (4.0) Očitno vsak de Boorov poligon skupaj z zaporednjem delilnih točk določa C zveznikvadratičnibézierovzlepekinobratno,vsakc zveznikvadratični Bézierov zlepek ima natanko določen de Boorov poligon. Tudi za de Boorov poligon veljajo podobne lastnosti kot za Bézierov kontrolni poligon, denimo lastnost konveksne ovojnice, linearna natančnost, interpolacija robnih točk, simetrija in še nekatere druge. Opazimo tudi, da so posamezni odseki kvadratičnega zlepka ravninske krivulje(saj leˇzijo v konveksni ovojnici treh kontrolnih točk). Seveda pa je celotni zlepek lahko krivulja v d-dimeznionalnem prostoru. Toda de Boorov kontrolni poligon ima še eno dodatno lastnost, ki je splošni Bézierov kontrolni poligon nima. Vemo namreč, da premik ene kontrolne točke Bézierove krivulje vpliva na celo krivuljo. Premik ene kontrolne točke de Boorovega kontrolnega poligona kvadratičnega zlepka pa vpliva največ na tri odseke. Taki lastnosti rečemo lastnost lokalne kontrole. Posledica tega je, da Bézierov B-zlepek lahko vsebuje odseke premic, četudi sam ni linearen. To pri splošnih Bézierovih krivuljah višje stopnje ni mogoče. Podobno lahko v luči de Boorovega kontrolnega poligona definiramo tudi kubične Bézierove B-zlepke. Ker je konstrukcija malce bolj zepletena, jobomoizpustili.natančenopisjev[0],prvičpajebilapredstavljenav [5]. NezamenjajtegasklasičnimB-zlepkom. 23

4.4 Interpolacija z Bézierovimi zlepki Zlepki Bézierovih krivulj 4.4 Interpolacija z Bézierovimi zlepki Najpogostejša naloga, pri kateri naletimo na Bézierove zlepke, je interpolacija. Formulacija problema je preprosta. Dano je zaporedje interpolacijskih točk p j R d, j =0,,...,N, p j+ =p j. (4.) Iščemo Bézierov zlepek, ki poteka skozi podane točke. Očitno moramo izbrati stopnjo Bézierovega zlepka in zaporedje delilinih točk(4.). Stopnja zlepka je seveda lahko poljubna, vendar v praksi teˇzimo k nizkim stopnjam predvsen zaradi manjše kompleksnosti in večje stabilnosti računanja. Linearni zlepki niso zanimivi, saj z njimi lahko doseˇzemo le zveznost. Tudi parabolični so preveč togi, saj ima kvadratna Bézierova krivulja konstanten predznak ukrivljenosti, kar močno omeji prilagodljivost krivulje podatkom. Prva smiselna izbira so kubični zlepki, ki so dober kompromis med fleksibilnostjo in računsko zahtevnostjo. V praksi se sicer pogosto uporabljajošezlepkistopnje5,todatusebomoomejililenakubične. IščemotorejkubičniBézierovzlepeks:[u 0,u N ] E d,kiinterpolira točke(4.) v delilnih točkah(4.), natančneje s(u j ) =p j, j =0,,...,N. (4.2) Poleg točk imamo lahko na voljo še dodatno informacijo, recimo tangentne vektorje v stičnih točkah, v j =s (u j ), j =0,,...,N. (4.3) Ogledalisibomodvepomembnikonstrukciji, C zvezneinc 2 zvezne kubične zlepke. 4.5 C zveznikubičnizlepki Podatki za konstrukcijo so: zaporedje delilnih točk(4.), interpolacijske točke(4.)inpripadajočitangentnivektorji(4.3).iščemoc zveznikubični zlepek s ki interpolira točke in tangentne vektorje v danih delilnih točkah. Delzlepkanaj-temsegmentu [u j,u j+ ]jebézireovakrivulja,kijolahko opišemoskontrolnimitočkamib 3j+k,k =0,,2,3.Interpolacijskipogoji zatočkesoizpolnjeni,čejeb 3j = p j inb 3j+3 = p j+. Poizreku4.2.pa 24

4.5C zveznikubičnizlepki ZlepkiBézierovihkrivulj mora za notranje kontrolne točke veljati b 3j+ =b 3j + 3 jv j, j =0,,...,N, (4.4) b 3j =b 3j 3 j v j, j =,2,...,N. (4.5) Konstrukcijajestemkončana,ˇzalpasovpraksileredkoznanedelilne točke in popolna informacija o tangentnih vektorjih. Zato je bolj zanimiva nalednja naloga: dano je zaporednje interpolacijskih točk(4.)insmeritangentvtehtočkahd j,j = 0,,...,N. Ponovno iščemoc zvezniinterpolacijskikubičnibézierovzlepeks.brezškodeza splošnostlahkopredpostavimo,dazasmeritangentvelja d j =. Zaradiinterpolacijejeponovnob 3j =p j inb 3j+3 =p j+.notranjekontrolne točkepasepodobnokotprejizraˇzajokot b 3j+ =b 3j + α j d j, j =0,,...,N, b 3j =b 3j β j d j, j =,2,...,N. Vsakaizbirapozitivnihparametrov α j in β j določanatankoenc zvezen kubični zlepek. Seveda o njegovi obliki odloča velikost parametrov. Če so premajhni, lahko dobimo vogale v interpolacijskih točkah, če so preveliki, se pojavijo zanke. Delilne točke morajo izpolnjevati pogoje j = α j β j j, j =,2,...,N. Praksa je pokazala, da se velikokrat dobro obnese izbira Vtemprimeruzadelilnetočkevelja α j = β j =0.4 p j. j = p j j p j. Seveda pa je to le hevristika, ki ne da vedno sprejemljivih oblik zlepka. Podobno si lahko zastavimo še tretjo obliko problema. Sedaj naj bodo dane tako delilne točke(4.), kot interpolacijske točke(4.). Smeri tangent nepoznamo,ˇzelimopajihsmiselnodoločitizakonstrukcijoc zveznega zlepka.enaodmoˇznostijet.i.catmull-romov 2 zlepek[6].za(nenormirane) smeri tangent izberemo 2 ZlepekjeznantudikotFMILL. d j =p j+ p j, j =,2,...,N. (4.6) 25

4.5C zveznikubičnizlepki ZlepkiBézierovihkrivulj Robni tangenti določimo drugače, na primer po Besselovi shemi, ki jo bomo opisali v nadeljevanju. Ker je zlepek interpolacijski, se robne kontrolnetočkeujemajozinterpolacijskimi,torejjespetb 3j = p j inb 3j+3 = p j+.zanotranjekontrolnetočkepaizberemo j b 3j =b 3j 3 ( )d j, j + j j b 3j+ =b 3j + 3 ( )d j. j + j Namesto tangent(4.6) lahko tangente izberemo po t. i. Besselovi shemi.tangentotedajvstičnitočkip j določimotako,dadoločimoparaboloq j skozitrisosednjeinterpolacijsketočkep j,p j inp j+,nadelilnih točkahu j,u j inu j+ terjoodvajamopriu j.torej kjer je v j = d du q j (u j ) = α j j p j + α j j p j, j =,2,...,N, V krajiščih pa izberemo α j = j j + j. v 0 := d du q (u 0 ) = 2 0 p 0 v, (4.7) v N := d du q N (u N ) = 2 N p N v N, (4.8) Kontrolne točke posameznega segmenta potem dobimo iz(4.4) in(4.5). Pravkar omenjene parabole lahko uporabimo tudi pri konstrukciji t.i. Overhauserjevega zlepka[2]. Pri tej konstrukciji j-ti segment zlepka definiramo z s j (u) = u j+ u q j (u) + u u j q j j+ (u), j =,2,...,N 2. j Narobovihpapostavimos 0 (u) =q 0 (u)ins N (u) = q N (u). Izkaˇze se,davresnicibesselovainoverhauserjevashemadoločataistic zvezen kubični zlepek. MedpomembnimishemamiješeAkimova[]. Oglejmosijosamo beˇzno. Tangentne vektorje izberemo na naslednji način v j = ( c j )a j +c j a j, 26

4.6C 2 zveznikubičnizlepki ZlepkiBézierovihkrivulj kjerjea j = p j / j in c j = a j 2 a j 2 + a j. 4.6 C 2 zveznikubičnizlepki V praksi imamo pogosto podane le interpolacijske točke(4.). Delilne točke in smeri tangent pa moramo pogosto določiti sami. V prejšnjem razdelkusmosiogledalinekajshem,skaterimikonstruiramoc zvezni kubičnizlepek.tupasebomoposvetilikonstrukcijic 2 zveznegazlepka. Smeritangentpritemnepotrebujemo,sajse določijosame tako,daje zlepekzvezenreda2.ševednoostaneproblemizbiredelilnihtočk,aotem bomo nekaj ve v povedali v naslednjem razdelku. Privzemimo torej, da imamo poleg interpolacijskih točk podane tudi delilne točke. Kot vemo, lahko zlepek enolično določimo, če poznamo še odvode zlepka v delilnih točkah. Označimojihkotv(4.3). Zapišimoj-tisegments j zlepkasv Bézierovioblikiinvlokalnemparametrut = (u u j )/ j ( s j (t) =p j B0 3(t) + p j + 3 jv j )B 3(t) + (p j+ 3 ) jv j+ B2 3(t) +p j+ B3 3 (t), j =0,,...,N. (4.9) Zaradi lastnosti interpolacije robnih točk so neposredno izpolnjeni interpolacijski pogoji(4.2), saj je s(u j ) =s j (0) =p j, j =0,,...,N. Po(4.3)in(3.5)pazaj =,2,...,N veljaše d du s(u j 0) = s j () = ( p j j (p j 3 )) j v j =v j, j d du s(u j +0) = s j (0) = (p j j + 3 ) jv j p j =v j, j zatojezlepeksvsajc zvezen. Vektorjiv j sošepoljubni. Določilijih bomotako,dabozlepekspostalc 2 zvezen.očitnomoramozadostitiše pogojem d 2 du 2s(u j 0) = d2 du 2s(u j +0), j =,2,...,N. 27

4.6C 2 zveznikubičnizlepki ZlepkiBézierovihkrivulj Podobno kot zgoraj se zadnje enakosti po(4.3) in(3.5) izraˇzajo kot 2 s j () = 6 ( j 2 3 j v j + 2 ) 3 j v j p j j = 2 s j (0) = 6 ( 23 j 2 jv j 3 ) jv j + p j, j oziroma j v j + j +2v j + j v j j + j+ =b j, j =,2,...,N, (4.20) j kjer je b j = 3 j + j ( j p j + ) j p j j. j Enačbe(4.20) predstavljajo sistem N (vektorskih) linearnih enačb za N neznanihvektorjevv j,j =,2,...,N.Vmatričnioblikigalahko zapišemokotav =B,kjerje ( j j A =tridiag,2, j + j j + j ) N j= (4.2) in V = v T v T 2. v T N, B = b T b T 2.. b T N Matrika A je diagonalno dominantna po vrsticah, saj je j + j =<2, j + j j + j zato ima sistem(4.20) natanko eno rešitev. To pomeni, da obstajajo enolično določenivektorji v j, j =,2,...,N,kidoločajosegmentes j, j =,2,...,N,zlepkas. Odvodav 0 = s (u 0 )inv N = s (u N )lahko določimo poljubno. Lahko pa sistemu(4.20) dodamo še dve linearno neodvisnienačbi,kivsebujetaneznanaodvodav 0 inv N.Gledenatoizbiro sonajpomembnejšitipic 2 zveznihkubičnihbézierovihzlepkovnaslednji: Besselov zlepek: Odvoda v krajiščih določimo po(4.7) in(4.8). 28

4.6C 2 zveznikubičnizlepki ZlepkiBézierovihkrivulj Nevozel zlepek:odvodavkrajiščihdoločimotako,dajezlepeks vu inu N trikratzveznoodvedljiv.topomeni,dasegmentas 0 in s predstavljataistokubičnokrivuljo(enakoveljazasegmentas N 2 ins N ). Naravnizlepek:Namestoprvihodvodovvkrajiščupredpišemos (u 0 + 0) =s(u N 0) =0. Priodični zlepek: Prva in zadnja interpolacijska točka sta enaki. Zlepeksimavprviinzadnjidelilnitočkitudienakaprviindrugiodvod. Naravni zlepek da tudi naslednjo motivacijo za alternativno konstrukcijo C 2 zlepka.namestodasovdelilnihtočkahneznaniprviodvodi,izberemo zaneznankedrugeodvode,torejw j :=s (u j ),j =0,,...,N.Označimo kontrolnetočkej-tegasegmentazb 3j+k,k = 0,,2,3. Podobnokotpri izpeljavi enačb s prvimo odvodi iz(4.3) in(3.5) dobimo s (u j ) =w j = 6 2 j ( b3j 2b 3j+ +b 3j+2 ) s (u j+ ) =w j+ = 6 2 j ( b3j+ 2b 3j+2 +b 3j+3 ). Kerjezlepekinterpolacijski,jeb 3j =p j,b 3j+3 =p j+ inzgornjisistemza b 3j+ terb 3j+2 imarešitev b 3j+ = 2p j +p j+ 3 b 3j+2 = p j +2p j+ 3 2 j ( ) 2wj +w j+, 8 2 j ( ) wj +2w 8 j+. Zatoj-tisegmentzlepkas j lokalnolahkozapišemovobliki ( 2pj s j (t) =p j B0 3(t) + +p j+ 3 ( pj +2p j+ + 3 2 j ( ) ) 2wj +w 8 j+ B 3(t) 2 j ( ) ) wj +2w j+ B2 3 8 (t) +p j+ B3 3 (t). TodazagotovitijetrebašeC zveznost,zatomorazanotranjedelilnetočke veljatis (u j 0) = s (u j +0),j =,2,...,N. Nekajračunanjanas 29

4.7 Izbira delilnih točk Zlepki Bézierovih krivulj pripelje do naslednjega sistema linearnih enačb j j w j + j +2w j + w j j + j+ =c j, j =,2,...,N, (4.22) j kjer je c j =6 j p j j p j j + j. sistem je ponovno diagonalno dominanten, zato ima enolično rešitev za neznanevektorejw j,j =,2,...,N. Podobnokotvprimeruprvih odvodov, moramo dodati še dva linearno neodvisna pogoja za druga odvodavrobnihdelilnihtočkah.čejupostavimonanič,dobimonaprimer naravni zlepek. 4.7 Izbira delilnih točk V prejšnjih razdelkih smo videli, da za delilne točke lahko izberemo poljubno naraščajoče zaporedje realnih števil. Ker pa delilne točke vplivajo naoblikoc alic 2 zveznegakubičnegazlepka,jenaravnovprašanje,kako jih smiselno izbrati. Odgovor nanj ni enostaven, saj kriteriji za obliko zlpeka večinoma niso jasno postavljeni. Odvisni so od ozadja problema v katerem nastopajo zlepki, velikokrat pa tudi od subjektivne presoje oblikovalca, ki jih uporablja za konstrukcijo gladkih krivulj. Kljub temu pa je dokaj hitro jasno, da morajo biti delilne točke vsaj v majhni meri povezane z geometrijo točk. Tak razmislek nam da naslednjo idejo za izbor delilnih točk(ali kot rečemo na kratko, za parametrizacijo zlepka). DEFINICIJA4.7. Čezainterpolacijsketočkep j E d,j =0,,...,N,izberemo delilne točke kot u j+ =u j + p j α, j =0,,...,N, α [0,], (4.23) potempravimo,dasmoizbralit.i. α-parametrizacijo.začetnadelilnatočkau 0 je poljubna, ponavadi jo postavimo na 0. Včasih delilne točke iz zadnje definicije še normiramo, jih delimo s konstantotako,dajenaprimeru N =.Parameter α,pokateremseimenujejo pravkar definirane parametrizacije je omejen na enotski interval. To ni nujno, vendar praktični primeri kaˇzejo, da je omejitev smiselna. Najbolj znane parametrizacije tega tipa so: 30

4.7 Izbira delilnih točk Zlepki Bézierovih krivulj enakomerna, α =0, centripetalna, α = /2, tetivna, α =. Nobena od parametrizacij se ˇzal ne izkaˇze kot idealna za vse nabore interpolacijskih točk. Zato je izbira takega tipa parametrizacije odvisna od primera do primera. Med bolj znanimi parametrizacijami je tudi t.i. Foleyeva[20]. Pri tej izberemo ( ) j = p j + 3 θ j p j θ 2 p j + p j +3 j+ p j+ 2 p j + p j+, kjer je { θ j =min π θ j, π } 2 in θ j kotmedvektorjema p j in p j. Med vsemi omenjenimi parametrizacijami je samo enakomerna invariantna na afine transformacije. Vse druge vsebujejo dolˇzine vektorjev, ki pa na take transformacije niso(v splošnem) invariantne. Eden od smiselnih kriterijev za kakovost izbire parametrizacije je naslednji. Za dano zaporedje interpolacijskih točk(4.) in izbrano α- parametrizacijo(4.23) nas zanima, kako daleč se odmakne interpolacijski Bézierov kubični zlepek(4.2). Pri tem odmik merimo kot razdaljo meddaljicomedtočkama p j in p j+ terustreznimsegmentoms j,j = 0,,...,N.Naobaobjektalahkogledamokotnaparametričnikrivulji. Razdalja med njima je razdalja med mnoˇzicama točk, ki sta sliki obeh krivulj, torej znana Hausdorffova razdalja. Fromalno jo definiramo takole. DEFINICIJA4.7.2 Najbostaf : [a,b] E d ing:[c,d] E d dveparametrični krivulji. Potem je Hausdorffova razdalja med njima enaka { } d H (f,g):=max sup t [a,b] inf f(t) g(u), sup u [c,d] u [c,d] inf f(t) g(u) t [a,b] V praksi jo je teˇzko(tudi samo pribliˇzno) učinkovito računati, zato pogosto za mero oddaljenosti dveh krivulj izberemo parametrično razdaljo[9]. DEFINICIJA4.7.3 Najbostafingtakikotvdefiniciji4.7.2in φ:[a,b] [c,d] poljubna zvezna naraščajoča funkcija. Parametrična razdalja med f in g je d P (f,g) =inf φ sup t [a,b] f(t) g(φ(t)).. 3

4.7 Izbira delilnih točk Zlepki Bézierovih krivulj Parametrizacija max 0 j N µ j µ Enakomerna 3/4 Centripetalna 3/4 9/20 Tetivna 3/4 3/4 Tabela 4.: Primerjava lokalnih in globalnih odmikov periodičnega kubičnega zlepka za različne α-parametrizacije. Očitno velja, da je d H (f,g) d P (f,g). (4.24) Čeoznačimoz[p j,p j+ ]daljicomedtočkamap j inp j+,lahkolokalniodmiksegmentas j zlepkasnaintervalu [u j,u j+ ]definiramokot µ j := µ j (s) = globalni odmik pa kot ) d H (s j, [p j,p j+ ], j =0,,...,N, (4.25) p j µ:= µ(s) = max 0 j N d H (s j, [p j,p j+ ]). (4.26) max 0 j N p j V praksi ponavadi ˇzelimo, da interpolacijski zlepek ne bo imel prevelikih lokalnihinglobalnegaodmika,torejmajhnovrednost µ j in µ. Problem je za periodične kubične zlepke podrobno obravnavan v[2]. Rezultati sopovzetivtabeli4.inkaˇzejo,dajegledenatomerokakovostizlepka najprimernejša centripetalna parametrizacija. Za zaključek razdelka si oglejmo nekoliko laˇzji primer študija odmikov, in sicer odmike kvadratnega Bézierovega interpolanta(ne zlepka) glede na poljubno α-parametrizacijo od poligona interpolacijskih točk. PRIMER4.7. Danesotritočkep 0,p, p 2 E d.izberimointerpolacijskeparametre(4.23)injihutežimotako(torejdelimoz u 0 + u ),dabou 0 =0in u 2 =.PoiščimokvadratnoBézierovokrivuljob,zakateroje b(u j ) =p j, j =0,,2. Vemo,daje b(t) =b 2 B 2 0 (t) +b B 2 (t) +b 2 B 2 2 (t), 32

4.7 Izbira delilnih točk Zlepki Bézierovih krivulj kjerjeb 0 = p 0 inb 2 = p 2. Kerstaprimeraodmikovnaprvemindrugem segmentusimetrična,sioglejmosamoprvega. Zaradiinterpolacijetočkep pri u je b = ( ) B 2(u p p 0 B0 2 ) (u ) p 2 B2 2(u ). Označimoz l 0 daljicomedtočkamap 0 inp,parametriziranonaintervalu [0,u ] inzcdelbézierovekrivuljenaintervalu [0,u ].Podefiniciji4.7.3je d H (c, l 0 ) max u [0,u ] c(u) l 0 (u). Krivuljocindaljico l 0 lahkona [0,]predstavimokotkvadratniBézierovikrivulji. Prvo s pomočjo de Casteljauove sheme, drugo z dvigom stopnje. Dobimo Torej je c(t) =p 0 B 2 0 (t) + (( u )p 0 +u b )B 2 (t) +p B 2 2 (t), l 0 (t) =p 0 B 2 0 (t) + 2 (p 0 +p )B 2 (t) +p B 2 2 (t). d H (c, l 0 ) u b u p 0 2 p 0 max t [0,] B2 (t). Iz(4.23)indejstva,dasmoparametrenormiralina [0,],sledi u = p 0 p 0 + p. Upoštevamošemax t [0,] B 2 (t) =/2inznekajračunanjadobimo d H (c, l 0 ) 4 p 0 2 α p 0 α + p α p 0 α + p α, oziroma Zaradi simetrije je tudi ) α ( p µ 0 + p 0 ( 4 p ) + α. p 0 ) α ( p µ + 0 p ( 4 p ) + 0 α. p 33

4.7 Izbira delilnih točk Zlepki Bézierovih krivulj Hitroselahkoprepričamo,daje µ j /2za α /2. Posebejjezatetivno parametrizacijo µ j /2inzacentripetalno µ j /4. Za α </2jajelahkolokalniodmikneomejen,karpokažeravninskiprimertočk p 0 = (0,0) T,p = (ǫ,0) T,p 2 = (ǫ, ) T in ǫ >0.Kogre ǫproti0,lokalni odmik µ 0 rastečezvsemeje. Brezformalneutemeljitveomenimoše,daje µ </2zavsak α [0,]. 34

Poglavje 5 Geometrijsko zvezne krivulje VprejšnjihpoglavjihsmoseukvarjalipredvsemskonstrukcijoC k zveznih parametričnih krivulj. Pri tem smo zahtevali, da so komponente parametrične krivulje k-krat zvezno odvedljive funkcije. Takim funkcijam ponavadi pravimo tudi gladke funkcije. Medtem ko je zveznost za krivulje in funkcije popolnoma ekvivalenten pojem, to ni več res za gladkost višjega reda. Izkaˇze se, da pojma gladkosti in zveznosti višjih odvodov komponent krivulje v splošnem nista več ekvivalentna. Za motivacijo si oglejmo naslednji primer. PRIMER5.0.2 Najbos:[u 0,u 2 ] E 2,u 0 <u <u 2,zlepekdvehkvadratnih Bézierovihkrivuljs 0 ins,definiranihvlokalnihparametrihkot s 0 (t) =p 0 B 2 0 (t) +p 0 B 2 (t) +p B 2 2 (t), t =u u 0 0, s (t) =p B 2 0 (t) +p B 2 (t) +p 2 B 2 2 (t), t =u u, kjersop 0 = (0, 2) T,p = (0,0) T inp 2 = (2,0) T interpolacijsketočke.očitno je d du s(u 0) = ( ) d 0 0 dt s 0 () = = d 0 dt s (0) = d du s(u +0), zatojezlepeksc zvezenna [u 0,u 2 ].Todaizslike5.jerazvidno,daimaskot geometrijski objekt v koordinatnem izhodišču vogal. Najbosedajsdefinirannadistodomeno,njegovasegmentapa ( ) s 0 (t) =p 0 B0 2 2 (t) + 2 ( ) s (t) =p B0 2 (t) + B 2 (t) +p B 2 2 (t), t =u u 0 0, (5.) B 2 (t) +p 2 B 2 2 (t), t =u u. (5.2) 35

p p 2 5. Definicija geometrijske zveznosti Geometrijsko zvezne krivulje p p 2 p 0 p 0 Slika5.: Zveznoodvedljivakrivuljavtočkip 0 imalahkošpico(levo), lahkopajenapogledgladkavp 0,anizveznoodvedljiva(desno). Zaodvodvdelilnitočkiu sedajdobimo d du s(u 0) = d 0 dt s 0 () = ( ) 4, 0 4 d du s(u +0) = d dt s (0) = ( ) 2. 2 Torejbokrivuljavstičnitočkiu zveznoodvedljivasamovprimeru,kobo 0 = 2. Prejšnji primer pokaˇze, da imamo lahko krivulje, ki so formalno zveznoodvedljivevnekitočki,paimajotamšpico,alipasogeometrijsko gladke v neki točki, pa tam niso formalno zvezno odvedljive. Videli bomo, da se takim primerom lahko izognemo, če ne dopuščamo ničelnih tangentnih vektorjev(regularna krivulja), ali pa krivuljo ustrezno reparametriziramo, da postane formalno gladka. 5. Definicija geometrijske zveznosti V tem razdelku si bomo ogledali nekaj ekvivalentnih definicij t.i. geometrijske zveznosti. Začnimo z osnovno. DEFINICIJA5.. Najbostas 0 : [u 0,u ] E d ins : [u,u 2 ] E d takavsaj k-kratzveznoodvedljivaregularnasegmentaparametričnekrivuljes:[u 0,u 2 ] 36

5. Definicija geometrijske zveznosti Geometrijsko zvezne krivulje E d,dajes [uj,u j+ ] =s j,j =0,.Privzemimo,dajeszveznavtočkiu,torej p:=s 0 (u ) =s (u ).Krivuljasjevtočkipgeometrijskozveznaredak(G k zvezna),čeobstajatakaregularnagladkabijektivnareparametrizacija ρ:[v 0,v ] [u 0,u ], ρ (v ) >0,daje d l du ls (u ) = dl dt l (s 0 (ρ(v )), l =,2,...,k. Preprostejelahkodefinicijopovzamemotakole:krivuljajeG k zvezna,če jec k zveznavnekireparametrizaciji.mnogiavtorjidefinirajog k zveznost tako,dazaparametrizacijo,vkaterijekrivuljac k zvezna,zahtevajo,daje naravna. DEFINICIJA5..2 Zagladkoparametričnokrivuljos:[a,b] E d,definirano gledenaparametert [a,b],jenaravniparametersdefinirankot η(t) = t a s (τ) dτ. (5.3) KerstavpraksinajpomembnejšiG ing 2 zveznosti,sijupoglejmo podrobneje.izdefinicije5..izluščimo,damorazag zveznostveljati d du s (u ) = ρ (t ) d du s 0 (u ). (5.4) Kerjepodefiniciji ρ (t ) >0,seodtodhitrovidi,dastaenotskatangentna vektorjanas 0 ins vtočkipenaka.geometrijskazvenznostredajetorej ekvivalentna zveznosti enotske tangente. PRIMER 5.. Vrnimo se k drugi krivulji iz primera 5.0.2. Izberimo konkretno parametrizacijo,kineizpolnjujepogojazac zveznost,naprimeru j =j,j = 0,,2. Segments 0 reparametrizirajmosparametrizacijo ρ:[,] [0,], ρ(v) = (v +)/2.Potemjezav [,] ( ) s 0 (ρ(v)) =p 0 B0 2 0 ((v +)/2) + ter B 2((v +)/2) +p B2 2 ((v +)/2) ( ) d du s (0) = = ρ () d du s 0 () = ( ) ( 2 =, 2 2 ) inkrivuljajeresg zvezna. 37