• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Создание чертежа с основной надписью

Автор key575, 17.04.21, 13:37:25

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

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

key575

Здравствуйте, облазил весь SDK, перепробовал различные интерфейсы, никак не могу понять как создать чертеж с основной надписью. Создается только с обычной рамкой..
Так же интересно, можно ли изменить и саму рамку (отступы от края листа).
stamp.png

key575

Документ (чертеж) создаю с помощью метода Add интерфейса IDocuments:
pDocument = newKompasAPI.Documents.Add(DocumentTypeEnum.ksDocumentDrawing, true);

Если кто-то сталкивался, подскажите, может нужно использовать другие интерфейсы, или основная надпись создается отдельно, т.е. просто добавляется на уже созданный документ. Есть еще мысль, что можно использовать метод "AddNewDocumentFromTemplate - Создать новый документ по шаблону", но не совсем понятно, как его реализовывать и то ли это, что мне нужно. :`(

p3452

Вроде "Поиск" никто не отменял!?
Там "куча" ответов, даже для особо ленивых...

GenTAPo

Слава Богу, что в АСКОН с самого начала существования КОМПАС не додумались до такой дури, как создавать оформление с помощью "метода"... Иногда даже не хочется отвечать на вопрос. А в параметрах не додумались выбрать оформление первого и последующего листов. Если не знаете, где искать, можете щёлкнуть ПКМ в то место, где примерно штамп. Там будет строка Параметры. Дальше надеюсь не стоит? И вообще, прежде чем идти в атаку, изучите строки меню, полезно будет.Разберётесь, может и поймёте, как вообще сделать другое оформление.

GenTAPo

А если уже есть оформление, сейчас у вас без оформления, то в штампе щёлк ПКМ, будет строка "Изменить оформление".

key575

Цитата: GenTAPo от 17.04.21, 19:37:37Слава Богу, что в АСКОН с самого начала существования КОМПАС не додумались до такой дури, как создавать оформление с помощью "метода"... Иногда даже не хочется отвечать на вопрос. А в параметрах не додумались выбрать оформление первого и последующего листов. Если не знаете, где искать, можете щёлкнуть ПКМ в то место, где примерно штамп. Там будет строка Параметры. Дальше надеюсь не стоит? И вообще, прежде чем идти в атаку, изучите строки меню, полезно будет.Разберётесь, может и поймёте, как вообще сделать другое оформление.
Зачем мне куда-то щелкать, если я работаю с API компаса? И я задал конкретный вопрос, советов "сходи да поищи" я не спрашивал, если я задаю вопрос на форуме, значит я уже все пересмотрел и поискал где можно. Поэтому прошу не засорять тему пустыми советами, тем более такой пеленой текста.

p3452

- Тяжелый случай!
1. Если в гугле или яндексе набрать название вашей темы, примерно в таком виде "КОМПАС SDK Создание чертежа с основной надписью", то уже в первых позициях получите ответ на свой вопрос (у меня вторая позиция):
Поиск_1.png
2. Если в поисковике форума набрать "API Штамп" - получите 40 тем! 

key575

Цитата: p3452 от 17.04.21, 21:44:19- Тяжелый случай!
1. Если в гугле или яндексе набрать название вашей темы, примерно в таком виде "КОМПАС SDK Создание чертежа с основной надписью", то уже в первых позициях получите ответ на свой вопрос (у меня вторая позиция):
Поиск_1.png
2. Если в поисковике форума набрать "API Штамп" - получите 40 тем! 

"Сам не знаю, отправляю всех в гугл". Позиция ясна, не обязательно было целых 2 раза давать свои советы, будучи действительно уверенным, что я не просмотрел эти темы первым делом. Действительно, тяжелый случай..

Хотя и благодаря GenTAPo (хотя то, что он написал абсолютно не сходится с тем, о чем я спрашивал) я по крайней мере увидел коды стилей документа, что помогло мне в решении задачи.

Но почему-то по мнению каждого (почти) кто здесь обитает уже продолжительное время, любой, кто так или иначе сталкивается с новой для себя областью (при чем лишь касается ее, не планируя заниматься ею в дальнейшем), должен пол жизни потратить на ее изучение.
А ведь, казалось бы, так просто, не можешь/хочешь помочь - просто проходи мимо, не строя из себя никого, по итогу, вызывая лишь отвращение, и такое же отношение в ответ.

key575

Нигде еще не видел настолько агрессивных пользователей, даже новичкам в изучении плюсов охотно отвечают как сложить 2 + 2, я не думаю, что моя задача, как новичка в этой области хотя бы немного сопоставима с 2+2. Не удивительно, что по api интерфейсам компаса кроме стандартного sdk и статей на хабре ничего нет.

p3452


Slaviation

Добрый день.

Здравствуйте, облазил весь SDK, перепробовал различные интерфейсы, никак не могу понять как создать чертеж с основной надписью.

# -*- coding: utf-8 -*-
import pythoncom
from win32com.client import Dispatch, gencache

#  Получи константы
kompas6_constants = gencache.EnsureModule("{75C9F5D0-B5B8-4526-8681-9903C567D2ED}", 0, 1, 0).constants

#  Получи API интерфейсов версии 7
kompas_api7_module = gencache.EnsureModule("{69AC2981-37C0-4379-84FD-5DD2F3C0A520}", 0, 1, 0)
kompas_api_object = kompas_api7_module.IKompasAPIObject(Dispatch("Kompas.Application.7")._oleobj_.QueryInterface(kompas_api7_module.IKompasAPIObject.CLSID, pythoncom.IID_IDispatch))
application = kompas_api_object.Application

#  Создай документ "Чертеж"
documents = application.Documents
kompas_document = documents.Add(kompas6_constants.ksDocumentDrawing, True)

#  Измени параметры листа оформления
layout_sheets = kompas_document.LayoutSheets
layout_sheet = layout_sheets.Item(0)
sheet_format = layout_sheet.Format
sheet_format.FormatMultiplicity = 1
sheet_format.VerticalOrientation = True
sheet_format.Format = kompas6_constants.ksFormatA4
layout_sheet.LayoutLibraryFileName = "C:\\Program Files\\ASCON\\KOMPAS-3D v19\\Sys\\graphic.lyt"
layout_sheet.LayoutStyleNumber = 1.0
layout_sheet.SheetType = kompas6_constants.ksDocumentSheet
layout_sheet.Update()