Как посмотреть модель CATIA, NX, Creo, SolidEdge или SolidWorks, если нет исходной CAD-системы

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

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

Ксения Носулько, старший математик-программист, C3D Labs, рассказывает о новых функциях 3D-моделирования в решателе C3D Solver.
Модуль С3D Solver предназначен для управления взаимосвязями между геометрическими объектами. Он состоит из двумерного и трехмерного решателей, которые обеспечивают автоматическое обновление геометрии при изменениях с сохранением всех ранее наложенных взаимосвязей. Эти взаимосвязи могут быть как размерными (например, расстояния или углы между объектами), так и логическими — совпадение точек, фиксация радиусов, параллельность, перпендикулярность и прочее.
В 2D-решателе появилась поддержка нового объекта — вспомогательной оси. Он задается точкой и направляющим вектором. Ось не является кривой, однако, подобно любому линейному объекту, подчиняется наложенным на нее ограничениям.
Пример кода:

Наталья Яковлева, инженер-программист, C3D Labs, рассказывает о том, что нового появилось в продуктах C3D Vision и C3D Viewer.
C3D Vision — это высокопроизводительная графическая библиотека, ориентированная на инженерные задачи и предназначенная для рендеринга 3D-моделей САПР на настольных компьютерах (рис. 1). Она позволяет визуализировать данные в полигональном представлении, предоставляет API для работы с 3D-моделями, позволяет задавать иерархию визуальных объектов и выполнять необходимые преобразования.

Роман Садовников, к.т.н., программист C3D Solver, C3D Labs, рассказывает о нововведениях в модуле C3D Collision Detection.
Модуль C3D Collision Detection применяется в различных отраслях, включая авиационную и автомобильную промышленность, где он служит для управления движением беспилотных транспортных средств (рис. 1). В робототехнике модуль обеспечивает безопасное перемещение станков ЧПУ в динамичной среде, автоматизацию упаковки и предотвращение столкновений с людьми. В игровых и медицинских приложениях модуль отвечает за обработку столкновений виртуальных объектов и используется в тренажерах для обучения проведению операций. В строительстве и логистике C3D Collision Detection помогает контролировать зазоры, реализовывать 3D-проектирование и автоматизировать строительные процессы.

Ксения Прокофьева, руководитель отдела разработки C3D Converter, C3D Labs, рассказывает об обновлениях и перспективах развития модуля C3D Converter.
До недавнего времени модуль C3D Converter поддерживал только стандартные форматы обмена данными — SAT, STEP, Parasolid и пр. С 2020 г. началась активная работа с проприетарными форматами: изначально с использованием сторонних решений. А начиная с 2023 г. началось развитие собственных разработок (рис. 1).

Александр Лонин, руководитель группы полигонального моделирования, C3D Labs, рассказывает о функциональности и перспективах развития модуля C3D PolyShaper. Рассматриваются методы создания и обработки полигональных объектов, новые алгоритмы сшивки и улучшения в триангуляции, а также диагностика и исправление дефектов сеток. Автор делится планами по реверс-инжинирингу органических форм, работе с неявными поверхностями и учету неманифолдности в булевых операциях.
Мы консолидировали все наработки по полигональному моделированию, результатом чего стал новый модуль в составе C3D Toolkit — C3D PolyShaper. Этот модуль официально зарегистрирован в реестре отечественного программного обеспечения. Он представляет собой набор классов и функций для работы с полигональными объектами и топологией. Рассмотрим текущую функциональность модуля, направления разработки и перспективы дальнейшего развития.
Полигональный объект с топологией может быть получен несколькими способами: путем конвертации из ранее существовавшего объекта MbMesh, считыванием данных из файлов форматов JT, STL и OBJ, созданием на основе параметрической оболочки или построением вручную. При чтении данных из файла необходимо восстановить топологическую информацию — другими словами, выполнить сшивку модели. Алгоритм сшивки был усовершенствован и теперь способен обрабатывать случаи с совпадающими треугольниками, что особенно актуально при работе с моделями строительных конструкций.

Татьяна Кондрикова, руководитель группы C3D Modeler, С3D Labs, рассказывает о новых возможностях геометрического ядра C3D и планах по его дальнейшему совершенствованию.
Обновления в C3D Modeler 2025 охватывают сразу несколько ключевых направлений: каркасное моделирование, оболочки, прямое моделирование, листовое моделирование, а также диагностику и системные улучшения. Одним из значимых нововведений стала операция построения срединной кривой (рис. 1) — множества точек, равноудаленных от двух заданных кривых. Эта операция применяется к двум кривым на плоскости, которые могут быть замкнутыми или разомкнутыми и состоять из стыкованных по касательной сегментов без самопересечений. Результат представлен в виде NURBS-кривой.

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

Татьяна Митина, руководитель подразделения C3D Labs в Нижнем Новгороде, рассказывает, как устроена многопоточность ядра C3D, какими механизмами обеспечивается потокобезопасность ядра, какие параллельные вычисления происходят в самом ядре. Особое внимание уделяется правилам использования ядра C3D в нескольких потоках.
Многопоточность — отличный повод заглянуть в параллельные миры!
Для начала уточним терминологию. Под потокобезопасностью мы понимаем безопасность использования данных в нескольких потоках. А многопоточность — это способность кода выполнять вычисления в нескольких потоках, используя потокобезопасность обрабатываемых данных.

Как ИТ-компании решают вопрос кадрового голода? Как правительственные программы помогают вовлекать работодателей в образовательный процесс? Почему в C3D Labs появился отдел образовательных проектов? Рассказывает Любовь Белянина, руководитель по работе с персоналом C3D Labs.
«Охота» на специалистов и кадровый голод
Еще до недавнего времени бизнес был в активном поиске готовых специалистов, которых не нужно было обучать. Человек, получивший высшее образование, часто оказывался в условиях суровой действительности, где без опыта работы трудоустроиться было крайне проблематично. Молодые, мотивированные и потенциально продуктивные кадры оказывались за периметром отбора на многие вакансии. В вузах же часто обучение строилось в отрыве от реальных потребностей бизнеса.
Такое положение вещей привело к пресловутому кадровому голоду, нехватке квалифицированных специалистов и «пробке из джунов» – пожалуй, основным трендам последних лет, с которыми столкнулись многие компании. В Москве и Санкт-Петербурге на одну вакансию приходит 5–6 резюме от специалистов без опыта или с минимальным опытом работы. При этом, к сожалению, часто у таких кандидатов нет необходимых бизнесу знаний (а не только практических навыков).
Очевидно, что так не могло продолжаться бесконечно. У коммерческих компаний неизбежно возникает потребность пересмотра кадровой политики, а у вузов – установления тесных связей с компаниями. Пожалуй, это даже не вопрос выбора, а понимание объективной необходимости, которую диктует реальность. На сегодняшний день наблюдается тренд усиления связи между академическим структурами и бизнесом.

Александр Лонин, руководитель группы полигонального моделирования C3D Labs, к.ф.-м.н, представляет новую разработку компании — полигональное ядро C3D PolyShaper — и рассказывает о новых возможностях инструментов реверс-инжиниринга, алгоритмах модификации при процессинге сеток, диагностике и лечении сеток.

С3D Solver – это инструмент для разработчиков, работающих с 2D и 3D-моделированием. Он позволяет создавать параметрические сборки из твёрдых тел и эскизы, накладывая на них связи (ограничения). Мы остановимся непосредственно на трёхмерном решателе, чтобы на его примере ответить на возникающие у разработчиков приложений вопросы, которые и послужили толчком к написанию данной статьи. Например, расскажем о значении синхронизации представлений геометрических объектов – это наиболее распространенная проблема, возникающая при использовании трёхмерного решателя. А также в рамках статьи погрузимся в основные аспекты работы программиста конечного приложения с С3D Solver, рассмотрим функциональность математической библиотеки и пройдём путь от клика по иконке до сопряжения геометрических объектов на конкретном примере.
Чтобы лучше ориентироваться в предметной области и терминах, которые будут упоминаться, начнём с краткого описания базовых понятий. В статье рассмотрим три представления твёрдых тел. Изображение модели, которую пользователь видит на экране, мы будем называть графическим представлением. Следующее представление – модельное. Оно включает в себя описание топологии моделируемого объекта, связей элементов геометрической модели, историю её построения и атрибуты элементов. За него отвечает геометрическое ядро C3D Modeler. Наконец, есть параметрическое представление, которое обеспечивает взаимосвязь элементов модели, позволяя редактировать её, синхронно изменяя положение тел. Воплощается оно в системе геометрических ограничений GCM_System под управлением C3D Solver, который не имеет прямой связи с твёрдыми телами модельного представления. Отсюда возникает важная особенность – необходимость синхронизации представлений.

Денис Стаценко, руководитель отдела продуктового маркетинга C3D Labs, представляет новую разработку компании — полигональное ядро C3D PolyShaper — и рассказывает об истории ее создания, функционале и областях применения.
C3D PolyShaper — новая разработка компании C3D Labs, полигональное ядро, представляющее собой набор инструментов для редактирования, анализа и устранения дефектов полигональных объектов.
Рассмотрим предпосылки появления этого модуля.

Максим Кулагин, руководитель технической поддержки C3D Labs, делится секретами предоставления эффективной технической поддержки и объясняет, как правильно создавать запросы.
Если говорить об отделе технической поддержки в терминах информационных технологий, то он представляет собой некий фронтенд, который принимает запросы пользователей, проводит предварительную обработку и передает данные разработчикам, которых в тех же терминах можно называть «бэкенд». Разработчики прорабатывают запросы, выполняют необходимые действия и возвращают результат.
Давайте рассмотрим, какой путь преодолевает запрос пользователя.
У пользователя возникает некоторая проблема, с которой он не может справиться. Он посылает запрос в техническую поддержку. Начинается обработка присланного запроса. На уровне отдела технической поддержки специалисты пытаются воспроизвести ситуацию, оценивают проблему, определяют, к какому модулю поставляемого ПО относится запрос. Это может быть вопрос, проблема, сообщение об ошибке в поставляемом ПО или просто случай неправильного использования, когда требуется совет от разработчика. Очень часто бывают ситуации, что в запросе есть не все требуемые данные и необходимо запросить недостающее. Иногда без этого невозможно воспроизвести проблему или даже понять, в чем она. Специалист поддержки запрашивает информацию, пользователь отправляет дополнительные данные. Иногда эта переписка происходит достаточно долго, пока все необходимые данные не будут собраны.
Итак, информация получена, проблема воспроизводится, что дальше?

В рубрике «История одного ядра» рассказываем о людях, которые своим трудом и талантом создают историю C3D Labs. Мы поговорили с Андреем Туманиным, руководителем отдела разработки геометрического ядра C3D Modeler, и узнали, как Андрей прошел путь от романтики судостроительной отрасли к руководству командой математиков-программистов ядра.
— Андрей, расскажи, где прошло твоё детство?
Детство прошло в Нижегородской области.
— Мечтал ли ты стать математиком? Или, может, пошел по стопам родителей?
Стать математиком не мечтал, родители тоже к этой сфере не относятся. Мне повезло, у меня в школе были хорошие педагоги по математике — Лилия Михайловна Владимирская и Нина Константиновна Владимирская, которые привили любовь к точным наукам. Разумеется, была склонность к техническим предметам. В целом класса с 8-го я был нацелен на мехмат ННГУ, занимался в заочной математической школе при этом факультете.
— Ты учился на механико-математическом факультете ННГУ им. Лобачевского. Сложно ли было поступить и учиться?
Для меня поступить было сложнее, чем учиться. В студенческие годы жил в общежитии. Первые три курса сосредоточился на учебе, а потом работал. С четвертого курса уже работал.

Анна Ладилова, руководитель команды DevOps в C3D Labs, раскрывает причины возрастающей роли Linux в разработке, описывает связанные с этим изменения, которые происходят в процессе доставки ядра C3D, а также делится планами дальнейшего развития.
В 2022 году компания C3D Labs начала собирать геометрическое ядро C3D на базе платформы «Эльбрус».

Сергей Климкин, руководитель группы C3D Web Vision, C3D Labs, рассказывает о том, что из себя представляет модуль Web Vision, освещает текущие рабочие проекты и знакомит с планами по развитию компонента.
Web Vision — это клиент-серверный модуль, предназначенный для визуализации в браузере. Он включает процессы управления камерой, такие как панорамирование, вращение, зумирование, причем как с помощью компьютерной мыши, так и с помощью жестов на сенсорном экране. Процесс поиска геометрии можно осуществлять как в режиме поиска под курсором, так и рамкой — секущей и объединяющей. Кроме того, имеются функции управления видимостью, масштабирования камеры и динамического сечения.
Web Vision состоит из двух частей. Первый, frontend-часть, представляет собой npm-пакет, поставляющийся для внедрения в браузер разработчика. В него входит Type Script API для управления свойствами визуализации — скрытия объекта, его покраски и других способов взаимодействия с графикой. Второй компонент, серверная часть, в большей степени ориентирован на управление данными. Серверная часть используется для конвертации, подготовки данных для визуализации, получения атрибутной информации, метаданных и т. д. Управление сервисом происходит с помощью REST API, это сделано для интеграции с микросервисной архитектурой.

Эдуард Максименко, руководитель команды разработки C3D Vision, к.т.н., C3D Labs, знакомит с новыми возможностями основного компонента визуализации — C3D Vision — и представляет усовершенствования для инструментов, которые давно находятся в распоряжении пользователей.
Прежде чем перейти к основным темам, давайте уточним, что такое C3D Vision. C3D Vision — это кроссплатформенная графическая библиотека (SDK), которая дает возможность визуализировать практически любое полигональное представление геометрии. Графическая библиотека Vision ориентирована на систему автоматизированного проектирования, и основной функционал включает:
Александр Спиваков, руководитель команды разработки C3D Converter, C3D Labs, описывает роль конвертера в качестве части C3D Toolkit, представляет сценарии использования C3D Converter — миграция и MultiCAD — в пользовательских приложениях, знакомит с доработками решения, сделанными в контексте этих задач, и планами развития конвертера.
Что собой представляет C3D Converter в составе C3D Toolkit и зачем он нужен? Глобально перед нами стоят две задачи.

Александр Алахвердянц, ведущий математик-программист, C3D Labs, знакомит с новинками в двухмерных и трехмерных решателях — продуктах, которые разрабатываются в группе C3D Solver.
Что такое решатели? Решатели — это библиотеки, которые позволяют накладывать связи на геометрические объекты. Эти связи мы называем ограничениями. Они бывают двух видов: логические (касания, симметрии, совпадения) и размерные (угловой и линейный размеры, паттерны). Кроме того, мы предоставляем функционал анализа степеней свободы, минималистичного драггинга и логирования вызовов API. Логирование вызовов API значительно помогает при составлении баг-репортов.
Первая и главная новинка группы C3D Solver в этом году — это появление нового типа объектов, а именно двумерных паттернов.