Основы программирования на C++, PASCAL
For X:=l То 25 Do
For Y:=l To 25 Do
PutPixel(4*X,4*Y,Blue);
{Задержка изображения на экране до нажатия <ENTER>}
ReadLn;
{Выход из графического режима в символьный}
CloseGraph;
End.
Графические примитивы. Хотя любое изображение можно построить из точек, но программировать получение сложного рисунка или чертежа, используя только процедуру поставить точку, было бы слишком неудобно и громоздко. В любом графическом пакете существуют процедуры рисования основных геометрических фигур: прямых линий, окружностей, эллипсов, прямоугольников и т. п. Такие фигуры называют графическими примитивами.
Рассмотрим несколько основных процедур рисования графических примитивов, имеющихся в модуле Graph.
Линия с заданными координатами концов (X1, Y1) и (Х2, Y2):
Procedure Line(X1,Y1,X2,Y2: Integer);
Линия от текущей точки до точки с координатами X, Y:
Procedure LineTo(X,Y: Integer);
Линия от текущей точки до точки с заданными приращениями координат DX, DY:
Procedure LineRel(DX,DY: Integer);
Прямоугольник с заданными координатами верхнего левого угла (X1, Y1) и нижнего правого угла (Х2, Y2):
Procedure Rectangle(XI,Y1,X2,Y2: Integer);
Окружность с центром в точке (X, Y) и радиусом R— в пикселях:
Procedure Circle(X,Y: Integer; R: Word);
Дуга окружности с центром в точке (X, Y), радиусом R, начальным углом BegA и конечным углом EndA. Углы измеряются в градусах против часовой стрелки от направления оси X.
Procedure Arc(X,Y: Integer; BegA,EndA,R: Word);
Эллипсная дуга с центром в точке X, Y с начальным и конечным углами BegA и EndA, горизонтальным радиусом RX и вертикальным радиусом RY:
Procedure Ellipse(X,Y: Integer; BegA,EndA,RX,RY: Word) ;
Пример 2. Составим программу, рисующую голову робота (рис. 32).
Рисунок содержит два прямоугольника, две окружности, две дуги, эллипс, три прямые линии и две красные точки. Заранее определяются все координаты и размеры элементов рисунка.
Uses Graph;
Var Driver,Mode: Integer;
Begin
{Инициализация графического режима}
Driver:=Detect;
InitGraph(Driver, Mode,'C:\TP\BGI');
SetColor(White);{белый цвет рисунка}
SetBkColor(Black);{черный цвет фона)
Rectangle(100,100,300,300);{голова}
Circle(150,170,30);(левый глаз}
Circle(250,170,30);{правый глаз}
Arc(150,170,45,135,40);{левая бровь}
Arc(250,170,45,135,40);{правая бровь}