Создание листа А2

Автор nikolay9878, 13.03.23, 13:10:40

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

nikolay9878

Добрый день. В теме программирования я новичок. Свою программу решил писать на языке Python. Возник вопрос как с помощью кода создать чертёж с форматом листа А2 горизонтальным?

dimak222

Цитата: nikolay9878 от 13.03.23, 13:10:40Возник вопрос как с помощью кода создать чертёж с форматом листа А2 горизонтальным?
def KompasAPI(): # подключение API компаса

    import pythoncom # модуль для запуска без IDE
    from win32com.client import Dispatch, gencache # библиотека API Windows
    from sys import exit # для выхода из приложения без ошибки

    try: # попытаться подключиться к КОМПАСу

        global iApplication # значение делаем глобальным

        KompasAPI7 = gencache.EnsureModule("{69AC2981-37C0-4379-84FD-5DD2F3C0A520}", 0, 1, 0) # API7 КОМПАСа
        iApplication = Dispatch("Kompas.Application.7") # интерфейс приложения КОМПАС-3D.

        if iApplication.Visible == False: # если компас невидимый
            iApplication.Visible = True # сделать КОМПАС-3D видемым

    except: # если не получилось подключиться к КОМПАСу

        print("КОМПАС-3D не найден!\nУстановите или переустановите КОМПАС-3D!") # сообщение, поверх всех окон с автоматическим закрытием
        exit() # выходим из програмы

#-------------------------------------------------------------------------------

KompasAPI() # подключение API компаса

iKompasDocument = iApplication.ActiveDocument # получить текущий активный документ

if iKompasDocument: # если открыт документ

    iLayoutSheets = iKompasDocument.LayoutSheets # интерфейс листа оформления

    iLayoutSheet = iLayoutSheets.Item(0) # первый лист документа

    Read_Path = iLayoutSheet.LayoutLibraryFileName # прочитанный путь к библиотеке оформления
    Read_StyleNumberOne = iLayoutSheet.LayoutStyleNumber # прочитанный стиль оформления первого листа

    ISheetFormat = iLayoutSheet.Format # узнать формат
    ISheetFormat.Format = 2 # формат листа (0 - A0; 1 - A1; ....; 6 - ksFormatUser) см. ksDocumentFormatEnum
    ISheetFormat.VerticalOrientation = 0 # вертикальная ориентация (да - 1, нет -0)
    iLayoutSheet.Update() # для применения изменений

else:
    print("Откройте документ!")
+ Благодарностей: 1