Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Program ug;

uses graph, crt;

var gr, gm: integer;

Begin

gr:=detect; {номер драйвера}

gm:=0; {номер режима}

initgraph (gr, gm, ‘’);

readkey; {ожидание нажатия клавиши для закрытия}

closegraph;

End.

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

В режиме 640x480 экран состоит из 480 строк по 640 точек в каждой строке. Координаты каждой точки задаются парой целых чисел, обычно обозначаемых Х и Y, которые определяются проекциями отрезка, соединяющего эту точку с левым верхним углом экрана, на горизонтальную и вертикальную оси соответственно. Точка в левом верхнем углу экрана имеет нулевые координаты. Положительному значению Х соответствует направление слева направо, Y – сверху вниз. В графическом режиме (как и в текстовом) имеют место понятия «графический курсор» и «текущая позиция курсора», однако сам курсор не виден, и эти понятия используются лишь в описании графических команд. Изначально, после инициализации графического режима, текущая позиция курсора – левый верхний угол, то есть точка с координатами (0, 0). Ее перемещение в точку с координатами (х, y) осуществляется процедурой:

НЕ нашли? Не то? Что вы ищете?

MoveTo (х, y);

Кроме координат, точки на экране характеризуются цветом. Мы можем работать одновременно с 16 цветами, причем каждый цвет обозначен номером от 0 до 15 (см. таблицу).

Номер

Цвет

0

черный

1

синий

2

зеленый

3

голубой

4

красный

5

фиолетовый

6

коричневый

7

светло серый

8

темно серый

9

ярко синий

10

ярко зеленый

11

ярко голубой

12

розовый

13

малиновый

14

желтый

15

белый

После команды установки режима обычно дается команда установки цвета:

SetColor (С);

здесь С – номер цвета, который может являться целой переменной или константой, имеющей значение от 0 до 15, и задаваться либо именем, либо непосредственно значением.

Особенностью графического режима является использование цвета с номером 0, который является фоновым, вне зависимости от того, какой именно цвет имеет фон. В результате, если установлен цвет 0, то все объекты этого цвета не будут видны на экране, но при этом сотрут изображение в том месте, куда выводятся. То есть на экран вообще ничего нельзя вывести черным цветом, надо вместо него использовать темно-серый.

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

SetBkColor (Номер цвета);

Основные процедуры графического режима

Отдельный пиксель можно закрасить заданным цветом командой графического режима:

PutPixel (х, у, С)

где х, у – координаты точки (в пикселях), с – номер цвета точки.

Все параметры данной процедуры должны быть целочисленными переменными или константами. Теоретически с помощью этой команды можно нарисовать любое графическое изображение. Обязательными элементами любого языка программирования, работающего с графикой, являются инструменты рисования стандартных объектов, которые часто называют графическими примитивами. Комбинируя эти средства с такой процедурой, как PutPixel, вы сможете рисовать довольно сложные и красочные изображения.

Рассмотрим процедуры создания графических примитивов.

1. Для вывода на экран отрезка с концами в точках (x1, y1) и (х2, y2) используется процедура:

LINE (x1,y1,x2,y2);

Отрезок вычерчивается текущим цветом.

2. Для вывода на экран прямоугольника с вертикальными и горизонтальными сторонами (параллельными осям координат) в виде контура используется процедура:

RECTANGLE (x1, y1, x2, y2);

Точки с координатами (x1, y1) и (х2, y2) располагаются в левом верхнем и правом нижнем углах прямоугольника. Прямоугольник вычерчивается текущим цветом.

3. Для вывода на экран закрашенного прямоугольника используется процедура:

BAR (x1, y1, x2, y2);

Прямоугольник закрашивается текущим цветом.

4. Вывод окружности с центром в точке (х, y) и радиусом r на экран выполняется процедурой:

CIRCLE (x, y, r);

Окружность будет изображена текущим цветом.

5. Для построения эллипса используется процедура: ELLIPSE(x, y, l1, l2, xr, yr), где
(x, y) – координаты центра эллипса; l1, l2 – начальное и конечное значение угла (в радианах) для вычерчивания дуги эллипса; xr, yr – горизонтальный и вертикальный радиусы эллипса

6. Процедура ARC(x, y, l1, l2, r) позволяет строить дугу окружности с центром в точке (x, y), радиуса r, от угла l1 до угла l2.

Если координаты изображения или его части не попадают в тот промежуток координат, который соответствует экрану, то программа не приостановит свою работу и сообщение об ошибке не будет выдано. Просто не вошедшие в экран точки не будут изображены.

Дополнительные процедуры

1. ClearDevice – очистка экрана

2. OutTextXY(x, y, <текст>) – вывод текстовой строки, начиная с точки (x, y).

3. Для закрашивания замкнутого контура сплошным цветом используются две процедуры:

SetFillStyle(1, <номер цвета>) – устанавливает цвет заливки

FloodFill(x, y, c) – заливка замкнутого контура, где (x, y) – координаты точки внутри контура, с – номер основного цвета (должен соответствовать цвету процедуры SetColor).

Рассмотрим типовые задачи графического режима.

Пример 1. Построить 15 концентрических окружностей одного цвета.

Program konc_okr;

uses graph, crt;

var gr, gm, i: integer;

Begin

gr:=detect;

gm:=0;

initgraph (gr, gm, ‘’);

setcolor(4);

for i:=1 to 15 do

circle(320,240,10*i);

readkey;

closegraph;

End.

Задание: изменить пример 1, так чтобы

а) цвет окружностей был различным;

б) каждая окружность закрашивалась;

в) радиусы окружностей изменялись неодинаково.

Пример 2. Построить прямоугольник с диагональю. Обозначить вершины прямоугольника и подписать его.

Program rect;

uses graph, crt;

var gr, gm, i:integer;

Begin

gr:=detect;gm:=0;

initgraph(gr, gm,'');

setcolor(15);

rectangle(100,100,300,200);

line(100,100,300,200);

setcolor(5); {обозначения будем делать другим цветом}

outtextxy(90,90,'a');outtextxy(305,90,'b');

outtextxy(305,205,'c');outtextxy(90,205,'d');

outtextxy(140,220,'прямоугольник «abcd»');

readkey;

closegraph;

End.

Задание: выполнить аналогичные построения для:

а) окружности;

б) квадрата;

в) параллелограмма;

г) эллипса (подписать оба радиуса).

Пример 3. Окружность, движущаяся вдоль горизонтальной прямой.

Program move_circle;

uses graph, crt;

var gr, gm, i:integer;

Begin

gr:=detect;gm:=0;

initgraph(gr, gm,'');

setcolor(5);

for i:=1 to 400 do

begin

circle(50+i,200,100);

delay(2000); {задержка (в миллисекундах)}

cleardevice;

end;

readkey;

closegraph;

End.

Задание: осуществите движение окружности

а) вдоль вертикальной прямой;

б) из правого верхнего угла в левый нижний;

в) вдоль синусоиды.

Вопросы

1.  Охарактеризуйте работу монитора в графическом режиме.

2.  Каковы основные параметры графического режима, приведите примеры.

3.  Что означает выражение "разрешающая способность"?

4.  Что такое инициализация графического режима и как она выполняется?

5.  Как выполняются построения в графическом режиме?

6.  Как установить цвета фона и цвет рисования?

7.  Какой оператор является универсальным и почему?

8.  Что такое «графические примитивы»?

9.  Опишите основные процедуры создания графических примитивов.

10.  Как можно закрасить замкнутый контур?

11.  Какая процедура позволяет делать текстовые надписи на изображениях?

Задания

1.  Постройте треугольник с произвольными сторонами, обозначьте его вершины.

2.  Построить на экране различные варианты расположения
а) окружности и прямой
б) двух окружностей.
Сделать соответствующие обозначения.

3.  Построить на экране произвольный угол, обозначьте его вершину, дополните угол биссектрисой

4.  Постройте два эллипса: сжатый к оси ОХ и сжатый к оси ОУ.

5.  Построить ромб с произвольными сторонами, провести диагонали ромба, обозначьте его вершины.

6.  Постройте узор из нескольких повторяющихся геометрических фигур разного цвета.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21