
- •Аннотация
- •Введение
- •1. Первый раздел
- •Занятие 1
- •Занятие 2
- •Занятие 3
- •Занятие 4
- •Занятие 5
- •Занятие 6
- •1.2 Формирование траектории для движения простого геометрического объекта
- •Выводы:
- •Второй раздел
- •Индивидуальное Задание 1
- •2.1. Первый подраздел второго раздела Формулировка задания:
- •Математическую постановка:
- •Описание используемых элементов для интерфейса и их настройка (свойства):
- •Кнопки управления
- •Ползунки trackBar
- •Метки Lables
- •Ввод координат
- •Выпадающие списки
- •Меню выбора цветов MenuStrip
- •FillColorToolStripMenuItem — Цвет заливки - Выбор цвета заливки шестиугольника borderColorToolStripMenuItem — Цвет контура - Выбор цвета границы шестиугольника
- •Системные компоненты
- •Описание используемых графических примитивов:
- •Кривая траектории яйца Хюгельшеффера
- •Движущийся объект - шестиугольник
- •Примеры работы с учетом изменения параметров:
- •Выводы:
- •3. Третий раздел индивидуальное Задание 2
- •3.1. Первый подраздел третьего раздела
- •Формулировка задания:
- •Математическая постановка:
- •Описание используемых элементов для интерфейса и их настройка:
- •Общие настройки формы
- •Области отрисовки PictureBox
- •Элемент управления уровнем фрактала — NumericUpDown
- •Метки - lLabels
- •5. Цветовая палитра (внутри программы)
- •Описание используемых графических примитивов:
- •1. Окружности
- •Текст программы:
- •Примеры работы программы:
- •Заключение
Примеры работы с учетом изменения параметров:
Начальное положение до запуска:
|
|
Рисунок 25 - Конструктор |
Рисунок 26 - Начальное положение |
Изменения цвета заливки и контура через меню:
|
|
Рисунок 27 - Розовая заливка с зеленым контуром |
Рисунок 28 - Желтая заливка с фиолетовым контуром |
Изменение размера объекта:
|
|
|
Рисунок 29 - Размер 10 |
Рисунок 30 - Размер 50 |
Рисунок 31- Размер 35 |
Движение объекта происходит по или против часовой стрелки, при этом кнопка показывает на какое направление можно смениться, бегунок скорости указывает на текущую скорость движения.
|
|
Рисунок 32 - Движение по часовой стрелке со скоростью 2 |
Рисунок 33 - Движение против часовой стрелке со скоростью 7 |
Кручение можно проследить на рисунках 34, 35.
|
|
Рисунок 34 - Положение 1 фигуры при кручении и пульсации |
Рисунок 34 - Положение 2 фигуры при кручении и пульсации |
Также возможно изменение ширины контура фигуры (рис 35, 36), а так же стиля линии траектории (рис 37, 38).
|
|
|
|
Рисунок 35 - Ширина линии - 2 |
Рисунок 36 - Ширина линии 5 |
Рисунок 37 - Стиль линии - пунктир |
Рисунок 38 - Стиль линии - точка - тире |
Также, помимо стиля линии траектории возможно изменение ее цвета и ширины.
|
|
Рисунок 39 - Пунктирный стиль, ширина - 8, цвет - фиолетовый |
Рисунок 40 - Точка-тире, ширина - 4, цвет - коралловый |
Выводы:
Программа представляет собой приложение для визуализации движения шестиугольника по траектории в форме яйца (кривой Хюгельшеффера). В основе программы лежит математическая модель, использующая параметрическое уравнение яйцевидной кривой, где координаты точек рассчитываются по формуле с учетом заданного шага и масштабирования для отображения на экране.
Основная функциональность включает анимацию движения шестиугольника по траектории с возможностью регулировки скорости и изменения направления движения. Реализованы дополнительные визуальные эффекты: вращение шестиугольника вокруг своей оси с настраиваемой скоростью и плавная пульсация - периодическое изменение размера фигуры. Пользователь может полностью настроить внешний вид, изменяя цвет заливки и границы, толщину и стиль линии траектории, а также размер шестиугольника. Особенностью является возможность изменения центра траектории.
Программа использует параметрическую генерацию точек кривой с расчетом кумулятивных расстояний для точного позиционирования объекта. Применяются методы линейной интерполяции между точками траектории и аффинные преобразования для реализации вращения и масштабирования для демонстрации практического применения в графике и параматрической анимации.