Skip to content

Latest commit

 

History

History
59 lines (52 loc) · 3.62 KB

lab2.md

File metadata and controls

59 lines (52 loc) · 3.62 KB

Каркасные объекты

Задание

  • Написать программу, рисующую проекцию трёхмерного каркасного объекта.

Требования

  • Рисовать грани объекта с помощью доступных функций рисования отрезка в координатах окна. При этом можно использовать OpenGL;
  • При запуске программы объект сразу должно быть хорошо виден;
  • Дать возможность возможность вращать фигуру (2 степени свободы) и изменять параметры фигуры;
  • Не рисовать для выпуклых фигур нелицевые грани;
  • Нарисовать оси системы координат;
  • Параметры, которые нельзя использовать для настройки текущей (выбранной) фигуры, должны быть скрыты или отключены;
  • Программа не должна лагать, у неё не должна течь память.

Варианты

Первые две фигуры у всех одинаковы:

  1. N-угольная призма;
  2. Поверхность z = A * (x*x + y*y) или параболоид.

Третья фигура -- своя для каждого варианта:

Вариант Фигура
1 Сектор конуса
2 Четырехугольная призма
3 Шестиугольная призма
4 Треугольная пирамида
5 Сектор цилиндра, «кусок торта»
6 Усеченный гиперболоид
7 Выпуклая оболочка тора
8 Шаровой сектор, «долька арбуза»
9 Усеченная пятиугольная призма
10 Слой выпуклой линзы
11 Шестиугольная пирамида
12 Выпуклая линза
13 Четырехугольная пирамида
14 Пятиугольная пирамида
15 Пятиугольная призма
16 Усеченная треугольная призма
17 Усеченный конус
18 Слой шара
19 Усеченная выпуклая линза
20 Усеченный цилиндр
21 Усеченная шестиугольная призма
22 Сектор выпуклой линзы
23 Усеченная четырехугольная призма
24 Усеченный эллипсоид
25 Треугольная призма
26 Сектор параболоида
27 Усеченный параболоид

Комментарии

Что можно ввести в качестве параметров?

  • Высоту фигуры;
  • Длину ребра основания;
  • Радиус;
  • Угол разворота (для долек и прочего);
  • Что-нибудь ещё, что позволяет фантазия и что при этом сохраняет узнаваемый вид фигуры.