rectangle(xl,yl.x2.y2) Построить прямоугольник с заданными концами диагонали и
сторонами, параллельными осям координат
circle(x,y,r) Построить окружность с центром (х,у) и радиусом г
arc(x,y,a,b,r) Построить дугу окружности: a,b - начальный и конечный угол в
Градусах
ellipse(x,y,a,b,rx,ry) Построить эллиптическую дугу: rx, rу - полуоси эллипса
setfillstyle(t,c) Установить стиль закраски и ее цвет
fillellipse(x,y,rx,ry) Построить закрашенный эллипс, используя цвет рисунка
floodfill(x,y,cg) Закрасить фигуру до границы с цветом cg; (x,y) - внутренняя
точка фигуры
bar(xl,yl,x2,y2) Построить столбец, используя тип и цвет закраски
pieslice(x,y,a,b.r) Построить и закрасить сектор круга
sector(x,y.a,b,rx,ry) Построить и закрасить эллиптический сектор
settextsiyle(f,n,d) Установить шрифт, направление вывода и размер символа
текста '
outtextxy(x,y,st) Вывести строку st, начиная с точки (х,у)
outtext(st) Вывести строку, начиная с точки расположения текущего
указателя
Первый аргумент процедуры setfillstyle(t,c) - тип закраски t - принимает значения из
интервала 0..12. Наиболее употребителен тип t = 1 - заполнение фигуры текущим цветом.
Для вывода текста на графический экран сначала выполняется процедура settextstyle(f,n,d),
устанавливающая шрифт f, направление вывода п и размер символов (параметр d). При f = 0
используется стандартный точечный шрифт, встроенный в систему Турбо-Паскаль. С
использованием других шрифтов познакомимся ниже. Направление вывода п принимает значения
0 (горизонтальный вывод) и 1 (вертикальный вывод).
Размер букв определяется параметром d, принимающим значения из интервала 1..10. Если d
= 1 и f = 0, то каждый символ занимает квадрат 8*8 точек, при d > 1 сторона квадрата умножается
на d.
Далее, с помощью процедуры outtextxy(x,y,st) строка st выводится на экран, начиная с
точки (х,у).
Например:
settextstyle(0,0,2); оuttехtху(100,200,'горизонтальная строка');
оuttехtху(100,230,'размер увеличен вдвое');
Примеры графических программ
Пример 1: программа рисует звездное небо с 400 «звездами», вспыхивающими постепенно,
и полную желтую луну.
Програлша 29
program sky;
uses crt,graph;
var k,gd,gm:integer;
begin gd:=detect;
initgraph (gd, gm, ' '); randomize;
for k:=l to 400 do
begin putpixel(random(640),random(480),random(15)+1);
delay(10);
end;
setfillstyle(l,14); setcolor(14);
circle(550,80,30) ; floodfill(550,80,14) ;
repeat until keypressed; closegraph