3.3.2. Рисование окружностей Функция circle рисует окружность радиуса г с центром в точке (х, у): void far circle (int x, int y, int r);

3.3.4. Рисование дуг эллипса Функции arc и ellipse рисуют дуги окружности (с центром в точке (jc, у) и радиусом г) и эллипса (с центром (х, у), полуосями гх и гу, параллельными координатным осям) начиная с угла startAngle и заканчивая углом endAngle.

Углы задаются в градусах в направлении против часовой стрелки (рис. 3.2):

void far arc (int x, int y, int startAngle, int endAngle, int r); void far ellipse (int x, int y, int startAngle, int endAngle, int rx, int ry);
Рисование сплошных объектов

3.4. Рисование сплошных объектов

3.4.1. Закрашивание объектов С понятием закрашивания тесно связано понятие кисти. Кисть определяется цветом и шаблоном - матрицей 8 на 8 точек (бит), где бит, равный единице, означает, что нужно ставить точку цвета кисти, а 0 - что нужно ставить черную точку (цвета 0).

Для задания кисти используются следующие функции:

void far setfillstyle (int pattern, int color);
void far setfillpattern (char far * pattern, int color);

Функция setfillstyle задает кисть. Параметр style определяет шаблон кисти либо как один из стандартных (EMPTYFILL, SOLIDJFILL, LINEJFILL, LTSLASHJFILL), либо как шаблон, задаваемый пользователем (USER_FILL). Поль-*

Компьютерная графика. Полигональные модели зовательский шаблон устанавливает процедура setfillpattern, первый параметр в которой и задает шаблон - матрицу 8 на 8 бит, собранных по горизонтали в байты. По умолчанию используется сплошная кисть (SOLID_FILL) белого цвета.

Процедура bar закрашивает выбранной кистью прямоугольник с левым верхним углом (Х|, yi) и правым нижним углом (х2, у2):

void far bar (int x1, int y1, int x2, int y2 );

Функция fillellipse закрашивает сектор эллипса: void far fillellipse (int x, int у, int startAngle, int endAngle, int rx, int ry); Функция floodfill служит для закраски связной области, ограниченной линией цвета borderColor и содержащей точку (х, у) внутри себя: void far floodfill (int x, int y, int borderColor);


⇐ Предыдущая| |Следующая ⇒