Sunteți pe pagina 1din 22

a x y

PROIECTARE ASISTATA DE CALCULATOR CURS 11

MODELAREA GEOMETRIC
6 Modelarea suprafeelor
Noiunea intuitiv de suprafa reprezint un set continuu de puncte care aproximeaz un plan n vecintatea fiecruia dintre puncte. Din punct de vedere matematic, mai concis, putem considera o suprafa ca fiind o familie de puncte cu doi parametri. O alt concepie, analog noiunii de curb, este aceea a unei suprafee ca fiind locul geometric al unui punct ce se mic cu dou grade de libertate. n plus, putem descrie suprafeele cu proprieti speciale, de exemplu, ca fiind locul geometric al punctelor unei linii sau curbe n micare. Aceste noiuni devin folositoare modelrii geometrice, cnd sunt exprimate din punct de vedere analitic. Ecuaiile i caracteristicile intrinseci ale unei suprafee sunt un subiect al geometriei difereniale i sunt mult mai subtile i complexe dect acelea ale unei curbe. 6.1 Ecuaiile implicite i explicite ale suprafeelor O ecuaie de forma

f ( x, y, z) = 0

(58)

este o ecuaie implicit a unei suprafee, unde cum ar fi:


i , j ,k

i ijk

f ( x, y, z) j k z =0

este un polinom n x , y

i z ,

Din algebra elementar se tie c gradul oricrui termen n aceast ecuaie este suma exponenilor variabilelor. Cu alte cuvinte, gradul aij x i y j z este i + j + k . termenului k
k

Gradul expresiei polinomiale n sine este gradul maxim al fiecrui termen al acesteia n parte. Dac aceast ecuaie este liniar dup toate variabilele, atunci suprafaa este un plan nelimitat. Dac este o ecuaie de gradul doi, atunci suprafaa este ptratic, la care sfera este un caz special. n sfrit, dac una din variabile lipsete din ecuaie, suprafaa trebuie s fie un cilindru ale crui generatoare sunt paralele cu axa variabilei care lipsete. Cnd se rezolv ecuaia implicit dup una din variabile, funcie de celelalte dou, de exemplu, pentru funcie x i y , se obine: z de (59) z = f ( x, y) Aceasta reprezint aceeai suprafa ca ecuaia (58). Totui, aceast form este ecuaia explicit a suprafeei. Este, de asemenea, posibil s se exprime orice suprafa parametric raional i iraional printr-o ecuaie implicit. Dei formele --

implicit i explicit sunt necesare, n reprezentarea suprafeelor, acestea sufer de o slbiciune inerent probat de incapacitatea de a reprezenta uor o suprafa transformat i mrginit. Pe de alt parte, ele prezint posibiliti deosebite asociate cu calculele interseciei, clasificarea punctelor, etc. n continuare este dat un procedeu

--

H K
ij

relativ simplu de trasare a suprafeei unei curbe prin puncte, bazat pe o ecuaie explicit (fig. 11) unde se determin z( x, y) =

a x y
i j i =0 j =0

(60)

coeficieni ai dintr-un set specificat de puncte date. Trebuie s se specifice 16 puncte i j pentru un polinom bicubic (adic m = n = 3 ). Dac i sunt mari, atunci este posibil n m s se genereze neintenionat s uprafee cu oscilaii nedorite.

Fig. 11. Reprezentarea unei suprafae explicite 6.2 Suprafee ptratice O suprafa ptratic este aceea la care reprezentarea implicit este dat de f ( x, y, z) = 0 , f ( x, y, este un polinom ptratic. Forma algebric a unei suprafee z) unde ptratice este dat de ecuaia Ax 2 + B y2 + C z2 + 2Dxy + 2Eyz + 2Fxz + 2Gx + 2Hy + 2Jz + K (61) =0 De exemplu, A = B = C = K = 1 D = E = F = G = H = J = 0 , atunci dac i ecuaia produce o sfer unitar n origine. n form matriceal, se poate scrie ecuaia (61) ca: T PQP = (62) unde P = y z 1]
0

[x

i
A D F G D B E Q= F E C J G H J

(63)

Cei zece coeficieni ai lui Q nu au un sens geometric sau fizic direct. Prin urmare, o form geometric de reprezentare este, de obicei, mult mai practic. Transformarea n form algebric se face numai atunci cnd acest lucru este necesar din punct de vedere --

al calculelor. Cu toate acestea, pot aprea probleme de calcul cnd sunt utilizate oricare din cele dou forme. Sursa acestor probleme este nsi natura reprezentrii i calculului datelor reprezentate n virgul mobil, incluznd nivelel sczut al acurateei i lipsa de robustee a caracteristicilor suprafeei intrinsece supuse transformrilor repetate. Acest lucru poate s degradeze ncet datele iniiale. Abaterile coeficienilor pot produce schimbri radicale n privina tipului suprafeei calculate. Fiecare suprafa ptratic, se poate reprezenta printr-un set de date constnd din vectori, scalari i indicatori de tip.

--

6.3 Ecuaiile parametrice ale suprafeelor Cel mai simplu i mai comun mijloc matematic folosit n modelarea superficial este suprafaa elementar. Aceasta constituie o cale convenabil de a detalia o suprafa complex n elemente uor de manevrat. n acest fel, elementul de suprafa este analog segmentului unei curbe B-spline. O suprafaa elementar este o colecie de puncte ale unei curbe mrginite, ale cror coordonate sunt date de polinoame continue, cu doi parametri, de forma: x = x(u, w) y = y(u, z = z(u, (64) w) w) n care variabilele parametrice u, w [0,1] . i sunt cuprinse n u w intervalul Aceast construcie genereaz o suprafaa elementar dreptunghiular. Exist i alte formulri, care produc suprafae elementare triunghiulare sau altele nerectangulare. Fixnd valoarea uneia dintre variabilele parametrice, rezult o curb pe suprafaa elementar n funcie de alte variabile, care rmn libere. Prin continuarea acestui proces, prima dat pentru o variabil i apoi celelalte pentru oricare numr de valori arbitrare din intervalul permis, se formeaz o reea parametric de dou familii de curbe cu un singur parametru, astfel nct doar o curb din fiecare familie trece prin fiecare punct p(u, w) . Sensul pozitiv pe fiecare curb este sensul n care cresc parametrii. Fiecrei suprafae elementare i se asociaz un set de condiii la limit (fig. 12). Cele mai evidente dintre acestea sunt patru puncte de col i cele patru curbe care le definesc marginile. Altele elemente importante sunt vectorii tangeni, vectorii normali i vectorii de torsiune, pentru suprafaa elementar cubic hermitic. Pentru o suprafaa elementar dreptunghiular simpl, exist ntotdeauna patru puncte de col i patru curbe de frontier. Aceasta rezult din combinaiile posibile ntre dou limite ale celor dou variabile parametrice. Punctele de col se afl prin nlocuirea acestor patru combinaii de 0 i 1 p(u, pentru a p(0,0) p(0,1) p(1,0 i p(1,1) . Pe de alt w) ) n obine , , parte, curbele de frontier sunt funcii de una sau dou variabile parametrice. n acest caz, una din variabile rmne liber iar celelalte sunt fixate pe valorile limit corespunztoare. Acest procedeu rezult n patru, i numai patru, combinaii posibile, dnd funciile a patru curbe p(u,0) , p(u,1) p(0, i p(1, w) . Sunt date cteva w) limit , exemple de suprafae elementare parametrice i ecuaiile lor de definiie. Cea mai simpl este planul. Urmtoarele ecuaii parametrice reprezint un segment

--

Fig.12. O suprafa parametric elementar dreptunghiular din planul


x, y .

z= (65) a b 0 unde u, w [0,1] . Figura 13 ilustreaz aceast suprafa elementar, artnd i coordonatele x, ale fiecrui punct de col. Curbele de w sunt linii drepte y constant paralele cu x . Liniile de u , sunt paralele cu y . Marginile acestui axa constant axa plan x=a x=c y=b y=d. sunt , , i
x = (c a)u + y = (d b)w +

--

Fig. 13. Coordonatele parametrice ale unui plan 6.4 Suprafaa Hermite bicubic Dou familii de curbe hermitice cubice care formeaz o reea parametric constituie baza suprafeei bicubice hermitice. Un produs tensorial furnizeaz un polinom

--

12

22

21

20

u +

cu 16 termeni la care se aplic condiiile la limit, genernd forma geometric. Patru puncte de col, mpreun cu doi vectori tangeni i un vector de torsiune, reprezint condiiile necesare i suficiente pentru a defini o suprafa elementar hermitic bicubic. Rezult c sunt suficiente 16 puncte, dintre care patru interioare. Reparametrizarea, secionarea i subdivizarea unei suprafee elementare se aplic n acelai mod ca i pentru curbe. O suprafa complex poate fi definit printr-o colecie mixt de suprafee elementare, innd cont de anumite cerine de continuitate. 02 6.4.1 Formele algebric i geometric Forma algebric a unei suprafee elementare hermitice bicubice este dat de produsul tensorial
p(u, w) = a ij u i w
j 3 3

(66)

unde

i =0 j =0

(67)
u, w [0,1]

Vectori a reprezint coeficienii algebrici ai suprafee elementare. Raiunea de folosire i ij a termenului "bicubic" este evident, deoarece ambele variabile parametrice sunt termeni cubici, a 33 0 . Se observ c ntocmai ca i n cazul curbelor hermitice, dac variabilele parametrice u i w sunt, de regul, limitate n intervalul nchis [0,1]. Acest lucru face ca suprafea elementar s fie mrginit uniform. Se va discuta, mai trziu, aceast limitare i utilizarea frontierelor neregulate. Metoda produsului tensorilor permite definirea unei suprafee elementare dreptunghiulare ca fiind un produs al polinoamelor care definesc curba. Extinderea ecuaiei (66) i aranjarea a ij n termenilor ordine descresctoare produce un rezultat asemntor ecuaiei (21) pentru curbe: p(u, w) = a 3 3 u
3

w
2

+ a 32 u
3

3 2

w +a
2 31 2

w + a 3 0u + u w+a
2 2

u (68)

+ a 23 u w + a

u w + a
11

+ a13 uw 3 + a uw 2 + a + a 03 w + a w + a
3 2 01

uw + a10 u +

w + a 00

Acest polinom cu 16 termeni n i definete setul tuturor punctelor de pe elementul u w de suprafa i este forma algebric extins a suprafeei elementare bicubice hermitice. a are trei componente independente, Deoarece fiecare din cei 16 coeficieni vectoriali ij rezult un total de 48 coeficieni algebrici sau 48 grade de libertate. Astfel, fiecare component vectorial este --

33 x

32 x

x(u, w) = a u w
3

+a u w
2

+ a31x w + L + u a00 x

(69)

cu expresii similare pentru y(u, i z(u, w) . w) n notaie matriceal, forma algebric este:
p(u, w) = UAW
T

(70)
u 1

unde

U= u

u
2

w
3

w 1 a 31 a
21

]
20

W = w3

a a

32

a 30 a10
00

22 a 33 a a 12 a 01 A = a 02 23

a11

a13 a 03

--

Datorit ordinului elementelor


U

i W , indicii elementelor vectoriale din matricea A

corespund celor din ecuaia (70). Acetia nu corespund, n acest caz, conveniei normale de indexare a matricelor. Cum elementele sunt vectori cu trei componente, a matricea A are o 4 4 3. distribuie Aa cum s-a artat la curbele hermitice, coeficienii algebrici ai unei suprafee elementare hermitice determin forma i poziia acesteia n spaiu. Suprafee elementare de aceeai mrime i form au un set diferit de coeficieni, dac ele ocup poziii diferite n spaiu. Dac se schimb oricare din cei 48 de coeficieni se obine o suprafe elementar diferit. De fiecare dat cnd se introduce o pereche specific de valor u, n ecuaia (70), se genereaz un punct pe suprafaa elementar. Dei w i valoril u, sunt limitate de ecuaia (67), domeniul variabilelor x , i nu este e w y z restrns, deoarece intervalul coeficienilor nu este limitat. O suprafa elementar const ntr-un numr infinit de puncte date de coordonatele lor x, y, z . n spaiul parametric corespunztor exist un numr infinit de perechi de u, w . Unui punct valori oarecare i este asociat o pereche unic de u, w . Figura 14 arat o suprafa valori elementar bicubic generat n spaiul modelului pe baza componentelor acesteia din spaiul parametric. Exist, de asemenea, patru puncte de col p(0,0) p(1,0) p(0,1) unice , , i sau p 00 , p 01 , p10 , p11 . Dac se inverseaz secvena u, w , forma p(1,1) parametrizrii suprafeei nu se schimb. i, pe lng orice limitri externe ale modelrii (de exemplu, direcia normalelor

--

Fig. 14. O suprafaa elementar hermitic generat n spaiul modelului din componentele ei din spaiul parametric

--

suprafeei), exist libertate aproape total n alegerea schemelor de parametrizare care definesc curbele limit. p(0, trebuie s fie opus, pe suprafaa elementar, lui w) Desigur, p(1, w) , iar trebuie s fie opus lui p(u,1) .
p(u,0)

6.5 Suprafeele Bzier Suprafaa Bzier este extensia direct a curbei Bzier. O serie de discuii care au fost abordate la curbele Bzier, nu mai sunt reluate aici. 6.5.1 Suprafaa elementar Bzier Punctele de pe suprafaa elementar Bzier sunt date de produsul tensorial, care se obine ca simpl extindere a ecuaiei generale a curbei Bzier:
p(u, w) = p ij Bi,m (u)B j ,n
m n

u, w [0,1] (m + 1) (n + 1)

(71) de puncte de control care

unde p i,
j

(w)
i =0 j =0

reprezint o reea dreptunghiular de

definesc vrfurile poliedrului caracteristic al suprafeei elementare Bzier, care se situeaz n totalitate n interiorul suprafeei B j ,n sunt funciile de Bi ,m (u) convexe. (w) i baz, definite n acelai mod ca i curbele Bzier. Ecuaia pentru o suprafe elementar Bzier este:
p(u, w) = UM B PM B W

matriceal

general (72)

sau
p(u, w) = U 1m M B,mm PmnT B,nnT M Wn1

unde dimensiunile matricelor depind de dimensiunile reelei punctelor de control. Indicii matricei nu sunt repetai n expresiile ulterioare, i sunt utilizai aici numai pentru a arta relaia acestora cu punctele de control. Suprafea elementar Bzier nu necesit s fie descris de o reea ptrat a punctelor de control, dei se va ncepe cu studierea unei dispuner 4 4 a punctelor care definesc suprafea elementar bicubic Bzier. i 6.5.2 Suprafaa elementar bicubic Bzier O suprafa elementar bicubic Bzier se poate exprima ntr-o form similar cu suprafa elementar bicubic hermitic. Folosind reprezentarea binomial a curbei 44 cubice Bzier, ecuaia matriceal pentru un element de suprafa definit de o reea a punctelor de control este:
T p(u, w) = U 14 M B,44 P44 M B,44 W41 T

(73)

unde indicii matricelor indic dimensiunea lor. Extinznd aceast ecuaie, se obine:
(1 w) 3
2

--

p(u, w) = (1 u)
3

3u(1 u)
2

3u (1 u)

3w(1 ]P w)

(74)

3w 2 (1 w)

unde

p 1 = Pp 21 p p
41 31 1

p12 p
22

p13 p
23

p14
24

p
32

p
33

w3

(75)

p
42

p
43

p 34
44

--

3i

Matricea P conine punctele care definesc poliedrul caracteristic i, n consecin, suprafaa elementar Bzier. Figura 15 ilustreaz punctele de control, poliedrul i suprafaa elementar rezultat. n formularea Bzier bicubic, numai patru puncte de i p col sunt situate pe suprafaa elementar. Punctele p 11 , p 41 , p 14 , 44
p 21 , p 31 , p 12 , p 13 , p 42 , p 43 , p 24

i p
34

controleaz pantele capt la curbele margine. Patru controleaz pantele de-a lungul curbelor de frontier,

puncte interioare

p 22 , p 32 , p
23

i p
33

la fel ca vectorii de torsiune n cazul suprafeei elementare bicubice hermitice. Aa cum arat aceast figur, suprafaa elementar Bzier este complet definit de o reea de puncte de control care descriu dou familii de curbe Bzier. Fiecare curb de frontier este definit de un poligon cu patru vrfuri. Creterea numrului de puncte folosite, are ca efect majorarea gradului polinomului.

Fig. 15. Suprafaa elementar cubic Bzier Se consider generarea unei curbe izoparametrice pe suprafaa elementar bicubic Bzier, pentru w = wi , constant. Urmtorul produs matriceal furnizeaz patru puncte care definesc curba Bzier pentru wi :
3 p1 (1 w ) 2 p2 = P 3wi (1 wi ) p 3 3w2 (1 w ) i i

(76)

p 4 wi unde indicii lui p1 , p i aa mai departe, indic faptul c aceste puncte definesc curba.
2

Punctul p1 este situat pe curbei de frontier --

p 0 w , iar punctul p este situat pe curba


4

p1w . Punctele p
2

i p controleaz pantele la ambele capete ale curbei, dar nu se


3

situeaz pe aceasta. Se poate scrie acum o expresie a unui punct pe suprafaa elementar de-a lungul curbei p(u, wi ) :

--

p(u, w ) = (1 u)
3

3u(1 u)
2

3u (1 u)

p1 p 3 u

(77)

p 3 p 4 n aceast relaie, fiecare valoare u furnizeaz un punct pe suprafaa elementar. Un procedeu similar este utilizat pentru a defini curbele de frontier. De exemplu, curba u = este 0 (1 w) 3 2

p(0, w) = [p p 11

12

3w(1 p p ] w) 13 14 3w 2 (1 w) w3

(78)

Curba de frontier, pentru

w= 0

este:

p(u,0) = (1 u)
3

3u(1 u)
2

p14 p 2 3 3u (1 u

(79)

u)

p 34 p 44
24

Celelalte dou curbe limit sunt definite n acelai mod. Difereniind ecuaia (74), rezult vectorul de torsiune n fiecare punct de pe suprafaa elementar bicubic Bzier: p
uw

(u, w) = (3u + 6u

(9u 12u + 3)

(9u + 6u)

(3u )
2

3)

(3w 2 + 6w 3) 2 (9w 12w + 3) P (9w 2 + 6w) ) (3w


2

(80)

Vectorii de torsiune, n punctele de col ale suprafeei elementare, sunt dai de: uw --

p 00 = 9(p11 p 21 p12 + p 22
uw 10 uw 01 uw 11

) = 9 (p 31 p 41 p 32 + p 42 ) = 9(p13 p 23 p14 + p 24 )

(81)

= 9 (p 33 p 43 p 34 + p 44 ) Este evident c numai patru puncte de control adiacente la punctul de col n discuie, afecteaz vectorul de torsiune n acel punct. 6.6 Suprafee B-spline Ecuaia unei suprafee B-spline rezult direct din ecuaia unei curbe B-spline. Aceast relaie este analog cu cea dintre curbele i suprafeele Bzier. n continuare, este definit suprafaa B-spline, ca i suprafaa Bzier, n funcie de poliedrul caracteristic. Forma suprafeei aproximeaz poliedrul. Aproximaia este cu att mai slab cu ct gradul este mai mare. 6.6.1 Forma tensorial a suprafeei B-spline

--

st

Ecuaia produsului tensorial al suprafeei B-spline este: p(u, w) =

p ij N i ,k (u) N j ,l (w) i =0 j =0

(82)
N i ,k (u)

unde p sunt punctele de control i reprezint vrfurile poliedrului caracteristic.


ij

i N j ,l (w)

sunt funciile de baz, i sunt aceleai cu cele de la curbele B-spline. Gradul

polinoamelor fiecrei funcii de baz este controlat de i respectiv l . Pentru o k suprafa B-spline neperiodic, se calculeaz valorile k , l, m, i valorile nodurilor ti lui n i t j , ca i pentru curbe. Se N j ,l folosind ecuaii de recuren. N i ,k (u) calculeaz (w) i Se observ c sunt necesare dou seturi de valori nodale i c punctele de control formeaz o reea (m + 1) (n + 1) . 6.6.2 Forma matriceal Forma matriceal pentru suprafaa B-spline este similar cu forma care a fost dezvoltat pentru curba B-spline. S-a artat c o curb B-spline este calculat pe segmente ale unui interval unitar al variabilei parametrice. Pentru a calcula elemente de suprafa B-spline, este folosit un ptrat unitar n variabilele parametrice u i w . Ecuaia matriceal general a unei suprafee B-spline deschise, periodice, care aproximeaz o reea dreptunghiular a punctelor (m + 1) (n + este:
1)

s [1 : m + 2 k ] p (u, w) = UM PM W t [1 : n + 2
T T

(83)

l] u, w [0,1]

unde i indic parametrii care controleaz continuitatea suprafeei, gradele k l polinoamelor funciilor de baz i dimensiunile matricelor. Indicii i identific un s t element de suprafa particular. Intervalul lui s i este o funcie de parametri i l i t k de dimensiunea reelei dreptunghiulare a punctelor de control. Matricea U este: L u 1 U= uk uk (84) i W 2 este: L w (85) 1 1

W= w 1 Elementele ntregii matrice

w
2

k de puncte de control necesare pentru a umple l --

Pkl

depind de un element de suprafa particular. Dac matricei, atunci: Pkl = p


ij

p
ij

indic aceste elemente ale

i [s 1 : s + k 2] j [t 1 : t + l 2]

(86)

Matricea M este identic cu matricea transformrii pentru curba B-spline.


S

6.6.3 Suprafeele B-spline deschise Dac suprafaa B-spline este parial nchis - adic rulat ntr-un tub cu capete deschise - atunci intervalele s, i i, trebuie s reflecte aceast nchidere. De dup t j exemplu, cnd curbele w = constant sunt nchise, atunci

--

s [1 : m + 1] t [1 : n + 2 l] i [(s 1) mod(m + 1) : (s + k 2) mod(m + 1)] j [t 1: t + l 2] Expresii similare se aplic atunci cnd u = constant sunt nchise. n figura curbele urmtoare este reprezentat n mod idealizat o reea de puncte de control i reeaua suprafeelor elementare generate, pe o diagram bidimensional, cu punctele dispuse rectangular. Liniile solide reprezint marginile feelor poliedrului caracteristic. Liniile ntrerupte reprezint frontierele suprafeei elementare. n unele scheme idealizate, aceste linii se suprapun (fig. 16). (87)

Fig. 16. Idealizri ale suprafeei B-spline ptratic deschis Elementele de suprafa sunt uor umbrite. Aceast tehnic este folositoare pentru --

explorarea efectelor parametrilor asupra relaiei dintre punctele de control i elementele de suprafa. n continuare se prezint un exemplu de suprafee B-spline periodice, rezultate din ecuaia (83). k = l = 3 , este generat o suprafa B-spline ptratic. Cnd Aceast suprafa are o continuitate 3 3 peste tot i necesit minim o reea 1 C de 3 suprafee puncte de control (fig. 16a). Dac m = i n = 5 , rezult o reea elementare (fig. 16b). 4 de 4

--

6.6.4 Suprafee B-spline raionale neuniforme Suprafaa NURBS este, ca i suprafaa Bzier raional, proiecia central ntr-un spaiu tridimensional al unei hipersuprafee obinute printr-un produs de tensori cu patru dimensiuni. Caracteristicile geometrice ale curbelor NURBS se aplic, n general, suprafeei, care este exprimat prin:

(w) p(u, w) =
m n

hij p ij N i ,k (u) N j ,l (88)

i =0 j =0

hij N i ,k (u) N j ,l (w) i =0 j =0

unde cu

hi au fost notate ponderile. Ca i n cazul curbelor raionale, crescnd valorile


j

ponderilor, suprafaa este mpins spre punctele de control corespunztoare.

--

S-ar putea să vă placă și