27

Модуль Graph

  • Upload
    yannis

  • View
    37

  • Download
    2

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: Модуль  Graph
Page 2: Модуль  Graph

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

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

X

Y

y

x(0,0)

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

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

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

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

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

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

сверху вниз.

Page 3: Модуль  Graph

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

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

Page 4: Модуль  Graph

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

uses

Graph;

var

gd,gm:integer;

begin

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

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

Операторы;

CloseGraph;

end.

Page 5: Модуль  Graph

(x,y)

X

Y

y

x

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

и цветом color.

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

(0,0)

Page 6: Модуль  Graph

Y

Xx1

y1

x2

y2

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

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

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

(0,0)

Page 7: Модуль  Graph

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

Page 8: Модуль  Graph

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

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

X

Y

(0,0) x

yra

diu

s

Page 9: Модуль  Graph

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

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

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

заливки

Y

X

y2

x2x1

y1

Page 10: Модуль  Graph

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

Page 11: Модуль  Graph

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

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

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

грань (0,0)

TopOn

TopOff

Page 12: Модуль  Graph

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

X

Y

x

y

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

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

(0,0)

Page 13: Модуль  Graph

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)

Page 14: Модуль  Graph

Y

X

y

x

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

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

(x,y).

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

(0,0)

Page 15: Модуль  Graph

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

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

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

Page 16: Модуль  Graph

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

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

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

Y

Page 17: Модуль  Graph

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

Page 18: Модуль  Graph

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

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

Ellipse.

(0,0) X

Y

Page 19: Модуль  Graph

DrawPoly(DrawPoly(N,ArrayOfPointN,ArrayOfPoint))

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

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

(0,0)

Page 20: Модуль  Graph

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

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

(0,0) X

Y

Page 21: Модуль  Graph

FloodFill(X,Y, Border _Color)

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

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

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

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

x

y

Page 22: Модуль  Graph

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

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

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

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

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

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

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

Page 23: Модуль  Graph

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

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

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

Page 24: Модуль  Graph

SetColor(Color);

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

Color.

SetBkColor(Color);

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

Page 25: Модуль  Graph

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

линии

SolidLn

DottedLn

CenterLn

DashedLn

Page 26: Модуль  Graph

SetFillStyle (style,color)

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

Page 27: Модуль  Graph

(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