Модуль Graph

Preview:

DESCRIPTION

Модуль Graph. Экран в графическом режиме представляет собой прямоугольник, заполненный точками – пикселями.. Для построения изображения используется система координат. Отсчет начинается от верхнего левого угла, который имеет координаты – (0,0). x. Значение x увеличивается слева направо. - PowerPoint PPT Presentation

Citation preview

Экран в графическом режиме представляет собой

прямоугольник, заполненный точками – пикселями.

X

Y

y

x(0,0)

Для построения изображения используется система

координат. Отсчет начинается от верхнего левого угла,

который имеет координаты – (0,0).

Значение x увеличивается

слева направо.

Значение y увеличивается

сверху вниз.

Текущий указатель в графическом режиме играет ту же роль, что и курсор в текстовом режиме, однако, в отличие от курсора, он невидим.

Текущий указатель

Подключение модуля Подключение модуля GraphGraph

uses

Graph;

var

gd,gm:integer;

begin

gd:=Detect; {автоматическое определение типа графического драйвера и режима работы адаптера}

InitGraph(gd, gm, ‘путь к файлу драйвера’);

Операторы;

CloseGraph;

end.

(x,y)

X

Y

y

x

Выводит на экран точку с координатами (x,y)

и цветом color.

PutPixel(x,y,color);PutPixel(x,y,color);

(0,0)

Y

Xx1

y1

x2

y2

Проводит прямую линию из точки с координатами (x1,y1) в точку с координатами (x2,y2).

Положение текущего указателя не изменяется

Line(x1,y1,x2,y2);Line(x1,y1,x2,y2);

(0,0)

Rectangle(x1,y1,x2,y2);Rectangle(x1,y1,x2,y2);

Y

X

y2

x2

usesgraph;vargd,gm,x,y,color:integer;Begin

gd:=detect;InitGraph(gd,gm,'D:\TPascal.71\tp\BGI');write('x,y: ');readln(x,y);clearDevice;Rectangle(x1,y1,x2,y2);readln;end.

Рисует прямоугольник с координатами

(x1,y1) — верхний левый угол и(x2,y2) — нижний правый угол

x1

y1

Circle(x,y,radius)Circle(x,y,radius)Рисует окружность

с центром в точке (x,y) и радиусом radius

X

Y

(0,0) x

yra

diu

s

Bar(x1,y1,x2y2)Bar(x1,y1,x2y2)

Рисует заштрихованный прямоугольник с координатами (x1,y1) — верхний левый

угол и (x2,y2) — нижний правый угол.Используется стандартный цвет и стиль

заливки

Y

X

y2

x2x1

y1

Arc(Arc(X,Y,StAngle,EndAngle,Xradius,YraX,Y,StAngle,EndAngle,Xradius,Yradiusdius))

Дуга окружности

от угла StАngle до угла ЕndAngle

с центром в точке (x,y)

и радиусом radius.

Углы задаются в градусах по

направлению против часовой стрелки

(0,0) X

Y

x

y StАngleЕndAngle

Bar3d(x1,y1,x2,y2,h,top)Bar3d(x1,y1,x2,y2,h,top) Выводит объемную (трехмерную)

прямоугольную полосу толщиной h, Top — логический параметр,

принимающий значения TopOn или, TopOff, указывает, нужно ли изображать верхнюю

грань (0,0)

TopOn

TopOff

LineTo(x,y);LineTo(x,y);

X

Y

x

y

Проводит прямую линию из точки, где находится текущий указатель, в точку с координатами (x,y).

Текущий указатель перемещается в точку (x,y).

(0,0)

LineRel(dx,dy);LineRel(dx,dy);

Проводит прямую линию из точки, где находится текущий

указатель, в точку с приращением dx по оси X и dy по оси Y.

Текущий указатель перемещается в точку (x+dx,y+dy).

Y

Xx

y

dy

dx

x+dx

y+dy

Y

Xx

y

dy

dx

x+dx

y+dy

(0,0)

Y

X

y

x

Проводит прямую линию из точки, где находится текущий указатель,

в точку с координатами (x,y). Перемещает текущий указатель в точку

(x,y).

MoveTo(x,y);MoveTo(x,y);

(0,0)

Ellipse(Ellipse(x,y,StAnge,EndAngle,Xradius,Yradiusx,y,StAnge,EndAngle,Xradius,Yradius))Дуга эллипса с центром в точке (x, y) и

с радиусом Xradius (по оси Х), Yradius (по оси Y)

от начального угла StАngle до конечного угла

ЕndAngle.

(0,0) X

Y

Значения

StАngle=0 и ЕndAngle=360

приведут к вычерчиванию

полного эллипса.

FillEllipse(xFillEllipse(x,y,Xradius,Yradius,y,Xradius,Yradius))

Эллипс, заштрихованный текущим цветом

и типом штриховки. (0,0) X

Y

PieSlice(PieSlice(x,y,StAnge,EndAngle,radiusx,y,StAnge,EndAngle,radius))Заштрихованный сектор круга с центром в

точке(x,y).

Начальный - StAnge,StAnge, и конечный – EndAngleEndAngle углы

задаются в градусах(0,0) X

Y

x

y

StАngle

ЕndAngle

Sector(x,y,StAnge,EndAngle,Xradius,YraSector(x,y,StAnge,EndAngle,Xradius,Yradius)dius)

Заштрихованный сектор эллипса, параметры те же, что у процедуры

Ellipse.

(0,0) X

Y

DrawPoly(DrawPoly(N,ArrayOfPointN,ArrayOfPoint))

Ломаная линия, которая имеет N вершин, координаты которых заданы в

массиве записей ArrayOfPoint.

(0,0)

FillPoly(N,ArrayOfPoint)FillPoly(N,ArrayOfPoint)

Заштрихованная замкнутая фигура, параметры те же.

(0,0) X

Y

FloodFill(X,Y, Border _Color)

Заливка произвольной замкнутой области с цветом границ Border_Color,

(Х,Y) — координаты любой внутренней точки. Заливка области выполняется установленными

стилем и цветом. (0,0)

Заливка Заливка областейобластей

x

y

Установка цветов и стилей

Процедуры установки цветов и стилей должны предшествовать процедурам для

изображения примитивов.

Установленные цвета и стили используются процедурами для вывода всех графических

примитивов (кроме точки).

Текущие установки сохраняются до тех пор пока не будут изменены другими

процедурами установки.

Для графического режима текущие цвета – черный для фона и белый для линий и

штриховок, текущие стили – сплошная линия и заливка.

Всего имеется 12 стандартных стилей для штриховок и 4 для линий.

SetColor(Color);

Устанавливает цвет выводимого изображения, задаваемый параметром

Color.

SetBkColor(Color);

Устанавливает цвет фона.

SetLineStyle( style, pattern, thickness) устанавливает стиль

линии

SolidLn

DottedLn

CenterLn

DashedLn

SetFillStyle (style,color)

устанавливает стиль заливки

(0,0) 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400 420 440 460 480 500  520  540 560 580 600 620 639

X

Y

Recommended