Основы программирования на C++, PASCAL
Ellipse(200,250,0,359,10,20);{нос}
Rectangle(130,280,270,290);{рот}
MoveTo(100,300);{установка вниз влево}
LineTo(50,350);{три}
LineTo(350,350);{линии}
LineTo(300,300);{шеи}
PutPixel(150,170,Red);{левый зрачок}
PutPixel(250,170,Red);{правый зрачок}
ReadLn;{задержка}
CloseGraph;(выход из графики}
End.
В приведенном примере все линии рисуются сплошными и стандартной толщины. Модуль Graph позволяет управлять стилем линии (сплошная, пунктирная, точечная и т.п.) и толщиной. Для этого существует процедура SetLineStile (см. приложение 2).
Закраски и заполнения. Среди графических примитивов существуют закрашенные области. Цвет закраски определяется процедурой SetColor. Кроме того, можно управлять рисунком закраски (типом заполнения). Это может быть сплошная закраска, заполнение редкими точками, крестиками, штрихами и т.п. В табл. П2.3 приложения 2 описаны константы для указания типа заполнения.
Процедура определения типа заполнения (Fill) и цвета заполнения (Color) имеет следующий заголовок:
Procedure SetFillStyle(Fill,Color: Word);
Заполненная прямоугольная область с заданными координатами углов:
Procedure Bar(XI,Y1,X2,Y2: Integer);
Обведенный линией (SetLineColor, SetLineStyle) и закрашенный (SetFillStyle) эллипс:
Procedure FillEllips(X,Y,RX,RY: Integer);
Обведенный линией и закрашенный эллипсный сектор:
Procedure Sector(X,Y: Integer;
BegA,EndA,RX,RY: Word);
Обведенный линией и закрашенный сектор окружности:
Procedure PieSlice(X,Y:Integer;
BegA,EndA: Word);
Наконец, можно закрасить любую область, ограниченную замкнутой линией. Для этого нужно указать какую-нибудь точку внутри этой области (X, Y) и цвет граничной линии (Border). Соответствующая процедура выглядит следующим образом:
Procedure FloodFill(X,Y: Integer; Border: Word);
Модуль Graph позволяет выводить на графический экран тексты. Мы не будем сейчас детально обсуждать эту проблему, необходимую информацию можно найти в соответствующей литературе. Приведем лишь пример одной текстовой процедуры, с помощью которой выводится в графическое окно символьная строка (Txt), начиная с указанной позиции (X,Y).
Procedure OutTextXY(X,Y: Integer; Txt: String);
Например, чтобы вывести под нашим рисунком строку «ЭТО РОБОТ», следует в программу добавить оператор
OutTextXY(195,400,'ЭТО РОБОТ');