Задание:
Создать Win32 приложение, реализующее следующие преобразования фигуры (многоугольника) на плоскости.
I. Перенос:
− вдоль оси OX (ввод расстояния переноса).
II. Масштабирование:
− вдоль вектора OP (указание точки P, ввод масштабного коэффициента).
III. Отражение:
− относительно заданной стороны фигуры (указание стороны).
IV. Поворот:
− вокруг начала координат (ввод величины угла поворота).
Требования к программе:
1. Программа должна включать два окна (на одной форме или на разных), содержащих изображение фигуры до и после преобразования и управляющие элементы для ввода необходимой информации.
2. Программа должна включать таблицы координат исходной и преобразованной фигуры.
3. Программа должна отображать итоговую матрицу преобразования и обеспечивать возможность внесения ручных изменений в эту матрицу и применения полученной матрицы к исходной фигуре.
4. Программа должна иметь возможность отображать или скрывать координатные оси и масштабную сетку в окнах вывода фигур.
5. Ввод фигуры для преобразования должен быть реализован при помощи мыши посредством указания вершин фигуры.
Решение:
Язык реализации: C++.
Среда программирования: Borland C++ Builder 6.0
Реализован класс - многоугольник. Отрисовка графиков выполняется с помощью различных методов класса TCanvas. Для создания интерактивности движений фигур на графиках используется компонент TTimer.