Краткая справка по языку программирования Turbo Pascal

       

Построение прямоугольников



3.7. Построение прямоугольников

Для построения прямоугольных фигур имеется несколько процедур. Первая из них – процедура вычерчивания одномерного прямоугольника:

Rectangle( X1, Y1, X2, Y2 ),

где X1, Y1 – координаты верхнего левого угла, X2, Y2 – координаты правого нижнего угла прямоугольника. Ниже в качестве примера приведен фрагмент, который выводит на экран 100 разноцветных прямоугольников произвольной высоты:

FOR

i:=1 TO 100 DO BEGIN

  SetColor( Random(15) ); { “случайный” цвет }

  Rectangle( 200, Random(300), 250, 300 ); { i-й прямоугольник }

  Delay(100); { задержка 100 мс }

  ClearDevice { очистка экрана }

END;

Для построения закрашенных прямоугольников используется процедура:

Bar( X1, Y1, X2, Y2 ),

где параметры X1, Y2, X2 и Y2 имеют то же смысл, что и в процедуре Rectangle.

Цвет и стиль закраски устанавливается процедурой

SetFillStyle( Pattern, Color ),

где параметр Pattern определяет стиль (шаблон) заливки, а параметр Color – ее цвет. Возможные значения параметра Pattern приведены в таблице 3.

Таблица 3. Стили заливки

Описание стиля

Константа

Описание стиля

Константа

Заполнение цветом фона (SetBkColor) EmtyFill = 0 Вертикально-

горизонтальная

штриховка

HatchFill = 7
Заполнение текущим цветом (SetColor) SolidFill = 1 Разреженная

штриховка

крест-накрест

XhatchFill = 8
Заполнение символами - - LineFill = 2 Частая штриховка

крест-накрест

InterLeaveFill = 9
Заполнение символами // нормальной толщины LtslashFill = 3 Заполнение

разреженными

точками

WideDotFill = 10
Заполнение символами // удвоенной толщины SlashFill = 4 Заполнение частыми точками CloseDotFill = 11
Заполнение символами \\ нормальной толщины BkSlashFill = 5 Пользовательский

стиль

UserFill = 12
Заполнение символами \\ удвоенной толщины LtBkSlashFill = 6

Для построения “объемных” закрашенных прямоугольников используется процедура:

Bar3D( X1, Y1, X2, Y2, Depth, Top ).

Тип и цвет заливки устанавливается процедурой SetFillStyle. Параметр Depth определяет глубину трехмерного контура. Чаще всего его значение равно четверти ширины прямоугольника:

Depth := (X2-X1) div 4;

Параметр Top определяет, строить над прямоугольником вершину (True) или нет (False). Например:

SetFillStyle( XhatchFill, Red );

Bar3D( 10, 10, 50, 100, 10, True );



Содержание раздела