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

2 Робота із зображеннями.

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

Процедура SetColor – встановлює поточний колір, взятий з палітри.

Загальний вигляд:

SetColor(color);

color має тип word.

Приклад:

...

SetColor(2);

...

SetColor(red);

...

Таблиця кольорів:

0→Black→чорний

1→Blue→синій

2→Green→зелений

3→Cyan→бірюзовий

4→Red→червоний

5→Magenta→фіолетовий

6→Brown→коричневий

7→Light→Grayсвітло-сірий

8→DarkGray→темно-сірий

9→Light→Blueсвітло-синій

10→LightGreen→світло-зелений

11→LightCyan→світло-бірюзовий

12→LightRed→світло-червоний

13→LightMagenta→світло-фіолетовий

14→Yellow→жовтий

15→White→білий

128→Blink→мерехтіння

Функція GetColor – повертає код поточного кольору – значення типу word.

Приклад:

...

var I:word;

...

I:=GetColor;

...

Функція GetMaxColor – повертає найбільший код кольору, значення типу word, який може бути переданий процедурі SetColor як параметр.

Процедура SetBkColor – встановлює колір фону з палітри. Встановлюється для всього екрану.

Загальний вигляд:

SetBkColor(Color);

color – значення типу word – новий колір фону.

Приклад:

SetBkColor(red);

або

SetBkColor(4);

Функція GetBkColor – повертає значення типу word – код фону, що використовується.

Процедура SetRGBPalette – змінює компоненти палітри при використанні драйверів VGA і IBM 8514.

Загальний вигляд:

SetRGBPalette(colnum,redval,greenval,blueval);

colnum – код кольору з палітри.

redval, greenval, blueval – визначають інтенсивність відповідно червоної, зеленої і синьої складових для кольору з номером colnum.

Colnum, redval, greenval, blueval – значення типу integer.

Для драйвера IBM 8514 colnum може змінюватися в межах від 0 до 255, для VGA від 0 до 15.

Процедура SetFillStyle – визначає шаблон і колір заповнення.

Загальний вигляд:

SetFillStyle(pattern,color);

pattern – шаблон заповнення.

color – колір заповнення.

Шаблони заповнення:

Константа

Код

Заповнення

EmptyFill

0

Суцільне заповнення кольором фону(без узору)

SolidFill

1

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

LineFill

2

LtSlashFill

3

SlashFill

4

BkSlashFill

5

LtBkSlashFill

6

HatchFill

7

XhatchFill

8

InterleaveFill

9

WideDotFill

10

CloseDotFill

11

UserFill

12

Шаблон заповнення, визначений користувачем

За замовчуванням використовуються константа SolidFill і колір з максимальним номером з поточної палітри. Шаблон і колір, визначений процедурою SetFillStyle, застосовуються всіма процедурами і функціями, в яких використовується операція заповнення.

Функції GetX і GetY – повертають координати по горизонталі (Х) і вертикалі (Y) вказівника поточної позиції. Координати GetX і GetY відлічуються від лівого верхнього кута екрану (активного вікна), починаючи з нуля.

Приклад:

...

var x,y:integer;

...

x:=GetX;

y:=GetY;

...

Функції GetMaxX і GetMaxY – повертають поточні значення (типу integer) роздільної здатності, тобто кількість крапок (пікселів) по осях Х і Y, ці значення залежать від вибраного драйвера і роздільної здатності.

Процедура MoveTo – переміщає вказівник поточної позиції в точку із заданими координатами.

Загальний вигляд:

MoveTo(x,y);

x і y – координати точки на екрані, куди буде переміщено вказівник.

Приклад:

...

MoveTo(10,30);

...

Процедура MoveRel – переміщає вказівник на задану відстань, яка визначається приростом координат Х і Y, щодо його поточного місцеположення.

Загальний вигляд:

MoveRel(Dx,Dy);

Приклад: нехай вказівник знаходиться в точці (10,44).

...

MoveRel(5,8); {перенесе вказівник в точку (15,52)}

...

MoveRel(-10,-2); {перенесе вказівник з точки (15,52) в точку (5,50)}

...

Процедура Line – відображає пряму лінію між двома точками, координати яких задані як параметри.

Загальний вигляд:

Line(x1,y1,x2,y2);

x1, x2, y1, y2 мають тип integer.

Приклад:

var x1,x2,y1,y2:integer;

...

Line(0,0,50,67);

...

x1:=56;y1:=78;x2:=1,y2:=100;

Line(x1,y1,x2,y2);

...

Процедура LineTo – проводить пряму від поточного положення вказівника до точки заданої координатами.

Загальний вигляд:

LineTo(X,Y);

X та Y – координати точки.

Процедура LineRel – відображає пряму від поточної позиції і до точки, координати якої одержані приростом по Х і Y.

Загальний вигляд:

LineRel(Dx,Dy);

Dx, Dy – прирости по Х і Y, мають тип integer.

Приклад: нехай вказівник знаходиться в точці (45,17).

...

LineRel(40,40);{проведе пряму від точки з координатами (45,17)

до крапки з координатами (85,57)}

...

Функція GetPixel – повертає значення типу word, відповідне кольору пікселя, координати якого (X,Y).

Загальний вигляд:

GetPixel(X,Y);

Приклад:

...

var I:word;

...

I:=GetPixel(45,45);

...

Процедура PutPixel – відображає точку в заданій позиції і заданим кольором.

Загальний вигляд:

PutPixel(x,y,color);

X, Y – координати точки (типу integer).

color – колір точки (типу word).

Приклад:

...

PutPixel(23,45,4);

...

Процедура Circle – викреслює коло.

Загальний вигляд:

Circle(x,y,rad);

X, Y – координата точки.

rad – радіус кола в пікселях по горизонталі.

Приклад:

...

Circle(45,67,50);

...

Процедура Ellipse – викреслює еліпс.

Загальний вигляд:

Ellipse(X,Y,bangle,eangle,Xrad,Yrad);

X, Y – координати центру,.

bangle і eangle – початковий і кінцевий кути дуги (в радіанах!).

Xrad, Yrad – горизонтальний і вертикальних радіус еліпса.

Приклад.

...

Ellipse(200,200,50,56,30,20);

...

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