По многочисленным пожеланиям наших клиентов, которые используют разнообразные CAD-системы трехмерного моделирования и хотели бы получить простой, удобный и легко расширяемый инструмент для работы с 3D-моделями в среде TechnologiCS, решено разработать расширение «Интеграция TechnologiCS с CAD-системами».
Расширение должно обеспечивать:
Работа с файлами 3D-модели в среде TechnologiCS предполагает следование определенным правилам создания, связывания и выгрузки документов из архива TechnologiCS.
Попробуем разобраться, в чем эти правила заключаются.
Первое: работа со сборкой, чертежом и даже, возможно, деталью в CAD-системе подразумевает, что это работа одновременно с несколькими файлами, связанными между собой. На рис. 1 приведен пример 3D-модели и структура связей файлов, входящих в ее состав.
Из примера наглядно видно, что для открытия в CAD-системе сборки «СБ0» требуется наличие всех файлов, входящих в ее состав (полная входимость). То же самое можно сказать и о чертеже, который нужно открыть в CAD-системе для редактирования.
Возникает вопрос, как хранить файлы 3D-модели в архиве TechnologiCS. Если все их собрать в одном документе, возникнет ряд сложностей:
Из этого следует, что один документ TechnologiCS должен содержать в своем файловом составе один файл CAD-системы. Пример документов и их файловый состав в архиве TechnologiCS приведен в таблице 1.
Документ/ наименование |
Документ/ вид |
Файловый состав |
---|---|---|
СБ0 | 3D-модель | СБ0.iam; *Structure.bmp |
СБ1 | 3D-модель | СБ1.iam |
СБ3 | 3D-модель | СБ3.iam |
ДЕ3−1 | 3D-модель | ДЕ3−1.ipt |
ДЕ4−2 | 3D-модель | ДЕ4−2.ipt; *ДЕ4−2.xls |
ДЕ3−2 | 3D-модель | ДЕ3−2.ipt |
ДЕ2000 | 3D-модель | ДЕ2000.ipt |
ДЕ1−1 | 3D-модель | ДЕ1−1.ipt |
ДЕ1−2 | 3D-модель | ДЕ1−2.ipt |
СБ2 | 3D-модель | СБ2.iam |
СБ4 | 3D-модель | СБ4.iam |
ДЕ4−1 | 3D-модель | ДЕ4−1.ipt |
Второе: чтобы повторить структуру связей файлов, входящих в состав 3D-модели, необходимо установить связи между соответствующими документами в архиве TechnologiCS. После этого мы сможем легко и быстро определять, какой список документов необходимо выгрузить для открытия 3D-модели. Пример того, как должны быть установлены такие связи, показан в таблице 2.
Номер позиции |
Файл CAD-системы |
Документ/ наименование |
Документ/ вид |
Вид связи |
Применяемость/ наименование |
---|---|---|---|---|---|
1. | СБ0.iam | СБ0 | 3D-модель | 3D-модель | СБ0 |
1.1. | СБ1.iam | СБ1 | 3D-модель | 3D-модель | СБ0 |
1.1.1. | ДЕ1−1.ipt | ДЕ1−1 | 3D-модель | 3D-модель | СБ1 |
1.1.2. | ДЕ1−2.ipt | ДЕ1−2 | 3D-модель | 3D-модель | СБ1 |
1.1.2.1. | ДЕ4−2.ipt | ДЕ4−2 | 3D-модель | 3D-модель | ДЕ1−2 |
1.1.3. | СБ3.iam | СБ3 | 3D-модель | 3D-модель | СБ1 |
1.1.3.1. | ДЕ3−1.ipt | ДЕ3−1 | 3D-модель | 3D-модель | СБ3 |
1.1.3.1.1. | ДЕ4−2.ipt | ДЕ4−2 | 3D-модель | 3D-модель | ДЕ3−1 |
1.1.3.2. | ДЕ3−2.ipt | ДЕ3−2 | 3D-модель | 3D-модель | СБ3 |
1.1.3.2.1. | ДЕ2000.ipt | ДЕ2000 | 3D-модель | 3D-модель | ДЕ3−2 |
1.2. | СБ2.iam | СБ2 | 3D-модель | 3D-модель | СБ0 |
1.2.1. | ДЕ1−2.ipt | ДЕ1−2 | 3D-модель | 3D-модель | СБ2 |
1.2.1.1. | ДЕ4−2.ipt | ДЕ4−2 | 3D-модель | 3D-модель | ДЕ1−2 |
1.2.2. | СБ3.iam | СБ3 | 3D-модель | 3D-модель | СБ2 |
1.2.2.1. | ДЕ3−1.ipt | ДЕ3−1 | 3D-модель | 3D-модель | СБ3 |
1.2.2.1.1. | ДЕ4−2.ipt | ДЕ4−2 | 3D-модель | 3D-модель | ДЕ3−1 |
1.2.2.2. | ДЕ3−2.ipt | ДЕ3−2 | 3D-модель | 3D-модель | СБ3 |
1.2.2.2.1. | ДЕ2000.ipt | ДЕ2000 | 3D-модель | 3D-модель | ДЕ3−2 |
1.2.3. | СБ4.iam | СБ4 | 3D-модель | 3D-модель | СБ2 |
1.2.3.1. | ДЕ4−1.ipt | ДЕ4−1 | 3D-модель | 3D-модель | СБ4 |
1.2.3.1.1. | ДЕ2000.ipt | ДЕ2000 | 3D-модель | 3D-модель | ДЕ4−1 |
1.2.3.2. | ДЕ4−2.ipt | ДЕ4−2 | 3D-модель | 3D-модель | СБ4 |
Третье: следует отметить, что если при выгрузке на просмотр или редактирование каждого отдельного документа использовать стандартные команды Просмотр или Редактирование, файловый состав будет помещаться в свою уникальную папку. Это приведет к тому, что при открытии 3D-модели CAD-система не найдет нужных файлов и попросит указать к ним путь. Такой способ открытия становится слишком медленным и сложным.
Для одновременной выгрузки всех документов, входящих в 3D-модель, целесообразно использовать режим Связанные документы (полная входимость) в архиве TechnologiCS (рис. 2).
Режим позволяет выгружать набор связанных документов в контексте одного (головного) документа. Файловый состав всех выгруженных документов попадет в папку выгрузки головного документа, а это в свою очередь позволит открыть 3D-модель в CAD-системе без дополнительного указания пути к каждому отдельному файлу.
Из сказанного следует, что совпадение имен файлов в связанных документах недопустимо.
Исходя из поставленных задач и особенностей работы с файлами 3D-модели, расширение решено разработать в виде набора скриптовых модулей TechnologiCS, которые дополняли бы возможности нового режима Связанные документы (полная входимость) и позволяли удобно работать с файлами трехмерных моделей.
Такой способ реализации позволяет оптимизировать или доработать скриптовые модули под требования пользователя, тем самым давая возможность в простом и понятном виде открывать на редактирование из среды TechnologiCS сложные 3D-модели, а также создавать новые документы на основе файлов в соответствии с составом 3D-модели.
Более того, в TechnologiCS 6 появилась возможность выполнять пользовательские функции в команде над типом файла (рис. 3). Это позволяет реализовать управление процессом загрузки/выгрузки документа и проводить пред- и постобработку измененных документов в требуемом виде.
Для выгрузки документов (головного и всех входящих в него с видом связи «3D-модель») необходимо выполнить команду Редактировать с вложениями применительно к головному документу (рис. 4). Скриптовый модуль запустится, минуя стандартную процедуру выгрузки.
В появившемся окне пользователь может выбрать документы, файловый состав которых требуется выгрузить, и, соответственно, те документы, которые необходимо заблокировать (рис. 5). Файловый состав заблокированных документов в дальнейшем можно будет обновить.
Все файлы выгруженных документов попадают в папку выгрузки головного документа. Далее автоматически запускается соответствующая CAD-система и открываются выгруженные файлы 3D-модели.
Часто бывает, что в процессе разработки 3D-модели возникает необходимость заимствовать другую, уже разработанную и опубликованную в архиве TechnologiCS 3D-модель или ее компонент (один или несколько документов).
Для этого, используя базовый функционал команды Операции со связанными документами (рис. 6), следует добавить необходимые документы 3D-моделей в список связанных документов (рис. 7).
Файловый состав добавленных документов попадет в папку выгрузки головного документа. Теперь эти файлы можно использовать в разрабатываемой 3D-модели.
Для обновления файлового состава заблокированных документов, а также формирования новых документов TechnologiCS на основе созданных компонентов (файлов CAD-системы), входящих в состав разрабатываемой 3D-модели, необходимо выполнить над головным документом команду Обновить документ (рис. 8). В результате, минуя стандартную процедуру обновления документа, запустится скриптовый модуль.
В появившемся окне (рис. 9) отображаются:
Остановимся подробнее на дереве файлов 3D-модели. Это дерево строится на основе связей (входимостей), прочитанных через API CAD-системы, что дает возможность автоматически устанавливать связи между создаваемыми документами на основе файлов 3D-модели.
Для создания документов необходимо выбрать из контекстного меню команду Создать вложенные документы/связи. После этого форма будет разделена на три части (рис. 10):
На основе этого списка будут установлены связи между документами.
Для создания документов/связей используется соответствующая кнопка Создать документы/связи. При ее нажатии появляется стандартная форма создания документа (рис. 11).
Используя настройки видов документов, можно свести к минимуму рутинные операции по заполнению полей. При этом скриптовый модуль настроен так, чтобы поле Наименование автоматически заполнялось в соответствии с именем файла.
Хотелось бы отметить, что представленное расширение является базой для дальнейшей разработки и развития интеграции с CAD-системами. Очень важно, что все это пользователи могут осуществлять самостоятельно, не прибегая к услугам разработчика.
Расширение поставляется на дистрибутивном диске TechnologiCS, содержит инструкцию по настройке и эксплуатации.
В перспективе планируется реализация следующих функций: