Желающим подработать
Необходимо выполнить следующее задание на C++
Задание № 1 (2d)
Часть 1
1. Создать класс окна графического вывода CWin от базового класса CWnd.
2. Создать класс фигуры CF1_№ и класс элементов фигуры CA1_№.
3. Создать в диалоге два окна графического вывода.
4. Используя класс CRgn создать объекты элементов фигуры и объект фигуры.
5. Отобразить фигуру в первом окне.
6. Предусмотреть возможности:
• захват фигуры (элемента) мышью и ее перемещение в окне;
• захват фигуры (элемента) мышью и изменение размеров фигуры;
• выбор элемента мышью и задание кисти закраски, кисти отрисовки границы, шрифта вывода в элемент текста (перерисовка выбранного элемента фигуры).
• захват фигуры (элемента) мышью и вращение фигуры.
7. Текст, выводимый в элемент фигуры должен вращаться вместе с фигурой и не должен выходить за пределы региона элемента (для этого можно на основе региона элемента создавать регион отсечения графического вывода).
При отрисовке фигуры и ее элементов использовать контекст отображения в памяти и копирование изображения из памяти в контекст монитора.
Часть 2
1. Захват мышью всей фигуры и плавное перемещение ее во второе окно;
2. Захват элемента фигуры мышью и перемещение этого элемента в первом окне и во второе окно;
3. При переносе фигуры во второе окно в нем должны быть реализованы все те же возможности работы с фигурой и ее элементами, что и в первом окне.
4. Взрыв (разлет) элементов фигуры
Часть 3
1. Создать графическим редактором изображение Bitmap;
2. Реализовать постепенное проявление (по маске) этого изображения в пределах контура элементов фигуры.
3. Алгоритмы проявления (на выбор) из середины к краям, от краев к середине, из левого верхнего угла и так далее.
Задание № 2 (3d)
Общие требования:
- работы должны быть выполнены в операционной среде Win32, MS Visual Studio.Net;
- пользователь должен иметь возможность задавать и корректировать параметры управления объектом, системой координат и т.д.
- элементы графического объекта должны представлять собой объекты самостоятельного класса;
1 Выбор 3d объекта (композиция из многогранников и поверхностей)
1.1 Статическое полигональное трехмерное отображение объекта в одной из проекций (Предусмотреть возможность задания пользователем параметров, определяющих размер полигонов, предусмотреть полигональное представление граней многогранников).
1-й режим отображение каркаса, невидимые элементы (ребра, пересечение поверхностей и т.д.) фигуры должны быть обозначены пунктирными линиями.
2-й режим отображение каркаса, невидимые элементы фигуры не должны отображаться.
1.2 Реализовать режим псевдоосвещения фигуры параллельным светом, направленным от экранной плоскости к фигуре (невидимые элементы фигуры не должны отображаться).
Предоставить пользователю возможность выбора цвета закраски поверхности объектов, составляющих фигуру.
2.1 Вращение объекта вокруг координатной оси Х или Y или Z. Ось, направление и скорость вращения задается пользователем.
2.2 Одновременное вращение объекта вокруг координатных осей. Скорость вращения по осям задается пользователем.
3.1 Масштабирование размера объекта по осям X,Y,Z с индивидуальными коэффициентами (оси и масштаб задаются пользователем).
3.2 Автоматический режим изменения параметров масштаба по периодическому закону.
4.1 Линейное (возвратно-поступательное) перемещение объекта в воображаемом трехмерном пространстве (Уравнение прямой перемещения и скорость задается пользователем), отобразить прямую, вдоль которой перемещается фигура. При удалении (приближении) фигуры от экранной плоскости размер фигуры должен изменяться.
4.2 Перемещение объекта по трехмерной поверхности, параметры, которой можно интерактивно корректировать. (изобразить каркас поверхности).
5.1 Точечный источник освещения расположить в заданной пользователем (использовать слайдеры координат X, Y, Z) точке пространства (Пользователь может задавать интенсивность, цвет источника). Произвести реалистическую закраску элементов графического объекта.
5.2 Точечный источник освещения перемещать в пространстве по замкнутой 3d кривой, параметры, которой можно интерактивно корректировать. Отобразить кривую, по которой перемещается источник света. Соответствующим образом должно меняться освещение фигуры.
5.3 Выполнить наложение (проективной, процедурной) текстуры на поверхность фигуры
Все последующие пункты задания, должны выполняться одновременно с предыдущими пунктами.
Желающих прошу в асю: 1714242