Курсовая работа: Построение трехмерной модели вазы

v1[polygons[i].b].z*(v1[polygons[i].c].x-v1[polygons[i].a].x)+

v1[polygons[i].c].z*(v1[polygons[i].a].x-v1[polygons[i].b].x);

n[i].z:=v1[polygons[i].a].x*(v1[polygons[i].b].y-v1[polygons[i].c].y)+

v1[polygons[i].b].x*(v1[polygons[i].c].y-v1[polygons[i].a].y)+

v1[polygons[i].c].x*(v1[polygons[i].a].y-v1[polygons[i].b].y);

if (sqrt(sqr(n[i].x)+sqr(n[i].y)+sqr(n[i].z)))<>0 then

n[i].z:=n[i].z/(sqrt(sqr(n[i].x)+sqr(n[i].y)+sqr(n[i].z)))

else n[i].z:=0;

end;

end;

procedure Draw;

var

j,i1,i:integer;

f: real;

begin

Sort;

f:=0;

buf.Canvas.Draw(0,0,blinc_buf); //рисуемвосновномбуферефон

for i1:=1 to nPOLYGON do

begin

//Опред.невидимости грани (слегка затеняем внутреннюю поверхность)

if (n[i1].z>0) then n[i1].z:=n[i1].z*0.60;

end;

for i1:=1 to nPOLYGON do

begin

for i := 1 to nPOLYGON do

if s[i]>f then begin j:=i;f:=s[i];end;

with polygons[j] do

begin

К-во Просмотров: 535
Бесплатно скачать Курсовая работа: Построение трехмерной модели вазы