: ?? TP BGI. Режим VGAHi відповідає графічної сітці 640 х 480 з палітрою з 16 кольорів.
Можливо також автоматичне визначення типу драйвера і установка режиму. Цей прийом дозволяє програмі працювати з різними типами моніторів, не вносячи змін до тексту:
Driver:=Detect; (Driver, Mode, C: TP BGI );
При цьому автоматично встановлюється режим з найбільшою роздільною здатністю і кольоровістю. Після закінчення роботи в графічному режимі слід повернутися в текстовий режим екрана.
У модулі Graph процедура повернення в текстовий режим має заголовок: ProcedureCloseGraph;
Колір фону і колір малюнка. На кольоровому моніторі можна змінювати забарвлення екрана. Встановлена ??забарвлення екрану називається кольором фону. Малюнок на цьому тлі наноситься за допомогою різноманітних ліній: прямих, кіл, прямокутників, ламаних і т.д. Кольори цих ліній також можуть змінюватися.
Заголовок процедури установки кольору фону: Procedure SetBkColor (Color: Word);
Тут Color - вираз цілого типу, визначальне номер кольору фону.
Заголовок процедури установки кольору ліній: Procedure SetColor (Color: Word);
Зауважимо, що якщо в якості номера кольору лінії вказується 0, то це завжди збігається з кольором фону (невидима лінія). Якщо необхідно очистити графічний екран (стерти малюнок), то для цього використовується процедура очищення екрана.
Графічні координати.
Положення кожного пікселя графічної сітки однозначно визначається зазначенням його координат.
Графічні осі координат розташовані на екрані так, як показано на рис. 1.
Горизонтальна вісь X спрямована зліва направо, вертикальна вісь Y - зверху вниз. На малюнку вказані граничні графічні координати, відповідні режиму VGAHi.
Можна визначити максимальні координати по осях, відповідні даному драйверу.
Це робиться за допомогою двох цілочисельних функцій:
Function GetMaxX; GetMaxY;
Графічне вікно.
Область виведення зображення може бути обмежена будь-яким прямокутником в межах екрану. Така область називається графічним вікном. Існує процедура, що встановлює положення графічного вікна на екрані.
Заголовок процедури призначення графічного вікна:
Procedure SetViewPort (X1, Y1, X2, Y2: Integer; Clip: Boolean);
Тут (X1, Y2) - координати лівого верхнього кута вікна; (Х2, Y2) - координати правого нижнього кута вікна;
Clip - обмежувач фігур; якщо Clip=True, то все побудови відбуваються тільки в межах вікна, в іншому випадку вони можуть виходити за його межі. Після установки вікна координати точок всередині нього відраховуються від верхнього лівого кута.
Існує поняття графічного курсору (за аналогією з символьним курсором). Але на відміну від символьного курсора графічний курсор на екрані не видний. Графічний курсор вказує на поточну позицію на екрані. При вході в графічний режим координати поточної позиції рівні (0, 0).
Процедура призначення координат графічного курсору:
Procedure Move To (X, Y: Integer);
Тут X, Y - встановлювані координати курсора. Координати вказуються щодо лівого верхнього кута вікна або, якщо вікно не встановлено, екрану. Процедура поставити крапку - основна процедура отримання зображення, оскільки будь-який малюнок складається з точок. Стан світної точки визначається координатами точки на екрані і кольором точки.
Приклад 1. Наступна програма встановлює по центру екрана графічне вікно розміром 100х100, заливає його жовтим фоном і заповнює синіми крапками, розташованими через 4 позиції.
графічний драйвер турбо паскаль
Uses Graph;
Var Driver, Mode: Integer;, Y, X1, Y1, X2, Y2, Xc, Yc: Integer;
{Ініціалізація графічного режиму}
Driver: «Detect;
InitGraph (Driver, Mode, 'C: TP BGI" );
{Визначення координат центру екрану} Xc:=GetMaxX Div 2;
Yc; «GetMaxY Div 2;
{Визначення координат графічного вікна}
Х1:=Хс - 50;
Y1:=Yc - 50;
X2:=Xc + 50;
Y2:=Yc + 50;
{Установка графічного вікна}
SetViewPort (X1, Y1, X2, Y2, True);
{Установка к...