Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Функции для работы с графикой в Паскале.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
130.64 Кб
Скачать

Подпрограммы для работы с пером

Рисование линий осуществляется текущим пером. Доступ к свойствам текущего пера можно осуществлять как в процедурном, так и в объектно-ориентированном стиле.

Процедуры и функции для доступа к свойствам пера сгруппированы парами: если Prop - имя свойства пера, то функция PenProp возвращает значение этого свойства, а процедура SetPenProp(p) устанавливает это свойство:

procedure SetPenColor(c: Color); Устанавливает цвет текущего пера

function PenColor: Color; Возвращает цвет текущего пера

procedure SetPenWidth(Width: integer); Устанавливает ширину текущего пера

function PenWidth: integer; Возвращает ширину текущего пера

procedure SetPenStyle(style: DashStyle); Устанавливает стиль текущего пера. Константы стилей пера приведены здесь

function PenStyle: DashStyle; Возвращает стиль текущего пера. Константы стилей пера приведены здесь

procedure SetPenMode(m: integer); Устанавливает режим текущего пера

function PenMode: integer; Возвращает режим текущего пера

function PenX: integer; Возвращают x-координату текущей позиции рисования

function PenY: integer; Возвращают y-координату текущей позиции рисования

Кроме этого, можно изменять свойства текущего пера через объект Pen.

Текущее перо Pen

Объект текущего пера возвращается функцией Pen и имеет тип GraphABCPen:

function Pen: GraphABCPen;

Класс GraphABCPen имеет следующий интерфейс:

type GraphABCPen = class property NETPen: System.Drawing.Pen; property Color: GraphABC.Color; property Width: integer; property Style: DashStyle; property Mode: integer; property X: integer; property Y: integer; end;

Свойства класса GraphABCPen описаны в следующей таблице:

property NETPen: System.Drawing.Pen; Текущее перо .NET. Служит для более тонкой настройки свойств пера

property Color: GraphABC.Color; Цвет пера

property Width: integer; Ширина пера

property Style: DashStyle; Стиль пера. Константы стилей пера приведены здесь

property Mode: integer; Режим пера

property X: integer; Координата X пера (только чтение)

property Y: integer; Координата Y пера (только чтение)

Пример.

Pen.Color := clRed; Pen.Style := psDot;

Кроме этого, можно изменять свойства текущего пера, используя соответствующие процедуры и функции.

Стили пера

Стили пера задаются перечислимым типом DashStyle. Кроме того, для стилей пера определены следующие константы:

psSolid = DashStyle.Solid; Сплошное перо

psClear = DashStyle.Clear; Прозрачное перо

psDash = DashStyle.Dash; Штриховое перо

psDot = DashStyle.Dot; Пунктирное перо

psDashDot = DashStyle.DashDot; Штрихунктирное перо

psDashDotDot = DashStyle.DashDotDot; Альтернативное штрихунктирное перо

Подпрограммы для работы с кистью

Рисование внутренностей замкнутых областей осуществляется текущей кистью. Доступ к свойствам текущей кисти можно осуществлять как в процедурном, так и в объектно-ориентированном стиле.

Процедуры и функции для доступа к свойствам кисти сгруппированы парами: если Prop - имя свойства кисти, то функция PenProp возвращает значение этого свойства, а процедура SetPenProp(p) устанавливает это свойство:

procedure SetBrushColor(c: Color); Устанавливает цвет текущей кисти

function BrushColor: Color; Возвращает цвет текущей кисти

procedure SetBrushStyle(bs: BrushStyleType); Устанавливает стиль текущей кисти. Константы стилей кисти приведены здесь

function BrushStyle: BrushStyleType; Возвращает стиль текущей кисти. Константы стилей кисти приведены здесь

procedure SetBrushHatch(bh: HatchStyle); Устанавливает штриховку текущей кисти. Константы стилей штриховки кисти приведены здесь

function BrushHatch: HatchStyle; Возвращает штриховку текущей кисти. Константы стилей штриховки кисти приведены здесь

procedure SetHatchBrushBackgroundColor(c: Color); Устанавливает цвет заднего плана текущей штриховой кисти

function HatchBrushBackgroundColor: Color; Возвращает цвет заднего плана текущей штриховой кисти

procedure SetGradientBrushSecondColor(c: Color); Устанавливает второй цвет текущей градиентной кисти

function GradientBrushSecondColor: Color; Возвращает второй цвет текущей градиентной кисти

Кроме этого, можно изменять свойства текущей кисти через объект Brush.