русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Графика


Дата добавления: 2014-11-28; просмотров: 1062; Нарушение авторских прав


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

Пример: Пусть необходимо построить график циклоиды. Зададим ее матема-ти­ческое описание:

x = a t - b sin t, y = a - b cos t,

при b<a циклоида получается укороченной, при b>a - удлиненной, b = a да­ет обычную циклоиду.

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

Поскольку в графическом режиме работы дисплея верхняя левая точка экрана имеет координаты (0,0), сместим ось 0Х на середину экрана, а ось 0У - на 10 пикселей вправо. Для наглядности увеличим график путем использования масштабных коэффициентов по каждой оси координат. Кроме того, нужно помнить, что координаты точки в графическом режиме могут быть только целого типа.

С учетом вышесказанного программа построения циклоиды имеет вид

program graph17pr;

uses graph; {подключение модуля GRAPH}

var

a,b,t:integer; {a, b - переменные, определяющие a - тип драйвера и }

x,y,tt:real; {b - видеорежим }

Begin

detectgraph(a,b); {автоопределение типа драйвера и видеорежима}

initgraph(a,b,'c:\progDOS\BP\BGI'); {инициализация графического режима}

setgraphmode(2); {установка нового режима (2), очистка экрана}

setBKcolor(0); {основной цвет фона – черный}

setcolor(4); {основной цвет рисования – красный}

moveTO(0,240); {смещает курсор для вычерчивания оси Х}

lineRel(625,0); {вычерчивание линии по приращению от указателя}

readln; {пауза до нажатия клавиши <Enter>}

setcolor(2); {основной цвет рисования – зеленый}

line(10,0,10,478); {рисует линию от точки (Х1,Х2) до т.(Х2,У2)}

readln; {пауза до нажатия <Enter>}

setcolor(5); {основной цвет рисования – фиолетовый}



readln; {пауза до нажатия клавиши <Enter>}

moveTO(10,240); {смещение курсора к точке с кординатой (0,240)}

tt:=0.0;

for t:=1 to 200 do {расчет и вычерчивание циклоиды}

begin

x:= 0.4*tt - 0.5*sin(tt);

y:= 0.4 - 0.5*cos(tt);

{линия} lineTO(trunc(100*x)+10,trunc(100*y)+240);

tt:=tt+Pi/32

end;

readln; {пауза до нажатия клавиши <Enter>}

SettextStyle(0,0,3); {установка шрифта(0..4), стиля, размера текста} OutTextXY(50,440,'график циклоиды'); {выводит текст от т.(50,440)}

readln; {пауза до нажатия клавиши <Enter>}

closegraph; {закрывает графический режим и восстанавливает текстовый} end.

Поскольку вычисляемые в программе координаты являются веществен­ными, то для их преобразования к целым значениям использована функция TRUNC().

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

Задание 1 (программа 16_1)

Начертить графики функций F1(x) и F2(x) для результатов, получен­ных в программе 3_2.pas. На экран должен выводиться график с надписью выводимой функции.

Задание 2 (программа 16_2)

Напишите и отладьте программу для одной следующих задач.

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

2. Организовать вывод на экран разноцветных цифр поочередно гори­зонтально и вертикально.

3. Отладить программу вычерчивания нескольких окружностей заданного радиуса в произ­вольном месте экрана разными цветами. Предусмотреть их мерцание.

4. Разработать программу изображения точки, движущейся по косинусоиде (y = =cos(x)).

5. Отладить программу рисования квадрата с диагоналями, пресекающимися в центре эк­рана. Создать иллюзию его уменьшения.

6. Начертить на экране картинку «круги на воде».

7. Изобразить движущийся на зрителя экран (прямоугольник).

8. Подготовить и отладить программу изображения правильного треугольника, вращающегося вокруг своей (любой) медианы.

9. Разработать программу вывода на экран компьютера пяти квадратов по углам и в середине экрана. Зап­рограммировать поочередный вывод их разными цветами.

10. Разными цветами в различных точках экрана выводить надпись «TurboPascal» с изменением размера шрифта.

11. Изобразить трубу, образованную разноцветными окружностями.

12. Организовать вывод на экран названия континентов разными цве­тами в различных точках экрана готическим и обычным шрифтами.

13. Изобразить спутник (точку), вращающийся вокруг планеты.

14. Изобразить НЛО, приземляющийся в различных точках экрана.

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

16. Отладить программу вычерчивания графиков функций y = sin(x) и y = =sin(2x) разными цветами с разными осями координат.

17. Организовать вывод на экран формул химических элементов разными цве­тами в различных точках экрана.

18. Начертить на экране ряд геометрических фигур: квадрат, круг, треуголь-ник, прямоугольник, используя разные цвета.

19. Изобразить схематично на экране движущегося человечка.

20. Изобразить движение объекта по прямоугольной спирали.

 



<== предыдущая лекция | следующая лекция ==>
Динамические структуры данных. Списки | ЗАДАНИЯ К РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЕ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 3.206 сек.