Автор работы: Пользователь скрыл имя, 13 Ноября 2011 в 21:58, курсовая работа
Цель работы - разработать алгоритмы заполнения различных фигур определенным стилем на языке Pascal .
Были выделены следующие задачи:
- изучить литературу по проблеме исследования.
-определить существующие стили заполнения.
- выявить возможности и средства компьютерной графики в Турбо Паскале.
- разработать алгоритмы заполнения различных фигур определенным стилем на языке Pascal .
Введение…………………………………………………………………………...3
Стиль заполнения. Кисть. Текстура……………………………………………………………………………5
Алгоритмы заполнения различных фигур определенным стилем……………………………………………………………………………...8
Заключение……………………………………………………………………….20
Список литературы………………………………………………………………21
Uses Graph; {подключение модуля Graph}
Const {описание констант}
z:array[1..4] of PointType= {с помощью массива задаем координаты треугольника}
((x:400;y:200),
(x:600;y:400),
(x:200;y:200),
(x:400;y:200));
Var Driver,Mode:Integer; {определяет тип и задает режим работы графического драйвера}
X,Y,c:Integer;
Begin
{Инициализация графического режима}
Driver:=Detect;
InitGraph(Driver,Mode,'C:
SetColor(4); {красный цвет рисунка}
SetBkColor(0); {черный цвет фона}
DrawPoly(4,z);{
for x:=200 to 600 do begin{ перебираем координаты точки по х }
for y:=200 to 400 do begin{ перебираем координаты точки по у }
if ((x mod 15)<1) and ((y mod 15)<1) then begin{задаем условие расстановки точек}
a:=0; {начальное значение угла окружности}
{перебираем все углы окружности с шагом 0,1}
while (a<6.28) do begin {цикл с предусловием}
ax:=Round(cos(a)*4)+x;{задаем параметрическое уравнение для окружности с радиусом 2}
ay:=Round(sin(a)*4)+y; {задаем параметрическое уравнение для окружности, которая служит стилем заполнения}
if (y>(1*(x-400)+300)) and (y>(1*(-x+1100)-400)) and (y<400) then begin{ограничиваем область заполнения треугольником }
c:=4; end else c:=0;
PutPixel(ax,ay,c); {процедура выставления точки с заданными координатами и цветом}
a:=a+0.1;{шаг}
end;
end;
ReadLn; {задержка изображения на экране до нажатия enter}
CloseGraph; {выход из графического режима в символьный}
End.
Uses Graph; {подключение модуля Graph}
Const {описание констант}
z:array[1..3] of PointType= {с помощью массива задаем координаты треугольника}
((x:400;y:300),
(x:600;y:500),
(x:200;y:500));
Var Driver,Mode:Integer; {определяет тип и задает режим работы графического драйвера}
X,Y:Integer;
Begin
{Инициализация графического режима}
Driver:=Detect;
InitGraph(Driver,Mode,'C:
SetColor(4); {красный цвет рисунка}
SetBkColor(0); {черный цвет фона}
DrawPoly(3,z);{
for x:=200 to 600 do begin{ перебираем координаты точки по х }
for y:=300 to 499 do begin{ перебираем координаты точки по у }
if (y>(1*(x-400)+300)) and (y>(1*(-x+1100)-400)) then begin{ограничиваем область заполнения треугольником }
PutPixel(x,y,random(16)); {процедура выставления точки с заданными координатами и цветом, который определяется функцией псевдослучайного числа в интервале от [0,16)}
ReadLn; {задержка изображения на экране до нажатия enter}
CloseGraph; {выход из графического режима в символьный}
End.
Заключение
В настоящее время компьютерная графика интенсивно развивается, увеличивая свои возможности. Существует огромное количество программ и программных обеспечений для построения различных изображений основанных на растровой графике. Многие производители электронных компонентов поддерживают обработку изображения на уровне процессорной техники. Становится возможным еще большее улучшение качества изображений. Поэтому компьютерная графика будет развиваться до тех пор – пока будет развиваться и совершенствоваться компьютерная техника.
В
заключении так же можно отметить,
что цель данной работы достигнута
– алгоритмы заполнения различных фигур
определенным стилем на языке Pascal разработаны
и успешно работают.
Список литературы
Информация о работе Алгоритмы заполнения различных фигур определенным стилем