Навигация:
<< >> Оглавление Указатель

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.19. Графические функции

А.5.19.25. rdsXGSetPenStyle – установить стиль линии

Функция rdsXGSetPenStyle устанавливает текущий стиль линии, если модель блока вызвана для рисования. Этот стиль будет использоваться для всех геометрических фигур, рисуемых после этого вызова.

  void  rdsXGSetPenStyle(
    int Mask,        // Маска установки (RDS_GF*) или 0
    int Style,       // Стиль линии (Windows API)
    int Width,       // Толщина линии
     Color,  // Цвет линии
    int Mode         // Режим рисования
  );

Тип указателя на эту функцию

RDS_VIIICrI

Параметры

Mask (int)
Маска устанавливаемых параметров или 0, если нужно одновременно установить все параметры. В этом параметре могут передаваться следующие битовые флаги, объединенные битовым ИЛИ:
RDS_GFCOLOR Установить цвет линии из параметра Color.
RDS_GFMODE Установить режим рисования из параметра Mode.
RDS_GFSTYLE Установить стиль линии из параметра Style.
RDS_GFWIDTH Установить толщину линии из параметра Width.
Style (int)
Одна из стандартных констант Windows API, задающих стиль линии:
PS_DASH Пунктирная линия.
PS_DASHDOT Линия из чередующихся отрезков и точек.
PS_DASHDOTDOT Линия из повторяющихся групп «отрезок-точка-точка».
PS_DOT Линия, состоящая из точек.
PS_INSIDEFRAME Специальный стиль сплошной линии, разрешающий Windows скорректировать размеры геометрической фигуры, ограниченной этой линией так, чтобы она уместилась в заданный прямоугольник.
PS_NULL Невидимая линия (геометрические фигуры будут рисоваться без линий на границах).
PS_SOLID Сплошная линия.
Width (int)
Толщина линии в точках экрана. В Windows толщина более одной точки поддерживается только для сплошных линий.
Color (COLORREF)
Цвет линии. В стиле линии PS_NULL не используется.
Mode (int)
Одна из стандартных констант Windows API, задающих режим рисования линии. Режим рисования определяет логическую функцию, которая комбинирует биты цвета линии и цвета экрана для получения результирующего цвета. Если pen – бит цвета стиля линии (из параметра Color), screen – бит цвета экрана в данной точке, а res – результирующий (получившийся в результате рисования) цвет, то при помощи параметра Mode можно задать следующие операции:
R2_BLACK res = 0 – точка экрана всегда будет черной
R2_WHITE res = 1 – точка экрана всегда будет белой
R2_NOP res = screen – точка экрана не меняет цвет
R2_NOT res = NOT screen – точка экрана инвертируется
R2_COPYPEN res = pen – точка экрана принимает цвет линии
R2_NOTCOPYPEN res = NOT pen
R2_MERGEPENNOT res = ( NOT screen ) OR pen
R2_MASKPENNOT res = ( NOT screen ) AND pen
R2_MERGENOTPEN res = ( NOT pen ) OR screen
R2_MASKNOTPEN res = ( NOT pen ) AND screen
R2_MERGEPEN res = pen OR screen
R2_NOTMERGEPEN res = NOT ( pen OR screen )
R2_MASKPEN res = pen AND screen
R2_NOTMASKPEN res = NOT ( pen AND screen )
R2_XORPEN res = pen XOR screen
R2_NOTXORPEN res = NOT ( pen XOR screen )
Здесь словом NOT обозначена инверсия бита, OR – операция ИЛИ, AND – И, XOR – исключающее ИЛИ. Из всех перечисленных выше режимов чаще всего используются R2_COPYPEN (линия рисуется цветом, заданным в параметрах стиля) и R2_NOT (линия инвертирует точки экрана).

Примечания

Эта функция устанавливает текущий стиль линии, который будет использоваться при рисовании замкнутых геометрических фигур. В параметре Mask передается набор битовых флагов, определяющих, какие из параметров стиля будут изменены.

Пример

Примеры использования функции rdsXGSetPenStyle приведены в §2.7.3 и §2.10.1 руководства программиста.

См. также

rdsXGSetBrushStyle, rdsXGSetFont.


<< >> Оглавление Указатель