Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
44
1.KRZYWEBÉZIERA
algorytmdeCasteljaudlałamanej,którejwierzchołkitworząpierwszyciągwypi-
sanywyżej,dzielącodcinkiwproporcjis:u1s,albodlałamanejowierzchołkach
zdrugiegociągu,wproporcjis1u:11s.
Zbadanieformbiegunowychdoprowadziłowięcdowniosku,żealgorytmde
Casteljauopróczpunktu!(t)wytwarzatakżełamanekontrolnefragmentówłuku
krzywejodpowiadającychodcinkom[07t]i[t71].Wkażdymznichmożemy
wprowadzićlokalnyparametrzmieniającysięod0do1iwtedyotrzymanepunkty
współczynnikamikrzywejwbaziewielomianówBernsteina,którychargumen-
temjesttenparametr.Ponieważnapodstawiepunktówkontrolnychfragmentów
łukówmożemywyznaczyćwszystkiepunktykrzywej,algorytmdeCasteljaureali-
zujeobcinanienarożnikówłamanejkontrolnej,któregorekurencyjnestosowanie
dołamanejzłożonejzłamanychkontrolnychfragmentówprowadziwgranicydo
otrzymaniakrzywejBéziera.Zamiastdowodzićzbieżnoćtegoprocesudokrzy-
wejBézierawtymmiejscu,wykażemydalejznacznieogólniejszetwierdzenie5.5,
dotyczącekrzywychB-sklejanych.
WersjęalgorytmudeCasteljau,któradokonujepodziału,tj.wyznaczapunkty
kontrolnefragmentówłuku,możemyzapisaćnaprzykładtak:
{![i]1!idlai107...7n.}
I[0]:=![0];
forj:=1tondobegin
fori:=0ton1jdo
![i]:=(11t)![i]+t![i+1];
I[j]:=![0]
end;
{tablicaIzawierapunktykontrolnełuku[07t],tablica!łuku[t71].}
Rysunek1.11.KrzywaBéziera,łamanekontrolnejejfragmentówiichotoczkiwypukłe
Zbieżnoćprocesuobcinanianarożnikówpolegającegonarekurencyjnymsto-
sowaniualgorytmudeCasteljaujestdoćszybka,wzwiązkuzczympodokona-
niupodziałukrzywejnadostateczniekrótkiełukimożemynarysowaćichłamane