Пермский государственный технический университет
Кафедра: Информационных технологий и автоматизированных систем
Лабораторная работа по теме:
«Создание графических объектов с помощью псевдографики»
По дисциплине «Информатика»
Пермь 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.