Реализован с целью изучения фреймворка QT, паттерной проектирования, считывания 3D объектов из файла, отрисовки в OpenGL.
В 3D viewer реализована схема разделения данных приложения - MVC
Реализован только для linux и macOS систем.
Соблюдены нормы Google style c++
Реализован Marcus
Представлен наследуемыми классами из библиотек QT для обработки сигналов с кнопок и отображения информации и QOpenGLWidget для отображения объекта
Модель представлена различными файлами, основным из которых является - model.cc. Этот файл нужнн для стягивания из файла полигонов с вершинами и связи между всеми остальными файлами.
Модель считвания из файла разбит, согласно паттерну фасад
model_afine_transfer.cc - разбит на файлы, где внутри себя, для поворотов объектов в пространстве использует паттерн стратегия
Реализован в виде класса calculator_controller.cc, согласно паттерну singleton. Нужен для связи кода между view и model, также отлавливает исключения из polish_notation.cc.
Сборка осуществляется с помощью Makefile, достоаточно находиться в данной директории и написать make install в терминале, он создаст папку build и в ней будет находиться готовое для запуска приложение.