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