Российское геометрическое ядро RGK - функциональность для систем "тяжелого" класса
Продолжение публикации о российском геометрическом ядре RGK.
Российское геометрическое ядро RGK (часть 1)
Российское геометрическое ядро RGK - Построение поверхностей и задачи сглаживания (часть 2)
Так как ядро RGK изначально разрабатывается с целью конкуренции с лучшими мировыми промышленными ядрами, в число инструментов ядра внесена различная функциональность, которая требуется прикладным системам «тяжёлого» класса для решения различных специальных задач. Например, задача построения уклона граней формулировалась изначально как задача с указанием фиксированных рёбер произвольной геометрии и возможностью изменения топологии тела в процессе операции (рис. 26).
Рис. 26. Построение уклона граней с фиксированным ребром и изменением топологии модели
Уклон относительно поверхности разъёма, конечно, тоже поддерживается, как частный случай более общей постановки (рис. 27).
Рис. 27. Построение уклона грани с заданной поверхностью разъёма
Другой пример: в булевых операциях помимо традиционного «глобального» режима операций (объединение, вычитание и пересечение) предусмотрены режимы локальных операций, когда приложение может указать, с какими именно гранями надо проделывать селективные булевы операции с возможностью выбора частей исходных тел, которые останутся в результате. Кроме того, предусмотрена обобщённая булева операция, которая может формировать топологическую модель, представляющую тела, контактирующие друг с другом по граням и рёбрам. Важно также отметить, что булевы операции работают как над твёрдыми, так и над поверхностными телами, а также их комбинациями (рис. 28-32).
Рис. 28. Булевы операции над поверхностными телами
Рис. 29. Локальные булевы операции над заданным набором граней тела
Рис. 30. Селективная булева операция (вычитание)
Рис. 31. Селективная булева операция (объединение) над твёрдым и поверхностным телами
Рис. 32. Обобщённая булева операция (объединение): красным цветом выделены грани контакта
В наборе инструментов булевых операций поддерживается функциональность по работе с экземплярами тел (instancing) — техники оптимизации булевой операции над массивами тел, геометрия которых отличается только положением экземпляров в пространстве. Кроме этого, поддерживаются операции «по образцу» (patterning), когда элементы размножаются по заданной грани (рис. 33).
Рис. 33. Размножение граней тела операцией «массив граней» (patterning)
В алгоритмах геометрического ядра повсеместно и активно используются многопоточные вычисления. Эта возможность была заложена в алгоритмы ядра изначально, так как является одним из основных инструментов повышения общей эффективности работы конечного приложения. При этом RGK поддерживает как внутреннее распараллеливание вычислений (когда параллельные потоки запускаются автоматически), так и внешнее (когда параллельные потоки создаются в прикладном коде за пределами функций ядра). Параллельные вычисления позволили на ряде сценариев получить многократный прирост производительности по сравнению с существующими геометрическими ядрами (рис. 34, 35).
Рис. 34. Пример работы алгоритмов булевых операций RGK
Рис. 35. Характерный график загрузки процессора на задаче с предыдущего рисунка
Похожее поведение наблюдается и на большинстве других вычислительно ёмких задач. В частности, на задачах проверки пересечения тел в сборках, расчёта расстояний и построения проекций с удалёнными невидимыми линиями (рис. 36).
Рис. 36. Проекция с удалением невидимых линий сборки крана (9356 тел) и график загрузки процессора на этой задаче
В настоящее время комплект разработчика RGK (SDK) готов к передаче сторонним разработчикам для пробного использования.
Помимо работы над самим ядром выполняются связанные работы в T-FLEX CAD 17. В частности, формат RGK (RGK_XML) теперь поддерживается в составе функций импорта/экспорта как через пользовательский интерфейс системы, так и при помощи Open API. Кроме этого, доступ к объектам модели (телам, кривым) в формате RGK можно получить, воспользовавшись новыми функциями в составе Open API T-FLEX CAD. Эти функции системы позволяют получить геометрические объекты CAD-системы в формате RGK наиболее удобным способом. Последнее обновление T-FLEX CAD 17 поддерживает эти новые возможности.
Работа над ядром идёт высокими темпами, так как компания «Топ Системы» ставит перед собой задачу в максимально короткие сроки достичь уровня существующих западных мировых лидеров в области геометрического моделирования, а возможно, и превзойти этот уровень.
Еще больше интересных статей
Обработка парами ацетона.
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Решил написать пост, тем самым отвечая на часто задаваем...
Резьбовые соединения в 3D моделях
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Свистки? Свистки! ЧО ОПЯТЬ?!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Тут с полгода форсилась тема прикола по заработку на печати свистков. В...
Комментарии и вопросы
Очень интересно посыпались рол...
У меня посудомока DEXP она же....
Спасибо за файлы с опозданием....
Добрый вечер! Подскажите пожал...
Всех приветствую, у меня 3д пр...
Печатаю на принтере Ender 3 v3...
ellego