Несколько дней новогоднего волшебства:
Успейте начать обучение в 2018-ом году со скидкой до 30%!
Выбрать курс

Рендеринг полигональных моделей с помощью Helix Toolkit

C#Deep_4.05_Site.png

Каким образом формируются 3D-модели, отображаемые пользователю?

Всё очень просто! Как нам известно из компьютерной графики, любая 3D-модель, отображаемая компьютером, представляет из себя в упрощённом случае набор из вершин и граней, которые образуют треугольники (Triangle). Таким образом, например, реализован формат ply.

Тем не менее, при создании 3D-модели пользователь оперирует совсем другими операциями, а именно, операциями 3D-моделирования. В базовом случае это операции: — выдавливание, — вращение, — вырезание, — различные булевые операции над телами.

А также пользователи используют готовые параметризованные или структурно-параметризованные 3D-модели. Например, строительстве — готовые двери, окна, арки и т.п.

Как транслировать пользовательские операции в полигональную модель, понятную вычислительному устройству?

Для этого можно использовать открытое графическое ядро Open CASCADE для формирования полигональной модели и Helix Toolkit для её отображения.

Для примера возьмём модель здания в формате ifc. Само по себе графическое ядро не позволяет напрямую работать с данным форматом. Необходим инструмент, позволяющий получить набор классов объектов, который хранится в данном формате.

Для этого можно использовать XbimEssentials. В данной библиотеке так же реализованы методы для работы с графическим ядром. А также есть метод, который позволяет создать полигональную модель в бинарном виде. Из такой полигональной модели можно получить отображение 3D-модели в пространстве с помощью библиотеки Helix Toolkit.

Если возникнут вопросы, пишите в комментариях!

Автор
0 комментариев
Для комментирования необходимо авторизоваться