Российское геометрическое ядро 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-фигурку в заглушку для забора
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Записываю этот опыт скорее как заметку для себя, чтобы не забыть...
Управление любым пультом через Алису (физическое нажатие кнопки)
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Просмотр STL в проводнике Windows как thumbnail
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.













Комментарии и вопросы
поделитесь пожалуйста моделью....
Тут термостат не причем, это о...
отверстие идёт под наклоном и....
В общем столкнулся с такой про...
Где же на этой площадке её пра...
Пытаюсь подключить купленный д...
Я задал вопрос на 3dtoday про...