Конвертация файлов из CAD систем в 3DS Max.

Отличие CAD систем от систем полигонального 3D моделирования

Те, кто работает в программах трехмерного моделирования, прекрасно знают отличия CAD систем от программ полигонального 3D моделирования.

CAD система позволяет создавать 3D модели для дальнейшего производства, вовлекать их в технологическую цепочку предприятия, создавать чертежи на базе полученных 3d моделей и сборок, и готовить весь пакет технологической документации. К таким программам можно отнести – SolidWorks, Autodesk Inventor, ProEngeneer и множество других. Архитектура моделирования изделий в этих системах позволяет на любом этапе создания модели вернуться к предыдущему шагу, поменять какие либо параметры ( размеры, сами эскизы и т.п.) в результате чего модель сразу же может менять свою геометрию, а так же сама сборка ( если изменяемая деталь находится в составе сборки). Информация о действиях при создании 3D модели сохраняется в виде «дерева построения» — четкой иерархической структуре. Именно меняя параметры в дереве построения, меняется вся модель. И, конечно же, эти параметры задаются с высокой точностью, что и необходимо при производстве изделий и оказывает влияние на точность сборки в целом.

Программы полигонального 3D моделирования, 3DS Max, например, обладает колоссальными возможностями для создания сколь угодно сложных 3d моделей, но лишенных абсолютно какой либо ценности в плане дальнейшего их производства. Программа позволяет создать лишь примерную по точности модель, из которой нельзя получить ни чертежей, ни чего либо другого.Поверхности в них формируются не точными математическими выражениями, контролирующими формы изделий, а наборами полигонов, которые могут «плавать» в плане точности.
Но огромный плюс программы – это возможность создать великолепные фотореалистичные изображения 3D моделей, сделать сложную анимацию. Именно в этом моменте получается, что необходимо состыковать сложные 3D модели, полученные из CAD систем с дальнейшей их визуализацией ( анимацией) в программе 3DS MAX.

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

Вся сложность заключается в корректном переводе файлов CAD систем в полигональные сетки. Мало того что 3D Max вообще не понимает CAD форматы, что ведет к некорректной полигональной сетке,, конвертация через промежуточные форматы может увеличить размер конечного файла десятки раз. А учитывая, что при создании рендеров и просчете визуализации система и так работает на пределе возможностей, объем визуализируемой сцены, здесь может иметь критически важное значение. Надо всегда стремиться, по возможности, уменьшить объем файла или сцены.

Перевод CAD to POLY

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

3D моделирование в Solidworks
Тестовая 3D модель

Запомним объем сборки

Создание 3D моделей в SolidWorks
Объем сборки 3D модели

Наиболее оптимальным вариантом промежуточного сохранения я считаю перевод в промежуточный формат .step

Конвертация 3D моделей
Конвертация 3D модели

Видим, что все данные сохранились в одном файле, и объем его уже вырос почти на 50 %.

Изменение объема файла при конвертации
Вес 3D модели при конвертации

Все конвертации я осуществляю через программу Rhinoceros.Это очень хорошая и мощная программа для 3D моделирования. Она сочетает в себе мощность NURBS моделирования и имеет большие возможности по работе с полигонами и сетками.Несмотря на кажущуюся простоту, это очень сложная в освоении программа
Открываем полученную деталь в Rhino.

3D моделирование в среде Rhino
Полиповерхности в Rhinoceros

Rhino перевел все детали нашей сборки в полиповерхности. Теперь мы можем перевести все поверхности в сетки. Один важный момент – в сборках может быть большое количество однотипных деталей – винты, гайки и так далее. Лучше все детали в Rhino сразу загнать в слои.
Сейчас у нас есть только один слой. Если не разбить по слоям, при дальнейшем импорте в 3DS Max может возникнуть проблема, что все однотипные детали будут отдельными деталями, а не группами.

3D модель в Rhinoceros
Работа со слоями в Rhinoceros
Создание слоев в Rhino
Размещение компонентов сборки в слои

Далее, используя функции mesh из Rhino мы конвертируем полиповерхности в mesh.Обязательно запускаем анализ получившихся сеток.

Создание сетки 3D модели из полиповерхностей
Перевод полиповерхности в сетку

 

3D моделирование в среде Rhino 3D
Проверка сетки на корректность

 

Таким образом мы смогли корректно переконвертировать поли в меш.Одновременно и сохранилась структура слоев. Открываем отдельно сохраненную сетку.Обратите внимание, что объем файла сетки по сравнению с исходным SolidWorks файлом увеличился с 500 кб до 838 кб.
И это еще без упрощения сетки. Далее проверяем сетку и упрощаем по количеству полигонов. Сделав пару тройку вариантов, добиваемся того, чтобы сетка совсем не была упрощена и геометрия совсем не ушла в Low-poly.

Перевод 3D модели surface to mesh
Упрощение сетки 3D модели

 

Далее экспортирую чистый mesh в отдельный файл, открываем его Rhino.Теперь задача состоит в том, чтобы уменьшить размер Mesh так, чтобы он не повлиял на отображение модели с одновременным уменьшением веса. Как пример, я сделал reduce на уровне 30% от исходного mesh, полученного переводом из полиповерхностей. Обратите внимание – размер файла практически соразмерим с размером исходного файла ( было 495 кб в soidworks и стало 579 кб mesh)

Для экспорта в 3DS Max я так же рекомендовал бы экспортировать mesh слоями используя формат .3ds. Таким образом вы получите набор групп, к которым вы сможете применить материалы и визуализировать 3D модели тем рендерером, который используете в своей работе, например 3DS Max+V-Ray.

© 2011–2019 kd3d.ru | Москва,Врачебный проезд,д.10,к.1