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

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

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

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

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

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

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

Помогите пожалуйста подправить макрос

Автор kons3d, 02.03.08, 23:29:49

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

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

kons3d

 Имеем макрос для создания выноски, указывается только конечная точка (расположение текста в чертеже). Как нужно подправить макрос чтобы можно было указывать начальную точку( точка в которую указывает линия со стрелкой ? Заранее спасибо.

# -*- coding: cp1251 -*-
#|45

import Kompas6API5 as KAPI
from win32com.client import Dispatch
import LDefin2D
import LDefin3D

iKompasObject = Dispatch('KOMPAS.Application.5')
iKompasObject = KAPI.KompasObject(iKompasObject)

iDocument2D = iKompasObject.ActiveDocument2D()

# Äîáàâëÿåìûé êîä
info = KAPI.ksRequestInfo(iKompasObject.GetParamStruct(LDefin2D.ko_RequestInfo))
info.commandsString = "Óêàæèòå òî÷êó ïðèâÿçêè"
x = y = 0
j, x, y = iDocument2D.ksCursor(info, x, y, None)
# Êîíåö äîáàâëÿåìîãî êîäà

iLeaderParam = KAPI.ksLeaderParam(iKompasObject.GetParamStruct(LDefin2D.ko_LeaderParam))
iLeaderParam.Init()
iLeaderParam.around = 0
iLeaderParam.arrowType = 2
iLeaderParam.cText0 = 1
iLeaderParam.cText1 = 0
iLeaderParam.cText2 = 0
iLeaderParam.cText3 = 0
iLeaderParam.dirX = 1
iLeaderParam.signType = 0

#iLeaderParam.x = 87.94339155676
#iLeaderParam.y = 210.46583875261
iLeaderParam.x = x
iLeaderParam.y = y


iPolylineArray = KAPI.ksDynamicArray(iLeaderParam.GetpPolyline())


iMathPointArray = KAPI.ksDynamicArray(iKompasObject.GetDynamicArray(2))

iMathPointParam = KAPI.ksMathPointParam(iKompasObject.GetParamStruct(LDefin2D.ko_MathPointParam))
iMathPointParam.Init()
iMathPointParam.x = 64.31407189695
iMathPointParam.y = 186.83651909281
iMathPointArray.ksAddArrayItem(-1, iMathPointParam)

iPolylineArray.ksAddArrayItem(-1, iMathPointArray)

iLeaderParam.SetpPolyline(iPolylineArray)

iTextLineArray = KAPI.ksDynamicArray(iLeaderParam.GetpTextline())
iTextLineParam = KAPI.ksTextLineParam(iKompasObject.GetParamStruct(LDefin2D.ko_TextLineParam))
iTextLineParam.Init()
iTextLineParam.style = 6

iTextItemArray = KAPI.ksDynamicArray(iKompasObject.GetDynamicArray(4))

iTextItemParam = KAPI.ksTextItemParam(iKompasObject.GetParamStruct(LDefin2D.ko_TextItemParam))
iTextItemParam.Init()
iTextItemParam.iSNumb = 0
iTextItemParam.s = "âûíîñêà"
iTextItemParam.type = 0

iTextItemFontParam = KAPI.ksTextItemFont(iTextItemParam.GetItemFont())
iTextItemFontParam.Init()
iTextItemFontParam.bitVector = 4096
iTextItemFontParam.color = 0
iTextItemFontParam.fontName = "GOST type A"
iTextItemFontParam.height = 5.0
iTextItemFontParam.ksu = 1.0

iTextItemArray.ksAddArrayItem(-1, iTextItemParam)

iTextLineParam.SetTextItemArr(iTextItemArray)

iTextLineArray.ksAddArrayItem(-1, iTextLineParam)


iLeaderParam.SetpTextline(iTextLineArray)

iDocument2D.ksLeader(iLeaderParam)