28.07.2022 • C3D Modeler, C3D Web Vision, C3D Solver, C3D Vision, C3D Converter

C3D Labs выпустила C3D Toolkit 2022 для разработки инженерных 3D-приложений

Компания C3D Labs представляет новую версию набора инструментов для разработки инженерного программного обеспечения C3D Toolkit 2022. В релизе обновлены основные компоненты: геометрическое ядро C3D Modeler, параметрический решатель C3D Solver, конвертеры данных C3D Converter и модуль визуализации C3D Vision.

Существенные изменения также внесены в компоненты C3D FairCurveModeler и C3D Web Vision, пополнившие список программных продуктов C3D в прошлом году. Тесно связанные между собой, они составляют целостное решение для создания настольных, мобильных, облачных и веб 3D-приложений.



В релизе 2022 были учтены потребности разных софтверных рынков, и сегодня C3D Toolkit предлагает мощный инструментарий для разработки классических CAD/CAM/CAE-систем, а также продуктов в сфере BIM, VR, 3D-сканирования и цифрового производства.

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

Поверхностное моделирование

В геометрическом ядре C3D Modeler 2022 активное развитие получила функциональность сложного поверхностного моделирования, которую традиционно относят к «тяжелому» классу. Она открывает путь к решению САПР-задач в авиационной промышленности, двигателе- и судостроении.

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



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





Данные доработки произведены с целью расширения области применения поверхностей конического сечения; они помогут моделировать сложные обводы конструкций, которые используются в авиа-, судо- и турбомашиностроении.

Произведены крупные доработки поверхностей по сети кривых (ППСК). В частности, были проведены работы по улучшению операции гладкого сопряжения на границах этих поверхностей.



Функционал линейчатых поверхностей расширен следующими новыми методами их построения:

  • по кривой и направлению
  • по кривой и поверхности
  • по кривой с касанием поверхности
  • с касанием двух поверхностей.


Доработан функционал операции заплатка. Ранее он разрешал моделировать заплатку на поверхности Кунса только в случае, когда все ее границы гладко сопряжены с исходными поверхностями. Теперь заплатку можно построить и на границах, где условие касательности нарушается.



В операции продления многогранных поверхностей были проведены работы по устранению перехлеста или расхождения граней, подвергающихся продлению. Теперь если продляемые грани перехлестываются или расходятся, метод строит для них общее ребро.



Методы построения кривых

В первую очередь, стоит рассказать об изменениях, которые претерпел модуль построения плавных кривых C3D FairCurveModeler. Среди его новых интересных функций теперь присутствует метод аппроксимации массива зашумленных точек. В данной задаче на вход обычно поступают следующие параметры: массив зашумлённых точек и некоторая NURBS-кривая. На рисунке ниже в верхнем правом углу можно видеть, что график кривизны такой кривой обладает «осциллирующим» эффектом.



В результате работы нового алгоритма мы получаем гладкое изменение кривизны кривой (нижний правый угол), что подтверждается ее графиком.

В C3D FairCurveModeler также были улучшены алгоритмы построения кривых для граничных случаев, добавлены строители плавных кривых и новые функции API.

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

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





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





Твердотельное моделирование

Функционал для редактирования твердых тел в геометрическом ядре модернизирован. В частности, были улучшены следующие операции над телами:

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


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





Листовое моделирование

C3D Modeler содержит уникальную для геометрических ядер функциональность листового моделирования.

В версии 2022 улучшена операция построения вырезов в листовом теле. Данный метод теперь позволяет нормализовать моделируемые вырезы в различных «косых» элементах тела. Под нормализацией понимается обеспечение перпендикулярности кромок получаемых вырезов. Улучшение позволит получать правильную развертку листовых тел, имеющих вырезы.



Аналогичная возможность нормализации кромок также доступна и в операции штамповки произвольным телом. Ранее в теле штамповки при моделировании некой вырубки ее кромки были параллельны поверхности этой вырубки, однако теперь есть возможность создавать кромки перпендикулярно поверхности листового тела.



Полигональное моделирование

В C3D Modeler появился совершенно новый тип моделирования, позволяющий ему работать и с полигональными телами. В последнее время команда ядра ведет его активное развитие, что связано, в первую очередь, с большим количеством поступающих от пользователей запросов по этой теме.

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



Для двух пересекающихся полигональных объектов реализована возможность расчета кривой их пересечения. В общем случае полученная кривая представляет набор ломаных линий.





Для диагностики полигональных моделей доступны алгоритмы оценки следующих дефектов:

  • замкнутость полигональной модели
  • краевые ребра
  • ориентация нормалей соседних полигонов (совместность ориентации полигонов).

Для последнего дефекта реализован алгоритм исправления несоответствия ориентации таких полигонов.





Преобразование полигональных моделей в твердотельные

В новой версии C3D Toolkit 2022 подвергся изменениям модуль C3D B-Shaper, выполняющий преобразования тел из полигонального представления в граничное.

Теперь после работы алгоритма распознавания пользователи могут изменять параметры распознанных поверхностей исходного тела непосредственно перед его преобразованием в граничное представление.

На рисунке ниже продемонстрирован пример подобного редактирования поверхностей.



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

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

Также сейчас нами ведутся работы по улучшению алгоритма вписывания в набор полигонов поверхности, в частности, NURBS-поверхности.



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

Параметрический решатель

В двумерном параметрическом решателе C3D Solver главной новинкой можно назвать так называемые оффсетные (эквидистантные) кривые. Такие кривые представлены множеством точек, находящихся на определённом расстоянии от опорной кривой.



Для использования эквидистантных кривых реализованы новые методы в API решателя, которые позволяют добавлять такие кривые, фиксировать их смещение или уравнивать значения смещений.

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



Команда C3D Solver также занимается разработкой и развитием функционала детектора столкновений Collision Detection. В новой версии добавлены новые случаи детектирования:

  • прохождение луча через твердое тело или оболочку

  • обнаружение тела, полностью находящегося внутри другого тела (задача вложения тел).

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

Предварительное чтение и новые версии форматов

В новой версии модуля обмена данными C3D Converter все изменения направлены, в основном, на улучшение внутренней работы компонента, однако среди них можно выделить несколько интересных новинок.

Одной из таких новинок является предварительное чтение модели, направленное на получение только ее атрибутов без чтения геометрии. Такими атрибутами могут быть любые свойства модели, представленные в виде "ключ - значение": числовые, строковые атрибуты, плотность, контрольные характеристики (например, масса) и т.д.

Таким способом разработчики приложения на базе C3D решают проблему интерпретации атрибутов, поскольку не существует единых правил именования свойств как на уровне приложения, так и при передаче их в обменные форматы, быть может, за очень редким исключением. При этом не все атрибуты могут быть интерпретированы (к примеру, служебная информация), тогда функционал конвертеров перенесет их «как есть», а у пользователя будет возможность самостоятельно решать, как их использовать.

Примером использования предварительного чтения является импорт из JT файла в САПР КОМПАС-3D. На рисунке представлен результат работы команды.



Также в C3D Converter 2022 реализовано чтение новых версий форматов SAT и Parasolid – v.27 и v.30 соответственно. Ниже представлены скриншоты моделей, импортированных из форматов этих версий.


SAT v.27


Parasolid v.30

Полную информацию о новинках и доработках модуля обмена данными C3D Converer можно получить из видеозаписи выступления Александра Спивакова.

Веб-визуализация

Возможности визуализации в веб-среде предоставляет компонент C3D Web Vision, выпущенный на рынок в прошлом году. За прошедший год было произведено много доработок, реализована большая часть функционала нативной визуализации C3D Vision, существенно повышена производительность отрисовки, добавлены новинки.

Далее мы перечислим основные возможности, ставшие доступными в веб-компоненте. Некоторые из них перенесены из C3D Vision, другие являются совершенно новыми или специфичными для веб-визуализации.

Для модели появился функционал переключения нескольких режимов отображения: каркас, полутон и полутон с каркасом. В планах у нас добавить оставшиеся режимы, такие как скрытые ребра и контур модели.



Реализована плавная анимация камеры при переключении видов модели. В отличие от десктопной версии в C3D Web Vision такую анимацию можно прервать, например, при выборе другого вида модели. Анимация переключения на текущий вид остановится, вместо нее запустится анимация переключения на новый вид.



Для реализации аннотационной графики разработан новый объект «Геометрические аннотации». Этот объект является уникальным для C3D Web Vison и предлагает улучшенную версию функционала аннотаций, использующегося в нативной визуализации. В частности, при любых манипуляциях с объектом текста на сцене размер шрифта всегда остается одинаковым.

На анимациях ниже демонстрируется различие в работе аннотаций:


в C3D Vision


в C3D Web Vision

Для управления моделью в C3D Web Vision реализованы различные процессы. Некоторые их них дополнительно подверглись изменениям в сравнении с нативной визуализацией.

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



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


Добавление аннотаций


Добавление сечений

Появилась совершенно новая функциональность, позволяющая устанавливать цветовую схему для выделенного элемента модели.



Еще одна новинка позволяет сохранять и восстанавливать параметры камеры. Такая возможность необходима для создания пользовательских видов камеры.



Полную информацию о новинках и доработках модуля веб-визуализации C3D Web Vision можно получить из видеозаписи выступления Сергея Климкина.

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


Демо веб-визуализации

Спешим сообщить вам, что на нашем сайте на странице продукта C3D Web Vision появился новый раздел. В нем вы можете ознакомиться с вьювером C3D Web Viewer, разработанным на базе C3D Web Vision. Данный вьювер создан для демонстрации возможностей веб-движка визуализации и на данный момент позволяет просматривать только одну модель, которая загружается автоматически при открытии вьювера.



На момент написания этой статьи C3D Web Viewer может предложить следующие функциональные возможности нашего веб-компонента:

  • просмотр дерева модели
  • скрытие/показ элементов модели в дереве
  • переключение режимов отображения модели
  • показ всей модели
  • переключение между стандартными видами
  • переключение между параллельной и перспективной проекциями

Мы планируем добавить весь функционал C3D Web Vision во вьювер, а также предоставить пользователям возможность открывать разные модели и загружать свои собственные.


Всего в C3D Toolkit 2022 насчитываются десятки новых методов, сотни улучшений и доработок имеющихся команд. Все новинки уже доступны пользователям. Подробнее о них можно узнать из записей докладов на прошедшей конференции C3Days 2022 на нашем youtube-канале.


Поделиться материалом