Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Doar rabdarea si perseverenta in invatare aduce rezultate bune. stiinta, numere naturale, teoreme, multimi, calcule, ecuatii, sisteme


Biologie Chimie Didactica Fizica Geografie Informatica
Istorie Literatura Matematica Psihologie

Matematica


Index » educatie » Matematica
Suprafete Bezier - poligonul Bezier


Suprafete Bezier - poligonul Bezier




Tema: Suprafete Bezier

 

1) Se da poligonul Bezier al unei curbe plane, b=[1 0 ; 2/3 1/3 ; 2/3 4 ; 0 2]. Se considera suprafata cilindrica avand ca profil curba plana, care este transportata paralel pe verticala pana la inaltimea h=3.

a) calculati coordonatele punctelor retelei Bezier ale suprafetei obtinute prin translatia punctelor Bezier ale curbei in planurile z=0, z=1, z=2, z=3.

R: Sunt 4x4 puncte in 3 dimensiuni

b) calculati suprafata folosind reprezentarea cu ajutorul polinoamelor Bernstein

c) reprezentati grafic suprafata.

u=linspace(0,1,20);

v=linspace(0,1,20);

bx=ones(4,1)*[1 2/3 2/3 0];

by=ones(4,1)*[0 1/3 4 2];

bz=[0 1 2 3]'*ones(1,4);

B0u=[(1-u).^3];

B1u=[3*(1-u).^2.*u];

B2u=[3*(1-u).*u.^2];

B3u=[u.^3];

B0v=[(1-v).^3];

B1v=[3*(1-v).^2.*v];

B2v=[3*(1-v).*v.^2];

B3v=[v.^3];

Bu=[B0u; B1u ; B2u ; B3u ];

Bv=[B0v; B1v ; B2v ; B3v ];

x=Bu'*bx*Bv;

y=Bu'*by*Bv;

z=Bu'*bz*Bv;

surf(x,y,z);

axis equal;

bx=ones(4,1)*[1 2/3 2/3 0];

by=ones(4,1)*[0 1/3 4 2];

bz=[0 1 2 3]'*ones(1,4);

shading interp;

colormap('cool');

hold on

axis off

plot3(bx,by,bz,'b-');

plot3(bx',by',bz','b-');

d) * reprezentati grafic reteaua punctelor Bezier ale suprafetei

2) Creati o suprafata Bezier 'propie' in MATLAB in modul urmator:

a) Creati cimpuri de date bx, by, bz de dimensiune 4x4 pentru coordonatele

x,y,z ale punctelor Bezier, alegind cite 16 numere si scriindu-le in cimpurile de date.

bx=[1 5 9 0 ; 1 5 9 0 ; 1 5 9 0 ;1 5 9 0];

by=[4 2 2 4 ; 4 2 2 4 ; 4 2 2 4 ; 4 2 2 4];

bz=[0 3 4 5 ; 0 3 4 5 ; 0 3 4 5 ; 0 3 4 5];

b) Generati parametrii suprafetei cu comanda meshgrid.

u=linspace(0,1,100);

v=linspace(0,1,100);

c) Calculati coordonatele X,Y,Z ale punctelor suprafetei folosind formula de calcul cu ajutorul polinoamelor Bernstein.

x=[B0u; B1u ; B2u ; B3u ]'*bx*[B0v; B1v ; B2v ; B3v ];

y=[B0u; B1u ; B2u ; B3u ]'*by*[B0v; B1v ; B2v ; B3v ];

z=[B0u; B1u ; B2u ; B3u ]'*bz*[B0v; B1v ; B2v ; B3v ];

d) Reprezentati grafic suprafata (si reteaua ei Bezier *).







Politica de confidentialitate


Copyright © 2019 - Toate drepturile rezervate

Matematica


Statistica


STRUCTURI DE DATE DINAMICE IN ALOCARE STATICA
Conul
Functii convexe, concave
Trigonometrie
Introducere in notiunea de functie
Izomorfismul spatiilor vectoriale finit generate
Functii inversabile
Proprietatile logaritmilor
NUMERELE NATURALE DE LA 30 LA 100
Familii de submultimi ale unui spatiu