This library contains tools for KOMPAS 3D automation
Project description
KOMPAS_tools
Инструменты для автоматизации КОМПАС 3D v20 на python3
!!!Библиотека на раннем этапе разработки!!!
This library contents only russian descriptions here and inside the code. If someone need english description - let me know.
Используемое ПО
- Python 3.11.6
- КОМПАС 3D v20
- PyCharm 2023.2.4 (Community Edition)
Установка
Вы можете установить библиотеку, используя следующую команду в терминале:
pip install kompas-tools
Использование
Для импорта библиотеки используйте следующую конструкцию:
from KOMPAS_tools import Kompas
Для работы с методами необходимо создать объект класса Kompas:
kompas = Kompas() # Запуск или подключение к Компас
При инициализации объекта программа получает доступ к открытой программе КОМПАС 3D, либо запускает КОМПАС 3D
Вызов методов класса выгладит следующим образом:
kompas.название_метода(аргумент1, аргумент2, ...)
Описание методов
Далее приведён список методов с описаниями по категориям
Вывод информации (info_)
kompas.info_general()
Вывод версии КОМПАС и количества открытых документов
kompas.info_active()
Вывод информации об открытом документе
Получение объектов и параметров (get_)
kompas_document, kompas_document_2d, idocument_2d = kompas.get_active_docs()
Получение объектов активного документа (необходимо для работы прочих методов)
Создание файлов (newfile_)
kompas.newfile_drawing()
Создание нового чертежа
Создание рабочих пространств (new_)
kompas.new_view(x: float, y: float, name: str, scale: float, angle=0, color=0xFF0000)
Создание нового вида
- x, y - координаты СК вида относительно глобальной СК
- name - название вида
- scale - масштаб (десятичная дробь)
- angle - угол поворота вида относительно СК
- color - цвет вида (шестнадцатеричное число, BGR [BBGGRR])
Создание геометрии (draw_)
kompas.draw_rectangle(x: float, y: float, height: float, width: float, style=1, ang=0)
Создание прямоугольника
- x, y - координаты нижней левой точки прямоугольника
- height - высота прямоугольника
- width - ширина прямоугольника
- style - стиль линии (1, 2, 3, ...)
- ang - угол поворота относительно левой нижней точки (в градусах)
- Возвращает: id прямоугольника
kompas.draw_circle(x: float, y: float, radius: float, style=1)
Создание окружности
- x, y - координаты центра окружности
- radius - радиус окружности
- style - стиль линии (1, 2, 3, ...)
- Возвращает: id окружности
kompas.draw_line(x1: float, y1: float, x2: float, y2: float, style=1)
Создание линии
- x1, y1 - координаты первой точки
- x2, y2 - координаты второй точки
- style - стиль линии (1, 2, 3, ...)
- Возвращает: id линии
kompas.draw_point(x: float, y: float, style=1)
Создание точки
- x, y - координаты точки
- style - стиль точки (1, 2, 3, ...)
- Возвращает: id точки
Копирование (copy_)
kompas.copy_object(obj_ref: int, x0: float, y0: float, x1: float, y1:float, scale=1, angle=0, hyperlinks_copy=True, spcobj_copy=True, storages_copy=True, dimline_scale=True, attr_copy=True)
Копирование объекта
- obj_ref - id копируемого объекта
- x0, y0 - координаты начальной точки
- x1, y1 - координаты конечной точки
- scale - масштаб копии
- angle - угол поворота копии относительно базовой точки
- hyperlinks_copy - копировать гиперссылки?
- spcobj_copy - копировать объекты спецификации?
- storages_copy - копировать польз. данные и свойства?
- dimline_scale - масштабировать выносные линии?
- attr_copy - копировать атрибуты?
- Возвращает: id копии
Задание свойств объектов и параметров (set_)
kompas.set_developer_name(name: str)
Задаёт имя в строке "Разраб." в основной надписи
kompas.set_inspector_name(name: str)
Задаёт имя в строке "Пров." в основной надписи
kompas.set_tech_control_name(name: str)
Задаёт имя в строке "Т.Контр." в основной надписи
kompas.set_empty_field_name(name: str)
Задаёт имя в пустой строке в основной надписи
kompas.set_reg_control_name(name: str)
Задаёт имя в строке "Н.Контр." в основной надписи
kompas.set_approver_name(name: str)
Задаёт имя в строке "Утв." в основной надписи
kompas.set_drawing_name(name: str)
Задаёт наименование в основной надписи
kompas.set_drawing_designation(designation: str)
Задаёт обозначение в основной надписи
kompas.set_material_name(name: str)
Задаёт название материала в основной надписи
kompas.set_company_name(name: str)
Задаёт название предприятия в основной надписи
kompas.set_mass_val(mass: float)
Задание значения массы в основной надписи
kompas.set_scale_text(scale: str)
Задание текста в поле "Масштаб" в основной надписи
kompas.set_developer_date(date_text="")
Задаёт дату в строке "Разраб." в основной надписи
Если оставить без аргумента, устанавливает текущую дату
kompas.set_inspector_date(date_text="")
Задаёт дату в строке "Пров." в основной надписи
Если оставить без аргумента, устанавливает текущую дату
kompas.set_tech_control_date(date_text="")
Задаёт дату в строке "Т.контр." в основной надписи
Если оставить без аргумента, устанавливает текущую дату
kompas.set_empty_field_date(date_text="")
Задаёт дату в пустой строке в основной надписи
Если оставить без аргумента, устанавливает текущую дату
kompas.set_reg_control_date(date_text="")
Задаёт дату в строке "Н.контр." в основной надписи
Если оставить без аргумента, устанавливает текущую дату
kompas.set_approver_date(date_text="")
Задаёт дату в строке "Утв." в основной надписи
Если оставить без аргумента, устанавливает текущую дату
Используемые библиотеки
- pywin32 (устанавливается вместе с библиотекой)
- numpy (устанавливается вместе с библиотекой)
- datetime (есть по умолчанию)
Файлы библиотеки
- KompasClass.py - содержит класс Kompas для работы с САПР КОМПАС 3D
- Test.py - сейчас это "черновик", файл для проверки работы методов класса Kompas
- Serpinsky.py - демонстрационный скрипт, строит треугольник Серпинского из точек на новом фрагменте
Ссылки
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file KOMPAS_tools-0.3.tar.gz.
File metadata
- Download URL: KOMPAS_tools-0.3.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
691b69d3804242b3124daaf5797732fa6f88808602bedc2873e38e92f85044a6
|
|
| MD5 |
8cddfcb3911b7a4d205afa3a052f2392
|
|
| BLAKE2b-256 |
0c375cde7474cc9e5232274af90f6877538218c6b7079141945770795b7a965b
|
File details
Details for the file KOMPAS_tools-0.3-py3-none-any.whl.
File metadata
- Download URL: KOMPAS_tools-0.3-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5cb86e49d1160a7109ebabbfb4755dffb69d3a62a13b1e6e961439ef43d8d4d
|
|
| MD5 |
8f39548cc891d01e74ba06471c9a2146
|
|
| BLAKE2b-256 |
217f76608f2e730e55fd5c3922b8732051a5a76a349390bc37e3777952b7a361
|