Нужно с помощью любой из графических библиотек: Three.js ( JavaScript ) или OpenGL ( любой ЯП ):
Построить систему для отображения трехмерной поверхности. В
системе необходимо реализовать следующие функции:
- поверхность выводится как граненое тело.
- выполнять евклидовые превращения трехмерного тела. ( можно добавить с помощью встроенных библиотек )
- изменение количества граней.
- расчет нормали для грани и визуализация.
- Возможность управления точками вращающейся кривой ( Возможность изменять грань за точкой с помощью события нажатия на элемент грани и перетаскивания его )
Метод проецирования:
Одноточечная перспектива
Граненое тело: получается вращением кривой. Кривая имеет 3 сегменты:
Метод рисования прямой - Сплайн Кэтмулл-Ром.
Есть один пример работы другого варианта на C++ ( Qt и OpenGL ), только его нужно запустить.
Для примера навожу картинку и pdf файл с лабораторной работой.
Все остальные подробности в переписке.