think pascal
program grafo3D1; { grafica con THINK PASCAL 2.03 tridimensionale} { file progetto...PRO3D.prg } {caricare co ADD FILE routine da INTERFACES e LIBRARIES} {aggiungere con ADD FILE il programma pascal } {caricare in memoria con RUN BUILD contenuto librerie } { libreria FIXMATH.lib e GRAF3D.lib } { provare sintassi con RUN CHECK } {attivare prima di RUN la finestra DRAWING massima}
uses memtypes, quickdraw, osintf, toolintf, fixmath, graf3D; var portagrafica: grafport; portagrafica3D: port3d; inretto: rect; a: integer; lato, centro: fixed;
procedure grafica; begin initgraf(@theport); initcursor; hidecursor; openport(@portagrafica); open3Dport(@portagrafica3D); penpat(black); backpat(white); framerect(portagrafica.portrect); inretto := portagrafica.portrect; insetrect(inretto, 1, 1); lookat(-983040, 655360, 983040, -655360); viewangle(1966080); roll(1310720); pitch(49152000); end;
procedure disegnare; var b: integer; begin lato := 104895 * 2; centro := fixdiv(lato, 131072); for B := 1 to 10 do begin move3D(centro, centro, centro); line3D(0, lato, 0); line3D(lato, 0, 0); line3D(0, -lato, 0); line3D(-lato, 0, 0); move3D(0, 0, lato); line3D(0, lato, 0); line3D(lato, 0, 0); line3D(0, -lato, 0); line3D(-lato, 0, 0); moveto3D(centro, centro, centro); end; end;
begin grafica; disegnare; writeln('premi return per finire'); readln; end.