Здавалка
Главная | Обратная связь

Работа с текстом в графическом режиме



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

OutText(S);- вывод строки S(типа string) в текущей позиции курсора.

OutTextXY(x,y,S); - вывод строки S в позиции с координатами (x, y).

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

SetUserCharSize(XN, X, YN, Y);

При этом (XN/X) - множитель для изменения ширины символов, (YN/Y) - множитель для изменения высоты символов. Параметры XN, X, YN, Y - типа Word.

ЗАДАНИЯ ДЛЯ ВЫПОЛНЕНИЯ:

ЗАДАНИЕ 1.

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

ЗАДАНИЕ 3.

1. С использованием оператора цикла нарисовать на экране 12 одинаковых заполненных различными стандартными орнаментами фигур ( в 3 ряда по 4 фигуры). По нажатию клавиши должен меняться вариант фигуры: 1.1 Прямоугольник, 2.1 Эллипс, 1.2 Параллелепипед, 2.2 Круг.

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

2. Нарисовать 5 вложенных прямоугольников с увеличением размера на 20 пикселов в каждом направлении. Стиль заполнения для каждой фигуры определить буквами Вашего имени.

3. Нарисовать 5 соосных кругов разного цвета с уменьшением радиуса на 10 пикселов. Стиль заполнения для каждого круга определить его номером, т. е. цифрами 1, 2, 3, 4, 5.

ЗАДАНИЕ 2.

1. Смоделировать град - пикселы должны со звуком подскочить на преграде (нарисуйте прямоугольник) или на нижнем крае экрана .

2. Смоделировать дождь - смещающиеся пикселы должны оставлять след серого цвета, причем на этот цвет не реагировать как на цвет преграды. Дождинки не должны накапливаться на преградах.

3. Увеличить скорость падения снежинок (не забыв усовершенствовать анализатор условия остановки снежинок). Смоделировать образование снежных хлопьев - при достижении нижнего края экрана снежинка должна "обрасти" еще четырьмя пикселами - приобрести форму крестика.

4. Изменяя через 10 циклов "Repeat. . . Until" приращения координат по осям "X" и "Y" в диапазоне -5...+5, смоделировать порывистый ветер случайного направления, действующий на снег. Анализировать при этом вылет снежинок за боковые границы экрана.

ЗАДАНИЕ 4.

1. Нарисовать узор из отрезка прямой линии, вращающегося вокруг своего "центра" (N - раз) за один оборот вокруг центра узора.

2. Нарисовать узор из отрезка прямой линии, вращающегося вокруг своего "центра" (N - раз) за один полупериод движения по синусоиде. yf = yс + Af * sin((xf-xc)/100), где Xf = xc + 10 * Pi * j; j= 1, 2, . . , 10, Af - задать исходя из размеров экрана.

ЗАДАНИЕ 5.

1. Вывести в графическом режиме таблицу функций X, SIN(X), COS(X) для X=0, . . . , PI с шагом PI/10. Таблица должна иметь заголовок и располагаться в рамке. При этом нужно рассчитать размеры шрифта по результатам, возвращаемым функциями TextWidth и TextHeight так, чтобы таблица заняла максимальную область экрана.

2. Создать аналог электронного секундомера, выводящего цифры (от 0 до 59) матричным шрифтом большого размера в центре прямоугольника. После задержки текущая цифра перерисовывается цветом фона и подается звуковой сигнал. Секундомер запускается нажатием клавиши Enter.

Контрольные вопросы:

  1. Что такое модуль? Для каких целей предназначен модуль Graph?
  2. Перечислите основные процедуры рисования геометрических модуля Graph.
  3. Перечислите основные процедуры работы с текстом?
  4. Опишите принципы построения заполненных фигур.
  5. Как изменить цвет выводимых символов?

Отчет содержит: Тему, цели, коды (фрагменты) программ, выводы. Отчет сдать преподавателю.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.