Научная статья на тему 'ОСВЕЩЕНИЕ И РЕНДЕРИНГ МОДЕЛЕЙ С ИМПОРТИРУЕМОЙ ГЕОМЕТРИЕЙ В СБОРОЧНЫХ УЗЛАХ ЦИФРОВЫХ МАКЕТОВ ИЗДЕЛИЙ'

ОСВЕЩЕНИЕ И РЕНДЕРИНГ МОДЕЛЕЙ С ИМПОРТИРУЕМОЙ ГЕОМЕТРИЕЙ В СБОРОЧНЫХ УЗЛАХ ЦИФРОВЫХ МАКЕТОВ ИЗДЕЛИЙ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
62
15
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРЕДСТАВЛЕНИЕ МОДЕЛЕЙ / РЕНДЕРИНГ ОБЪЕКТОВ / ЦИФРОВЫЕ МАКЕТЫ ИЗДЕЛИЙ / ГЕОМЕТРИЧЕСКОЕ ЯДРО OPEN CASCADE / ОПЕРАЦИОННЫЕ СИСТЕМЫ С ОТКРЫТЫМ ИСХОДНЫМ КОДОМ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Юров А.Н.

Рассмотрены подходы, обеспечивающие освещённость объектов и визуальное представление моделей в составе сборочных единиц. В качестве исходных моделей объектов используются цифровые макеты сборочных единиц, которые представлены экспортными форматами данных в системах моделирования. Для обоснования разработки программного модуля подготовлено структурное описание проектного решения для отображения моделей в высоком качестве с фотореалистичными характеристиками. Создано программное решение, обеспечивающее функциональные возможности по визуализации и отображению моделей в составе сборки с эффектами, которые соответствуют условиям поведения объектов в реальном мире. Программный модуль в реализации рендеринга моделей, входящих в состав импортируемых сборочных единиц, выполнен на классах и методах открытого геометрического ядра Open CASCADE, где посредством диалогов, а также с помощью вспомогательных элементов производятся визуализация и освещение поверхностей объектов. Кроме того, в программном обеспечении реализованы средства просмотра и представления моделей в отдельном масштабируемом окне, имеется функционал для изменения цвета моделей, удаления отдельных моделей в сборочном узле, показан состав импортируемого сборочного узла при условии, что указанные записи размещены в экспортном формате данных. Разработка подготовлена для использования в операционной системе Linux Manjaro на базе 64-х разрядной архитектуры

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

LIGHTING AND MODEL RENDERING WITH IMPORTED GEOMETRY IN ASSEMBLY UNITS OF DIGITAL PRODUCT LAYOUTS

The approaches that provide object’s illumination and visual representation of models as a part of the assemblies are considered. Digital layouts of assembly units, which are represented by export data formats in modeling systems, are used as initial object models. To substantiate the development of the software module, a structural description of the design solution for high quality display of models with photorealistic features was prepared. A software solution was created that provides functionality to visualize and display models as part of an assembly with effects that correspond to the conditions of behavior of objects in the real world. The software module in the implementation of rendering of models, which are part of the imported assemblies, is made on the classes and methods of the open geometric kernel Open CASCADE, where through dialogs, as well as with the help of auxiliary elements, visualization and lighting of object surfaces is made. Besides, the software implements tools for viewing and representing models in a separate scalable window, has functionality for changing model colors, deleting individual models in the assembly, shows the composition of the imported assembly if the specified records are placed in the export data format. The development is prepared for use in the Linux Manjaro operating system based on 64-bit architecture

Текст научной работы на тему «ОСВЕЩЕНИЕ И РЕНДЕРИНГ МОДЕЛЕЙ С ИМПОРТИРУЕМОЙ ГЕОМЕТРИЕЙ В СБОРОЧНЫХ УЗЛАХ ЦИФРОВЫХ МАКЕТОВ ИЗДЕЛИЙ»

DOI 10.36622/VSTU.2022.18.5.004 УДК 544.42

ОСВЕЩЕНИЕ И РЕНДЕРИНГ МОДЕЛЕЙ С ИМПОРТИРУЕМОЙ ГЕОМЕТРИЕЙ В СБОРОЧНЫХ УЗЛАХ ЦИФРОВЫХ МАКЕТОВ ИЗДЕЛИЙ

А.Н. Юров

Воронежский государственный технический университет, г. Воронеж, Россия

Аннотация: рассмотрены подходы, обеспечивающие освещённость объектов и визуальное представление моделей в составе сборочных единиц. В качестве исходных моделей объектов используются цифровые макеты сборочных единиц, которые представлены экспортными форматами данных в системах моделирования. Для обоснования разработки программного модуля подготовлено структурное описание проектного решения для отображения моделей в высоком качестве с фотореалистичными характеристиками. Создано программное решение, обеспечивающее функциональные возможности по визуализации и отображению моделей в составе сборки с эффектами, которые соответствуют условиям поведения объектов в реальном мире. Программный модуль в реализации рендеринга моделей, входящих в состав импортируемых сборочных единиц, выполнен на классах и методах открытого геометрического ядра Open CASCADE, где посредством диалогов, а также с помощью вспомогательных элементов производятся визуализация и освещение поверхностей объектов. Кроме того, в программном обеспечении реализованы средства просмотра и представления моделей в отдельном масштабируемом окне, имеется функционал для изменения цвета моделей, удаления отдельных моделей в сборочном узле, показан состав импортируемого сборочного узла при условии, что указанные записи размещены в экспортном формате данных. Разработка подготовлена для использования в операционной системе Linux Manjaro на базе 64-х разрядной архитектуры

Ключевые слова: представление моделей, рендеринг объектов, цифровые макеты изделий, геометрическое ядро Open Cascade, операционные системы с открытым исходным кодом

Введение

С развитием технических средств, в частности, с появлением устройств по выводу графических изображений в высоком качестве стало возможным создавать имитационные цифровые модели изделий с реалистичными характеристиками: поверхности цифрового макета изделия могут включать отражение других поверхностей, фрагменты изделия, блики и прочие эффекты, которые соответствуют условиям поведения объектов в реальном мире [3-7].

Ряд указанных представлений может быть уже реализован на аппаратном уровне видеосистемы, тем самым, не загружая расчётами по визуализации центральный процессор ЭВМ. Однако в некоторых случаях необходимы решения и подходы, которые обеспечивают получение объектов с высоким качеством изображения и определёнными параметрами (заданными материалами). Такие реализации могут быть получены только программным путём. С использованием программной реализации потребуется значительное количество оперативной памяти, существенно увеличится нагрузка на

процессор, возрастут требования к дисковому пространству вычислительной системы.

С момента использования графического оборудования в качестве основного средства для рендеринга в реальном времени производительность процессоров неуклонно росла. Несмотря на то, что производительность аппаратного рендеринга в значительной степени скрыта, некоторым современным программным рендерерам реального времени удаётся обеспечить широкий набор функций и достаточную производительность (для программного рендерера) за счет использования специальной динамической компиляции и расширенных инструкций.

Средствами геометрического ядра Open CASCADE [1,2] можно достичь определённых эффектов освещённости объектов и получить конечное изображение цифрового макета изделия, которое по визуальному представлению соответствует условиям поведения объектов в реальном мире.

Требования для проектирования программного модуля

При разработке автономных

программных решений, связанных с

© Юров А.Н., 2022

рендерингом объектов, требуется функционал, обеспечивающий импорт сборочных узлов в систему, базовое отображение и видовые преобразования моделей в отдельном окне приложения [8-10].

Кроме того, необходимы классы, которые обеспечат реализацию различных режимов освещения поверхностей моделей методами геометрического ядра.

Для разработки может быть предложена следующая структура приложения: проектное решение реализуется на базе стандартного оконного шаблона с последующим подключением библиотек геометрического ядра. Создаётся минимальный программный интерфейс для управления сборками в оконном режиме с отдельными окнами, в которых размещена информация о составе изделия, определения режима работы рендера, установка параметров и т.д. Следом подключаются компоненты (стили) для оформления элементов пользовательского интерфейса, чтобы придать приложению законченный вид. Далее разрабатывается класс, обеспечивающий рендер объектов. Сами объекты представляют собой модели сборочных узлов, доступ к которым обеспечивается посредством экспортных форматов. В конечном итоге, при использовании определённых методов освещения объектов производится построение окончательной сцены с моделями сборки в отдельном окне приложения.

Пути реализации

Интерфейс приложения обычно разрабатывается в привычном стиле для пользователя согласно общим представлениям, которые используют разработчики

отечественных систем по моделированию изделий, а также решений по просмотру инженерных данных. Примером могут служить КОМПАС-SD Viewer от компании «Аскон», TDMS Viewer от компании «Нанософт» и ряда других.

Функциональная часть модуля требует более детальной проработки. Средства по визуализации и работе с освещением, которые реализуются геометрическим ядром, должны быть интегрированы в функционал проектного решения и работать в режиме реального времени.

Общий класс геометрического, отвечающий за представление объектов на сцене, определён как Graphic3d_Clight (рис. 1).

Рис. 1. Класс по работе с освещением объектов

Распределенное освещение в моделях может быть реализовано классом V3d_AmbientLight (рис. 2).

Рис. 2. Класс распределенного освещения объектов

За позиционное освещение объектов отвечает класс V3d_PositionLight. Диаграмма местоположения класса представлена на рис. 3.

Staiidard_Transienl

J L

Graphic3d_CLight

1 I

\Gd_PositionlJght

V3d_DirectionalLight V3d_Posi!ionalLiaht V3d_Spotl_ight

Рис. 3. Класс позиционного освещения объектов

Кроме того, в разработке использованы классы, обеспечивающие точечное и направленное освещение (рис. 4).

Standard_Transierit

1 i

Graptiic3iä_CLIght

1 L

V3d_PositlonLlght

V3d_DlreetloiialLlghl

Slandard_Transient

J L

Graph ic3d_C Light

J L

V3d_PositlonUght

j L

V3d_Spüt Light

Рис. 4. Классы, обеспечивающие точечное и направленное освещение

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

на рис. 5.

Сброс и возврат к настройкам освещения по умолчанию

Инструментальные

Модуль ассоциативной двухсторонней

при просмотре данных в модели дереве сборки

Режим отображения граней (Ray-Tracing)

Рис. 5. Функциональная модель программного решения по управлению освещением

Согласно приведённым данным, был разработан отдельный класс, который обеспечивает получение изображения высокого качества средствами

геометрического ядра Open CASCADE.

В классе используются логические переменные, отвечающие за включение или выключение того или иного источника освещения, а также методы, влияющие на формирование окончательного изображения моделей в сборочном узле. Некоторые методы могут работать в комбинации друг с другом. Полный перечень реализованных методов следующий:

void clearLight3d() - полное удаление всех источников освещения, которые были заданы для импортируемых моделей;

void setSpotLight3d() - прожекторное или точечное освещение;

void setAmbientLight3d() - метод позволяет распределить освещение по поверхности всех импортируемых моделей с заданной стороны. Возможность определения или изменения

позиций в программном средстве не предусмотрена;

void setDirectionalLight3d() - метод, обеспечивающий направленное освещение;

void setPositionalLight3d() - позиционное освещение позволяет определить еще один вид освещения в отдельном методе;

void setTransparencyPresentation3 d

(Standard_Real) - режим полупрозрачности для импортируемых моделей или сборочных узлов;

void setRayTracing() - основной метод, позволяющий задать режим рендеринга. Данный режим устанавливает свойство отображения на поверхностях

импортированных изделий теней и контуров элементов от уже имеющихся деталей.

Эксплуатация и функциональные возможности программной системы

Программное решение обеспечивает рендеринг моделей (сборочных единиц), которые были загружены в экспортном формате step.

После открытия на экране отображается сборочная единица, показан ее состав, реализована возможность выбора элементов по названию или указанию модели в контексте сборки (рис. 6).

Работа с освещением реализована в отдельной панели над окном отображения. Можно использовать любые режимы и менять цвет всех моделей. Крайняя левая кнопка позволяет произвести сброс всех активных источников освещения. Крайняя правая обеспечивает включение специального режима по отображению граней (ray-tracing) и может быть применена с любыми источниками света в комбинации.

Kernel 5.13.1-3-MANJARO Desktop KDE Plasma v 5.24.6

Dlstro Manjaro LI пик

Рис. 6. Общий вид программы с отображением перечня моделей сборочной единицы

Для удобства и определения некоторых действий в приложении реализовано отдельное окно, в котором показано, какой источник освещения на текущий момент использован (рис. 7). Следует отметить, что программа имеет средства, которые обеспечивают полное покрытие элементов интерфейса справочной информацией.

Рис. 7. Отображение типа модели освещения

Заключение

Модуль обеспечивает рендеринг моделей в составе сборочного узла, реализация которого построена на методах и классах геометрического ядра Open Cascade. Для этого на основе разработанных методик подготовлен отдельный класс по управлению освещением и интегрирован в программную разработку. Программное решение обладает развитыми средствами интерактивности в работе с цифровыми макетами изделий. Выбор варианта освещения осуществляется посредством указания типа действия на отдельной инструментальной панели.

Приложение включает в себя полный набор динамических библиотек и зависимостей для обеспечения автономности в процессе работы.

Основные возможности:

- загрузка моделей в экспортном формате

step;

- получение списка вхождения деталей в состав сборки;

- видовые изменения моделей в окне отображения;

- группа операций по работе с освещением с возможностью возращения к базовым настройкам;

- операция по удалению элемента (группы элементов) из состава сборочной единицы;

- выбор отдельной детали в сборочной единице;

- интерактивные инструкции в процессе работы.

Актуальность разработки состоит в создании отечественного ПО и некоторого функционала программных решений по моделированию для операционных систем с открытым исходным кодом.

Литература

1. Visualization of metalworking processes in the development of simulation programs for equipment with numerical control / A.N. Yurov, M.I. Chizhov, A.V. Bredikhin, V.V. Lavlinsky// IOP Conference Series: Materials Science and Engineering. Krasnoyarsk Science and Technology City Hall of the Russian Union of Scientific and Engineering Associations. 2020. Р. 32092.

2. Algorithmic differentiation of the Open CASCADE Technology CAD kernel and its coupling with an adjoint CFD solver /Mladen Banovic, Orest Mykhaskiv, Salvatore Auriemma, Andrea Walther, Herve Legrand& Jens-Dominik Müller. 2018. P. 813-828.

3. Development of approaches to realization of specialized visualization systems / V.L. Averbukh, M.O. Bakhterev, P.A. Vasev, D.V. Manakov, I.S. Starodubtsev // GraphiCon. 2015. Р. 17-21.

4. Slyadnev S.E., Malyshev A.S., Turlapov V.E. Automated simplification of mechanical-engineering CAD models and assemblies without design history // Proc. Int. Conf. Grafikon. 2018. P. 488^94.

5. On the development of blend faces and holes recognition algorithm for CAE applications / J.Y. Lai, Z.W. You, Y.K. Chiu et al.// Key Eng. Mater. 2015. № 656-657. P. 789-794.

6. Zhu H., Menq C. B-rep model simplification by automatic fillet/round suppressing for efficient automatic feature recognition // Comput. Aided Des. 2002. №34. P. 109-123.

7. Automatic recognition and suppression of holes on mold bases for finite element applications / P.-P. Song, J.-Y. Lai, Y.-C. Tsai and C.-H. Hsu // Eng. Comput. 2019. Vol. 35. № 3. P. 925-944.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8. Slyadnev S., Malyshev A., Turlapov V. CAD model inspection utility and prototyping framework based on OpenCascade // GraphiCon. 2017. Р. 323-327

9. Tsygankov D., Pokhilko A. Designed Product 3D-model Semantic Representation in a CAD-system // Interactive Systems: Problems of Human-Computer Interaction, Collection of scientific papers. Ulyanovsk: USTU, 2017. P. 255-259.

10. Development of Conceptual Modeling Method to Solve the Tasks of Computer-Aided Design of Difficult Technical Complexes on the Basis of Category Theory /A.G. Korobeynikov, M.E. Fedosovsky, A.V. Gurjanov, I.O. Zharinov, A.V. Shukalov //International Journal of Applied Engineering Research. 2017. Vol. 12. № 6. P. 1114-1122.

Поступила 01.09.2022; принята к публикации 10.10.2022

Информация об авторах

Юров Алексей Николаевич - канд. техн. наук, доцент, Воронежский государственный технический университет (394006, Россия, г. Воронеж, ул. 20-летия Октября, 84), e-mail: kitp@vorstu.ru, тел. +7(951)548-63-12

LIGHTING AND MODEL RENDERING WITH IMPORTED GEOMETRY IN ASSEMBLY UNITS OF DIGITAL PRODUCT LAYOUTS

A.N. Yurov

Voronezh State Technical University, Voronezh, Russia

Abstract: the approaches that provide object's illumination and visual representation of models as a part of the assemblies are considered. Digital layouts of assembly units, which are represented by export data formats in modeling systems, are used as initial object models. To substantiate the development of the software module, a structural description of the design solution for high quality display of models with photorealistic features was prepared. A software solution was created that provides functionality to visualize and display models as part of an assembly with effects that correspond to the conditions of behavior of objects in the real world. The software module in the implementation of rendering of models, which are part of the imported assemblies, is made on the classes and methods of the open geometric kernel Open CASCADE, where through dialogs, as well as with the help of auxiliary elements, visualization and lighting of object surfaces is made. Besides, the software implements tools for viewing and representing models in a separate scalable window, has functionality for changing model colors, deleting individual models in the assembly, shows the composition of the imported assembly if the specified records are placed in the export data format. The development is prepared for use in the Linux Manjaro operating system based on 64-bit architecture

Key words: model representation, object rendering, digital product layouts, Open Cascade geometric kernel, opensource operating systems

References

1. Yurov A.N., Chizhov M.I., Bredikhin A.V., Lavlinsky V.V. "Visualization of metalworking processes in the development of simulation programs for equipment with numerical control", IOP Conference Series: Materials Science and Engineering, Krasnoyarsk Science and Technology City Hall of the Russian Union of Scientific and Engineering Associations, 2020, pр. 32092.

2. Banovic M., Mykhaskiv O., Auriemma S., Walther A., Legrand H., Müller J.-D. "Algorithmic differentiation of the Open CASCADE Technology CAD kernel and its coupling with an adjoint CFD solver", pp. 813-828

3. Averbukh V.L., Bakhterev M.O., Vasev P.A., Manakov D.V, Starodubtsev I.S. "Development of approaches to realization of specialized visualization systems", GraphiCon, 2015, pp. 17-21.

4. Slyadnev S.E., Malyshev A.S., Turlapov V.E. "Automated simplification of mechanical-engineering CAD models and assemblies without design history", GraphiCon, 2018, pp. 488-494.

5. Lai J.Y., You Z.W., Chiu Y.K., et al. "On the development of blend faces and holes recognition algorithm for CAE applications", Key Eng. Mater., 2015, no. 656-657, pp. 789-794.

6. Zhu H., Menq C. "B-rep model simplification by automatic fillet/round suppressing for efficient automatic feature recognition", Comput. Aided Des., 2002, no. 34, pp. 109-123.

7. Song P.-P., Lai J.-Y., Tsai Y.-C., Hsu C.-H. "Automatic recognition and suppression of holes on mold bases for finite element applications", Eng. Comput., 2019, vol. 35, no. 3, pp. 925-944.

8. Slyadnev S., Malyshev A., Turlapov V. "CAD model inspection utility and prototyping framework based on OpenCascade", GraphiCon 2017, pp. 323-327

9. Tsygankov D., Pokhilko A. "Designed product 3D-model semantic representation in a CAD-system", Interactive Systems: Problems of Human -Computer Interaction, Ulyanovsk: USTU, 2017, pp. 255-259.

10. Korobeynikov A.G., Fedosovskiy M.E., Gur'yanov A.V., Zharinov I.O., Shukalov A.V. "Development of conceptual modeling method to solve the tasks of computer-aided design of difficult technical complexes on the basis of category theory", Int. J. of Applied Engineering Research, 2017, vol. 12, no. 6, pp. 1114-1122.

Submitted 01.09.2022; revised 10.10.2022 Information about the author

Aleksey N. Yurov, Cand. Sci. (Technical), Associate Professor, Voronezh State Technical University (84 20-letiya Oktyabrya str., Voronezh 394006, Russia), e-mail: kitp@vorstu.ru, tel.: +7 (951) 548-63-12

i Надоели баннеры? Вы всегда можете отключить рекламу.