Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Практикум. Создание движущихся изображений





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

Сам «перемещаемый» объект может быть двумерным (плоским) и трехмерным (пространственным), причем движение может осуществляться по двум типам траектории: лежащей в плоскости экрана или выходящей за нее.

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

Движение плоских объектов. Любое сложное движение плоских объектов на экране складывается из базовых: перемещения, масштабирования и поворота. Формулы пересчета координат изображений для базовых видов движения следующие.

Рис.8.9. Элементарные изменения изображения: а - перемещение; б- масштабирование; в - поворот

Перемещение (рис. 8.9, а)

x1 = x + dx,

y1 = y + dy,

где x, у - исходные координаты точки; x1, y1 - координаты точки после перемещения; dx, dy - смещения по оси х и у соответственно.

Масштабирование относительно точки С (хc, уc) (рис. 8.9, б):

x1 =(х-xсх + xс,

y1 =(у-yсу + yс,

где Mx, My - масштабы по х и у соответственно; хc, уc - координаты точки, относительно которой ведется масштабирование.

Поворот относительно точки С с координатами (хc, уC,) (рис. 8.9, в):

x1 = (х-xс)cosα + (у-yс)sinα + хc,

y1 = (у-yс)cosα - (х-xс)sinα + yс,

где α - угол поворота.

Пример 8.7. Разработать программу, которая демонстрирует на экране движение прямоугольника: прямоугольник улетает от нас к некоторой точке горизонта, одновременно вращаясь вокруг своей оси.

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

Начало:

Установить точку отсчета координат (условное время).

Рассчитать координаты квадрата.

Цикл-пока не истекло время или не нажата любая клавиша

Установить цвет рисования.

Изобразить квадрат.

Приостановить выполнение программы на время просмотра кадра.

Установить в качестве цвета рисования цвет фона.

Изобразить квадрат цветом фона - стереть.

Изменить точку отсчета (условное время).

Пересчитать координаты квадрата.

Date: 2015-07-24; view: 473; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию