Лабораторная работа: Создание графических объектов с помощью псевдографики

Пермский государственный технический университет

Кафедра: Информационных технологий и автоматизированных систем

Лабораторная работа по теме:

«Создание графических объектов с помощью псевдографики»

По дисциплине «Информатика»

Пермь 2010


Цели и задачи работы

 

1.  Изучить основы работы на языке высокого уровня Turbo Pascal.

2.  Разработать программу, которая бы нарисовала инициалы студента, причем одну из букв раскрасить.

Оборудование и программное обеспечение

- Персональный компьютер

- Манипуляторы клавиатура и мышь

- Программы Turbo Pascal

Ход работы

 

Операторы, необходимы для работы в графической среде Turbo Pascal

·  Uses graph – использование графического режима

·  В разделе переменных описываем gd (графический драйвер), gm (графический режим), error (сообщение об ошибке)

·  Запуск графического режима осуществляется следующим образом:

Initgraph (gd,gm,'');

gd:=detect;

error:=graphresult;

if error <>0 then

Begin

writeln('Обнаружена ошибка ');

halt;

end;

·  Moveto (X,Y) – установить курсор в точку с координатами X,Y

·  Lineto (X,Y) – провести линию из положения курсора в точку с координатами X,Y

·  Setcolor (цвет) – последующий текст и линии будит рисоваться заданным цветом

·  OuttextXY (X,Y) – написать текст в точке с координатами X,Y

·  setlinestyle (3,0,1) – установка пунктирной линии

·  setlinestyle (0,0,1) – установка обычной линии

·  Line (X1,Y1,X2,Y2) – провести линию из точки X1,Y1 в точку X2,Y2

·  setfillstyle (solidfill,red) – установка параметров завливки, solidfill – залить всю ограниченную область заданным цветом

·  floodfill (X,Y,getmaxcolor) – X,Y координаты точки принадлежащей ограниченной области

·  Closegraph – закрытие графического режима

Текст программы

Program Iniciali;

uses graph;

var error,gd,gm,m,n:integer;

x,y,z,x1,x2,y1,y2,a:real;

begin

m:=100;

n:=100;

gd:=detect;

a:=30;

z:=100;

InitGraph(gd,gm,'');

error:=GraphResult;

If error <> 0 then

begin

writeln('AaAAA PANEKA!');

halt;

end;

moveto((getmaxx div 2),0);

lineto((getmaxx div 2),(getmaxy div 2));

lineto(0,round ((getmaxy div 2)+sin(pi/6)/cos(pi/6)*(getmaxx div 2)));

moveto((getmaxx div 2),(getmaxy div 2));

lineto((getmaxx),round((getmaxy div 2)+sin(pi/12)/cos(pi/12)*(getmaxx)));

moveto(m,n);

x:=z*cos(pi/6);

y:=z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

n:=n+25;

lineto(m,n);

moveto(m,n);

z:=75;

x:=-z*cos(pi/6);

y:=-z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

n:=n+200;

lineto(m,n);

moveto(m,n);

z:=25;

x:=-z*cos(pi/6);

y:=-z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

n:=n-225;

lineto(m,n);

z:=25;

x:=-z*cos(pi/6);

y:=z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

n:=n+225;

lineto(m,n);

moveto(m,n);

z:=25;

x:=z*cos(pi/6);

y:=-z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

n:=n-225;

moveto(m,n);

z:=25;

x:=-z*cos(pi/6);

y:=z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

moveto(m,n);

z:=100;

x:=z*cos(pi/6);

y:=-z*sin(pi/-6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

moveto(m,n);

z:=25;

x:=z*cos(pi/6);

y:=-z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

end;

moveto(m,n);

m:=m+100;

lineto(m,n);

n:=n-200;

lineto(m,n);

x:=-z*cos(pi/6);

y:=z*sin(pi/6);

m:=m+round(x);

n:=n-round(y);

lineto(m,n);

readln;

closegraph;

end.


Вывод

turbo pascal программа графический

В ходе данной лабораторной работы я научился работать с графической средой Turbo Pascal.