Назад | Оглавление | Домой | Далее
Часть первая
Реализовать с заданной совокупностью фигур все виды афинных преобразований: перенос по оси OX и оси OY, отражение относительно координатных осей и прямой Y=X, масштабирование независимо по обеим осям, поворот на заданные углы относительно центра координат и относительно произвольной точки, указываемой в ходе выполнения программы. Предусмотреть восстановление исходной позиции фигур. Управление организовать как через интерфейсные элементы (меню, кнопки, строки редактирования и пр.), так и через "горячие" клавиши. Обязательно использовать матрицы для хранения координат вершин, матрицу преобразования, подпрограмму (метод) для умножения матриц.
Варианты заданий
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Часть вторая
На основе первой части создать программу работающую с двухмерными объектами.
Варианты заданий
Написать программу, показывающею колесо со спицами, катящееся по наклонной поверхности.
Написать программу, имитирующую Броуновское движение частиц в прямоугольной области. Молекулы отобразить окружностями. Предусмотреть удары молекул друг об друга. Форма молекул не меняется.
Написать программу, имитирующую механические часы.
Разработать программу, имитирующую движение баскетбольного мяча (отскоки от пола), Мяч при ударах деформируется.
Разработать программу, показывающую полет вращающегося бумеранга.
Разработать программу, имитирующую падение листа с дерева.
Разработать программу, имитирующую падение снежинок.
Разработать программу, отображающую двигающийся манипулятор робота.
Написать программу, показывающую падающие фигуры «Тетриса», при нажатии на клавиши осуществляется поворот фигур, и их окончательно падение.
Разработать программу, отображающую три взаимосвязанных, вращающихся шестеренки.
Разработать программу, отображающую подъем груза через систему вращающихся блоков (Не менее трех блоков).
Разработать программу, имитирующую игру в настольный теннис (вид сверху).
Разработать программу, отображающую раздачу карт для пасьянса.
Разработать программу, отображающую пульсирующее сердце.
Разработать программу, отображающую летящий самолет с вращающимся винтом.
Написать программу, выводящую на экран шагающего человечка.
Написать программу, выводящую на экран взлетающую ракету. С удалением от земли ракета уменьшается.
Разработать программу, реализующую двухмерные трансформации с любым текстом.
Разработать программу, реализующую двухмерные трансформации с фигурой, заполненной текстурой.
Разработать программу, реализующую двухмерные трансформации с любой
двухмерной фигурой (квадрат, окружность, ромб, звезда). Фигура выбирается из
списка.
Назад | Оглавление | Домой | Далее