esercizi di grafica con turbo pascal 1.1 su mac
Program gra5; { esempio per figure geometriche piane con arco }
{$U-}
USES Memtypes,QuickDraw,OSIntf,ToolIntf;
VAR gPort: GrafPort; sagoma: EventRecord; vertici:rect;
procedure arco; begin setrect(vertici,20,20,100,100); fillarc(vertici,50,50,gray); pensize(3,3); setrect(vertici,110,20,200,100); framearc(vertici,50,50); setrect(vertici,210,20,300,100); paintarc(vertici,50,50); setrect(vertici,310,20,360,100); fillrect(vertici,gray); setrect(vertici,20,200,200,300); framearc(vertici,60,60); offsetrect(vertici,20,0); paintarc(vertici,45,90); end;
BEGIN {inizializzazione sottoprogrammi o routine} InitGraf(@thePort); initfonts; InitCursor; HideCursor; OpenPort(@gPort);
{inizio programma principale} PenPat(white); BackPat(Black); EraseRect(gPort.portRect); FrameRect(gPort.portRect); arco; WHILE NOT OSEventAvail(mDownMask + keyDownMask, sagoma) DO; END.
Program gra6; { esempio per figure geometriche piane con ovale }
{$U-}
USES Memtypes,QuickDraw,OSIntf,ToolIntf;
VAR gPort: GrafPort; sagoma: EventRecord; vertici:rect;
procedure ovale; begin setrect(vertici,20,20,200,100); frameoval(vertici); offsetrect(vertici,25,15); pensize(3,3); eraseoval(vertici); frameoval(vertici); offsetrect(vertici,25,15); paintoval(vertici); offsetrect(vertici,25,15); pennormal; filloval(vertici,gray); frameoval(vertici); end;
BEGIN {inizializzazione sottoprogrammi o routine} InitGraf(@thePort); initfonts; InitCursor; HideCursor; OpenPort(@gPort);
{inizio programma principale} PenPat(white); BackPat(Black); EraseRect(gPort.portRect); FrameRect(gPort.portRect); ovale; WHILE NOT OSEventAvail(mDownMask + keyDownMask, sagoma) DO; END.
Program gra7; { CAMBIO COLORE SFONDO E USO DI DRAWSTRING e stili diversi}
{$U-}
USES Memtypes,QuickDraw,OSIntf,ToolIntf;
VAR gPort: GrafPort; sagoma: EventRecord; vertici:rect;
procedure testi; begin { usare come numero font 0,1,2,3,4,5 ,6...9 } { es.0 per chicago..1 per courier..6 per palatino..9 per tymes } { il testo viene stampato con font e dimensioni assegnati } textfont(0); moveto(300,10); drawstring('testo scritto con stili vari'); moveto(10,10); drawstring('testo'); moveto(10,30); textface([bold]); drawstring('testo con grassetto o BOLD '); moveto(10,50); drawstring('testo'); moveto(10,70); textface([italic]); drawstring('testo con grassetto o ITALIC '); moveto(10,90); drawstring('testo'); moveto(10,120); textface([underline]); drawstring('testo con grassetto o UNDERLINE '); moveto(10,150); drawstring('testo'); moveto(10,180); textface([outline]); drawstring('testo con grassetto o OUTLINE '); moveto(10,210); drawstring('testo'); moveto(10,240); textface([shadow]); drawstring('testo con grassetto o SHADOW '); textface([]); { normalizza testo } moveto(100,280); drawstring('testo normale'); end;
BEGIN {inizializzazione sottoprogrammi o routine} InitGraf(@thePort); initfonts; InitCursor; HideCursor; OpenPort(@gPort);
{inizio programma principale} PenPat(black); BackPat(white); EraseRect(gPort.portRect); FrameRect(gPort.portRect); testi; WHILE NOT OSEventAvail(mDownMask + keyDownMask, sagoma) DO; END.
Program gra8; { CAMBIO COLORE SFONDO E USO DI DRAWSTRING e stili diversi} { con penpat black e backpat white si possono usare tutti i font } { con altre combinazioni solo alcuni font sono attivabili } { penpat black,gray,dkgray......backpat white} { penpat white,gray.............backpat black..limiti } { penpat black..................backpat gray }
{$U-}
USES Memtypes,QuickDraw,OSIntf,ToolIntf;
VAR gPort: GrafPort; sagoma: EventRecord; vertici:rect;
procedure testi; begin { usare come numero font 0,1,2,3,4,5 ,6...9 } { es.0 per chicago..1 per courier..6 per palatino..9 per tymes } { il testo viene stampato con font e dimensioni assegnati } textfont(9); moveto(300,10); drawstring('testo scritto con stili vari'); moveto(10,10); drawstring('testo'); moveto(10,30); textface([bold]); drawstring('testo con grassetto o BOLD '); moveto(10,50); drawstring('testo'); moveto(10,70); textface([italic]); drawstring('testo con grassetto o ITALIC '); moveto(10,90); drawstring('testo'); moveto(10,120); textface([underline]); drawstring('testo con grassetto o UNDERLINE '); moveto(10,150); drawstring('testo'); moveto(10,180); textface([outline]); drawstring('testo con grassetto o OUTLINE '); moveto(10,210); drawstring('testo'); moveto(10,240); textface([shadow]); drawstring('testo con grassetto o SHADOW '); textface([]); { normalizza testo } moveto(100,280); drawstring('testo normale'); end;
BEGIN {inizializzazione sottoprogrammi o routine} InitGraf(@thePort); initfonts; InitCursor; HideCursor; OpenPort(@gPort);
{inizio programma principale} PenPat(black); BackPat(gray); EraseRect(gPort.portRect); FrameRect(gPort.portRect); testi; WHILE NOT OSEventAvail(mDownMask + keyDownMask, sagoma) DO; END.