Romashki Macros — это коллекция скриптов для автоматизации работы в Компас-3D.
Целью этого проекта на GitHub является размещение открытого исходного кода этих скриптов.
В этом проекте немалая доля функционала узкоспециализирована. В ряде случаев подразумевается работа по определенной методологии. Не исключено, что для массового пользователя некоторые макросы могут быть неприменимы или неудобны.
Большинство макросов поддерживают Компас v16. Макросы работоспособны в Компас v22.
Графический интерфейс программы представляет собой окно, по-умолчанию отображаемое поверх всех окон, с настраиваемой панелью команд.
Коллекция включает в себя следующие макросы:
do_not_disturb— переключение режима "Не беспокоить" (отключение всплывающих окон типа "Перестроить сборку?" с ответом "Нет" на них);change_bg— переключение цвета фона модели и чертежа (например, для скриншотов);dwg_hidden_layers— создание скрытых слоёв в видах чертежа;fast_export— экспорт по одному клику в разные форматы, включая PDF;stamp— заполнение основной надписи по настраиваемым шаблонам;fix_lcs— исправление настроек создания локальных систем координат в модели;fast_mate— создание особым образом сопряжений "Совпадение" в сборках;fast_parts— создание деталей при работе по методологии сверху-вниз;fast_dxf— экспорт DXF-фрагмента из модели или чертежа;fast_material— задание материала и плотности в обход Справочника "Материалы и сортаменты" из своего настраиваемого списка;sheet_layout— применение оформления чертежа из lyt-библиотеки;surface_and_demand— указание общей шероховатости и технических требований на чертеже (для старых версий Компаса, где не было шаблонов);exclude_from_spc— управление включением в спецификацию деталей в сборке (для старых версий Компаса);parts_painting— покраска компонентов сборки, в том числе иерархическая;bulk_rename— пакетное изменение некоторых свойств компонентов сборки в их моделях-источниках;fast_mirror— создание зеркального массива для тел при выборе их элементов (вершин, ребер, граней);fast_rollback— изменение порядка элементов дерева построения;fast_rvd— некоторая автоматизация при работе с моделями рукавов высокого давления;welding— создание упрощенных твердотельных обозначений сварных швов;
а также модуль HEAD.py с удобными функциями для упрощения разработки макросов Компас-3D, с поддержкой Python type hints (указаний о типах); и другие модули для разработки графических интерфейсов на PyQt5.
Полного и подробного описания команд макросов в этом проекте нет, но в каждом модуле Python-кода есть пояснения его принципов работы.
Программа поставляется в виде одного исполняемого файла. Устанавливать ничего не требуется.
Последнюю скомпилированную версию можно скачать в разделе Релизы.
Для работы с исходным кодом этого проекта нужно установить Python и набор пакетов и подготовить файлы библиотек Компас API согласно видео-инструкции от Сергея Кузьмина, а именно:
-
Установить Python 3.
-
Установить пакет
pywin32:pip install pywin32 -
Скопировать файлы:
Kompas6API5.py KompasAPI7.py ksConstants.py ksConstants3D.py LDefin2D.py LDefin3D.py MiscellaneousHelpers.pyиз папки (путь может отличаться):
C:\ProgramData\ASCON\KOMPAS-3D\21\Python 3\App\Lib\site-packages\pythonwinв папку (путь может отличаться):
C:\Program Files\Python39\Lib\site-packages\pythonwin -
Установить пакеты:
pip install PyQt5 pyexcel_ods3
Обратите внимание на мой проект Romashki Dimensions — программу-макрос для работы с размерами в чертежах Компас-3D.
Загляните на мой сайт — там есть генератор тернарных выражений для переменных в Компас-3D, калькулятор допусков и посадок и еще некоторые полезности.
