Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_Pascal_Lesya Ugryn.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.83 Mб
Скачать

8.1.2. Системи координат

Верхній лівий кут графічного екрану має координати (0, 0). Значення Х (номера стовпця) збільшується зліва направо. Значення Y (номер рядка) збільшується зверху вниз.

Для графічного адаптера VGA в режимі VGAHI=2 координати екрана для кожного з чотирьох кутів буде виглядати таким чином:

(0, 0) – лівий верхній кут;

(0, 639) – правий верхній кут;

(320, 240) – центр;

(0, 479) – лівий нижній кут;

(639 х 479) – правий нижній кут.

При роботі драйверами у графічному режимі можна використовувати функції, що визначають максимальні значення координат:

  • Function GetMaxX: Integer – повертає максимальну координату Х для по-точного драйвера в поточному режимі.

  • Function GetMaxY: Integer – повертає максимальну координату Y для по-точного драйвера в поточному режимі.

Графічна система Turbo Pascal підтримує поточний вказівник, який має ті ж властивості, що і курсор в текстовому екрані, але є невидимим. Для переміщен-ня цього вказівника на графічному екрані використовуються процедури MoveTo(X, Y), MoveRel(Dx, Dy), LineTo(X, Y), LineRel(Dx, Dy):

Процедура MoveTo(X, Y : Integer) – переміщує поточний вказівник коорди-нат в точку вікна з координатами (X, Y). Ця процедура еквівалентна процедурі GotoXY для текстового екрану.

Процедура MoveRel(Dx, Dy : Integer) – переміщує поточний вказівник координат на задане зміщення Dx, Dy.

Процедура LineTo(X, Y : Integer) – проводить лінію з поточної позиції поточного кольору в точку з заданими координатами (X, Y).

Процедура LineRel(Dx, Dy : Integer) – проводить лінію з поточної позиції поточного кольору в точку, зсунуту на зміщення Dx, Dy.

8.1.3. Вибір кольорів в графічному режимі

Перед тим, як почати створювати графічні образи, необхідно очистити екран, задати кольори фону та зображення. Для роботи з кольоровою палітрою в графічному режимі Tutbo Pascal використовуються такі процедури і функції:

  • ClearDevice – процедура, яка очищує екран.

  • SetColor(Color: Word) – процедура, яка задає колір пікселів для рисування. Параметр Color задає номер кольру в палітрі.

  • SetBkColor(Color: Word) – процедура, яка задає колір фону.

  • GetColor – функція, яка повертає номер кольору в палітрі зображень, який задається процедурою SetColor.

  • GetBkColor(Цвет) – функція, яка повертає номер кольору для фону в палітрі зоображень, який задається процедурою SetBkColor.

  • CloseGraph – закриває графічний режим і завантажує текстовой режим.

Константи, які використовуються для завдання кольорів:

Black = 0 – чорний.

Blue = 1 – синій.

Green = 2 – зелений.

Cyan = 3 – голубий.

Red = 4 – червоний.

Magenta = 5 – фіолетовий.

Brown = 6 – коричневий.

LightGray = 7 – світло-сірий.

DarkGray = 8 – темно-сірий.

LightBlue = 9 – світло-синій.

LightGreen = 10 – світло-зелений.

LightCyan = 11 – світло-голубий.

LightRed = 12 – світло-червоний.

LightMagenta = 13 – світло-фіолетовий.

Yellow = 14 – жовтий.

While =14 – білий.

8.1.4. Завдання стилів ліній та заливки контурів

Графічний режим Turbo Pascal підтримує різноманітні засоби для рисування та заповнення фігур, включаючи точку, лінії, кола, дуги еліпси, прямокутники, діаграми, трьохвимірні та секторні діаграми.

Для установлення товщини і стилю (суцільна, пунктирна чи нарисована) лінії використовується процедура:

SetLineStyle(LineStyle:Word; Pattern: Word; Thickness: Word);

Thickness – товщина лінії. Якщо Thickness рівний ThickWidth, то линії будуть товстими, якщо NormWidth, то звичайними.

LineStyle – стиль лінії, який може мати значення:

SolidLn = 0 – звичайна, суцільна.

DotteLn = 1 – пунктирна.

CenterLn = 2 – осьова.

DashedLn = 3 – штрихова.

UseBitLn = 4 – задана користувачем.

Pattern – шаблон лінії – задається лише в тому випадку, якщо LineStyl=UseBitLn.

Подається у вигляді двохбайтового числа, кожен біт якого рівний 1, якщо черговий піксель слід висвітлити, і нуль – у противному випадку.

Процедура:

SetFillStyle(Pattern:Word; Color:Word);

встановлює стиль і колір заливки. Якщо Pattern равно UserFill, то використовується визначений користувачем стиль, описаний процедурою SetFillPattern.

Наведемо значення найчастіше використовуваних параметрів стилю заливки:

  • EmptyFill = 0 – заповнення кольором фону.

  • SolifFill = 1 – однорідне заповнення заданим кольором.

  • LineFill = 2 – штрихування горизонтальними лініям.

  • LtSlashFill = 3 – штрихування косими лініями.

  • HatcheFill = 7 – штрихування символом +.

  • CloseDotFill = 11 – густе штрихування крапками.

Процедура:

SetFillPattern(Pattern:FillPatternType; Color:Word);

встановлює визначений користувачем стиль і колір заливки, де

FillPatternType=Array [1..8] of Byte;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]