Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Система координат в графическом режиме.




Любая информация при работе в графическом режиме на экране монитора представлена совокупностью светящихся точек – пикселей, которые определяются цветом и координатами – положением относительно левого верхнего угла экрана с координатами (0,0).

Дисплей может работать в нескольких графических режимах, каждому из которых соответствует свой формат изображения, т. е. разрешающая способность (количество пикселей по горизонтали и вертикали) экрана и набор используемых цветов.

Чтобы узнать максимальные координаты экрана в текущем режиме работы, воспользуемся стандартными функциями GetMaxX и GetMaxY. Для этого наберите небольшую программу:

Uses Graph;

Var

GraphDriver, GraphMode: integer;

Begin

GraphDriver:=detect;

InitGraph(GraphDriver, GraphMode, ‘..\BGI’);

Writeln(GetMaxX, 'x', GetMaxY);

Readln;

CloseGraph;

End.

Примечание. Для нашего графического режима обычно значение максимальной координаты X равно 640 пикселям, а Y– 480 пикселям.

Чтобы точно строить изображение на экране, Вам нужно сначала нарисовать, как это должно выглядеть на бумаге. Для этого начертите в тетради систему координат графического режима.

x

 

Итак, отсчет начинается с верхнего левого угла с координатами (0;0), значение Х – столбец, отсчет слева направо; значение Y – строка, отсчет сверху вниз.

Чтобы строить изображение, нужно указать точку начала вывода. В графическом режиме нет видимого курсора, но есть так называемый невидимый текущий указатель (Current Pointer). После инициализации графического режима указатель стоит в точке (0;0). Чтобы переместить его в нужное место используют следующие процедуры:

MoveTo (X, Y), где переменные X, Y типа Integer – перемещает текущий указатель в точку с координатами (X,Y).

Например, MoveTo (200, 100)

MoveRel (dX, dY), где переменные dX, dY типа Integer – перемещает текущий указатель по горизонтали на расстояние, равное dX пикселям, а по вертикали на расстояние, равное dY пикселям. (Relation (англ.) – относительно)

Например, если после выполнения предыдущей процедуры текущий указатель находится в точке (200, 100), то после выполнения процедуры MoveRel (25, 150) он будет находится в точке с координатами (225, 250).

PutPixel(X, Y, Color), где переменные X, Y типа Integer, а Color типа Word – процедура выводит точку заданного цвета Color в точку с координатами (X, Y).

Задание. Наберите в теле программы следующие процедуры PutPixel(300, 150, Red), PutPixel(45, 420, 9) и просмотрите их действие.

 

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

Цвет Цвет Код
Black черный  
Blue синий  
Green зеленый  
Cyan бирюзовый  
Red красный  
Magenta малиновый  
Brown коричневый  
LightGray светло-серый  
DarkGray темно-серый  
LightBlue ярко-голубой  
LightGreen ярко-зеленый  
LightCyan ярко-бирюзовый  
LightRed ярко-красный  
LightMagenta ярко-малиновый  
Yellow желтый  
White белый  

Line (X1, Y1, X2, Y2), где переменные X1, Y1, X2, Y2 типа Integer – рисуется линия от точки (X1, Y1) до точки (X2, Y2).

LineTo (X, Y),где переменные X, Y типа Integer – рисуется линия из точки, где находится в данный момент курсор в точку (X, Y).

LineRel (dX,dY),где переменные dX, dY типа Integer – рисуется линия из точки, где находится в данный момент курсор (X, Y) в точку (X+dX,Y+dY).

Задание. Придумайте самостоятельно примеры с использованием всех процедур вычерчивания линий.

 

У Вас не получается нарисовать линии? В чем же причина? Если внимательно посмотреть на эти процедуры и сравнить их с процедурой PutPixel, то можно заметить, что в них нет параметра, указывающего цвет рисования линии. В этом и других аналогичных случаях цвет задается специальной процедурой.

SetColor (Color), где переменная Color типа Word - устанавливает текущий цвет для выводимых линий и символов.

Задания. 1. Исправьте свою программу так, чтобы процедуры рисовали линии различных цветов.

2. В начерченной ранее системе координат изобразите на чертеже точки:

А(150,450), В(100,350), С(350,350), D(300,450), E(200,350), F(200,50), L(250,40), K(200,20), M(300,250), X(175,400), Y(225,400), Z(275,400).

3. Соедините точки, получая отрезки:

AB, BC, CD, AD, EK, KL, LF, FM, ME.

Какая фигура у Вас получилась?

4. Напишите программу, рисующую эту фигуру, по вашему рисунку.

Внимание! Следите за порядком на дискете. Организуйте каталог A:\GRAPHIKA, где будут находиться файлы всех Ваших программ изучаемой темы.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных