uses graph, crt; type punkt=record x, y, z: real; end; joon=record p:array[1..8]of punkt; end; var jn: joon; abi, nurk: real; i, d, m, keskx, kesky: integer; begin d:=detect; initgraph(d, m, ''); jn.p[1].x:= 10; jn.p[1].y:= 50; jn.p[1].z:= 50; jn.p[2].x:= 10; jn.p[2].y:= 50; jn.p[2].z:= 10; jn.p[3].x:= 50; jn.p[3].y:= 50; jn.p[3].z:= 10; jn.p[4].x:= 50; jn.p[4].y:= 50; jn.p[4].z:= 50; jn.p[5].x:= 10; jn.p[5].y:= 10; jn.p[5].z:= 50; jn.p[6].x:= 10; jn.p[6].y:= 10; jn.p[6].z:= 10; jn.p[7].x:= 50; jn.p[7].y:= 10; jn.p[7].z:= 10; jn.p[8].x:= 50; jn.p[8].y:= 10; jn.p[8].z:= 50; nurk:=Pi/10; keskx:=getmaxx div 2; kesky:=getmaxy div 2; repeat for i:=1 to 8 do begin abi:=jn.p[i].x; jn.p[i].x:=jn.p[i].x*cos(nurk)-jn.p[i].z*sin(nurk); jn.p[i].z:=abi*sin(nurk)+jn.p[i].z*cos(nurk); end; cleardevice; setcolor(green); line(keskx+round(jn.p[1].x), kesky+round(jn.p[1].y), keskx+round(jn.p[2].x), kesky+round(jn.p[2].y)); line(keskx+round(jn.p[2].x), kesky+round(jn.p[2].y), keskx+round(jn.p[3].x), kesky+round(jn.p[3].y)); line(keskx+round(jn.p[3].x), kesky+round(jn.p[3].y), keskx+round(jn.p[4].x), kesky+round(jn.p[4].y)); line(keskx+round(jn.p[4].x), kesky+round(jn.p[4].y), keskx+round(jn.p[1].x), kesky+round(jn.p[1].y)); setcolor(yellow); line(keskx+round(jn.p[1].x), kesky+round(jn.p[1].y), keskx+round(jn.p[5].x), kesky+round(jn.p[5].y)); setcolor(red); line(keskx+round(jn.p[2].x), kesky+round(jn.p[2].y), keskx+round(jn.p[6].x), kesky+round(jn.p[6].y)); line(keskx+round(jn.p[3].x), kesky+round(jn.p[3].y), keskx+round(jn.p[7].x), kesky+round(jn.p[7].y)); setcolor(yellow); line(keskx+round(jn.p[4].x), kesky+round(jn.p[4].y), keskx+round(jn.p[8].x), kesky+round(jn.p[8].y)); setcolor(blue); line(keskx+round(jn.p[5].x), kesky+round(jn.p[5].y), keskx+round(jn.p[6].x), kesky+round(jn.p[6].y)); line(keskx+round(jn.p[6].x), kesky+round(jn.p[6].y), keskx+round(jn.p[7].x), kesky+round(jn.p[7].y)); line(keskx+round(jn.p[7].x), kesky+round(jn.p[7].y), keskx+round(jn.p[8].x), kesky+round(jn.p[8].y)); line(keskx+round(jn.p[8].x), kesky+round(jn.p[8].y), keskx+round(jn.p[5].x), kesky+round(jn.p[5].y)); delay(150); until keypressed; closegraph; end.