def get_allPanel(): #pnt = k3.Var() try: allp = GetListAllPanel() return allp except: try: # включаем фильтр по панелям k3.fltrparamobj(1, 61) # выбираем панель (для демонстрации) и помещаем в pnt #k3.objident(k3.k_interact, pnt) #panel = pnt.value k3.select(k3.k_partly, k3.k_all) allp = [] n = k3.sysvar(61) # выключаем фильтр k3.fltrparamobj(0) if n > 0: for i in range(int(n)): allp.append(k3.getselnum(i + 1)) return allp except Exception as inst: print(type(inst)) # the exception instance print(inst.args) # arguments stored in .args print(inst) fltrparamobj(0) # сбрасываем фильтр return None
def allnoteed(): """""" try: nl = k3.fltrtype('Note') k3.select(k3.k_partly, k3.k_all, k3.k_done) n = k3.sysvar(61) note = Note() lsobj = [] info = k3.VarArray(54) if n > 0: for i in range(int(n)): lsobj.append(k3.getselnum(i + 1)) for i in lsobj: note.holder = i note.getinfo() #lr = sf(note) #note.info[19] = '(' + str(lr) + ') ' + str(note.info[12]) #for j in range(len(note.info)): #info[j].value = note.info[j] #k3.putnoteinfo(note.holder, info) gi = 0 while revisor(note) and gi < 3: note.info[12] = abs(note.info[12] - 1.0) for j in range(len(note.info)): info[j].value = note.info[j] k3.putnoteinfo(note.holder, info) note.getinfo() gi += 1 except: nl = k3.fltrtype(0) finally: nl = k3.fltrtype(0)
def getListObjVisual(): '''Возвращает список видимых объектов''' lObj = [] k3.select(k3.k_all, k3.k_done) n = int(k3.sysvar(61)) if n > 0: for i in range(1, n + 1): lObj.append(k3.getselnum(i)) return lObj
def dialog(): vFailColor = k3.Var() k3.getvarinst(2, "FailColor", vFailColor, 12) FailColor = vFailColor.value k3.select(k3.k_stayblink, k3.k_partly, llbasis, k3.k_done) ok_flag = k3.alternative( "Поиск панелей с левой базой", k3.k_msgbox, k3.k_picture, 1, k3.k_beep, 1, k3.k_text, k3.k_left, "Панели с левой базой выделены мерцанием", "", "Отключить мерцание найденных объектов?", k3.k_done, "Да", "Нет", "Изменить цвет", k3.k_done) if (ok_flag[0] == 1): k3.select(k3.k_all, k3.k_done) elif (ok_flag[0] == 3): k3.chprop(k3.k_color, k3.k_partly, k3.k_previous, k3.k_done, FailColor)
def get_obj_scene(self, fun=None): """Заполняет список объектов сцены. Возврашает Истина если объекты есть и список составлен и Ложь если объектов сцены нет fun - функция возвращаеющая список нужных объектов """ n = 0 self.l_note=[] if fun is None: k3.select(k3.k_all) n = k3.sysvar(61) if n > 0: self.lstobj = [] for i in range(int(n)): self.lstobj.append(k3.getselnum(i + 1)) else: self.lstobj = [a for a in fun()] self.nnote = len(self.lstobj) n = len(self.lstobj) if n > 0: return True else: return False
# -*- coding: utf-8 -*- # import wingdbstub import k3 def getObj(): k3.selbyattr('dsview',k3.k_partly,k3.k_all,k3.k_done) if k3.sysvar(61)>0: obj=k3.getselnum(1) return True, obj return False, None Params = k3.getpar() vnumWmf = Params[0] #k3.Var('vnumWmf') k3.select(k3.k_all) lobj=[] for i in range(int(k3.sysvar(61))): lobj.append(k3.getselnum(i+1)) rs = getObj() if rs[0]: hold=k3.Var() err=k3.getobjhold(rs[1],hold) holdo = hold.value k3.line(0., 0., 0., 100., 0., 0., k3.k_done) ls = k3.Var() k3.objident(k3.k_last, 1, ls) k3.add(k3.k_partly, holdo, ls.value) k3.extract(k3.k_partly, holdo, rs[1]) k3.invisible(k3.k_wholly, lobj) k3.zoom(k3.k_oneview,k3.k_extents) k3.exp2d(k3.k_wmf, k3.k_yes, k3.k_optimized, k3.k_yes, k3.k_fit, k3.k_yes, k3.k_height, 9500, k3.k_width,9500, k3.k_inscribe, k3.k_yes, vnumWmf.value, k3.k_overwrite )
def exitform(self): #k3.layers(k3.k_off, LayName) k3.select(k3.k_done) self.root.destroy()
" нельзя использовать для данной вариации отделок" ) else: KeyMenu = menu_append( "Данная вариация отсутствует в списке допустимых" ) if KeyMenu: if Shpon: type = "ШПОН" if isMDF: type = "МДФ" if isDSP: type = "ДСП" vFailColor = k3.Var() k3.getvarinst(2, "FailColor", vFailColor, 12) FailColor = vFailColor.value k3.select(k3.k_stayblink, k3.k_partly, obj, k3.k_done) ok_flag = k3.alternative( "Предупреждение", k3.k_msgbox, k3.k_picture, 1, k3.k_beep, 1, k3.k_text, k3.k_left, "Панель выделена мерцанием", "Тип проверки: " + type, "У выделенной панели на пласти <'{}'> назначены группы:" .format(side), ', '.join( map(lambda x: nGroups[x], dPans[side])), "", ', '.join(lMenu), "", "Отключить мерцание найденных объектов?", k3.k_done, "Да", "Нет", "Изменить цвет", k3.k_done) if (ok_flag[0] == 1): k3.select(k3.k_all, k3.k_done) elif (ok_flag[0] == 3):