def data_solve(self, typ): """Возвращает список доп. исходных данных, реализовано только для ферм""" pr1=profiles.truba_pryam(h=8,b=12,t=0.6, r2=1.2, r1=0.6) s=steel.steel_snip20107n('C345',pr1, 1) el=codes.elements(s, pr1, mux=300, muy=5000, lfact=1) forc=codes.force(n=200*1000/9.81, mx=100*1000/9.81*100, my=000*1000/9.81*100, qx=500*1000/9.81) if typ==self.__list_elements[0][0]: sol=codes.ferma(el,forc,1) elif typ==self.__list_elements[1][0]: sol=codes.beam(el,forc,[1,1]) return sol.add_data()
def output_simple(self, code, type_element, typ_sec, gost, num_sect, stl, inp): """ Возвращает список выходных данных простого расчета, исходные данные: code - текстом (QString) имя норм (СНиП II-23-81*) type_element - текстом (QString) название типа элемента (Ферма) typ_sec - текстом (QString) название сечения (Уголки в тавр (длинные стор. - вверх)) gost - текстом (QString) названия ГОСТа соратмента (ГОСТ 8509-93 Уголки равнополочные) num_sect - текстом (QString) номер сечения (L20x20x3) stl - текстом (QString) сталь (C235) inp - список дополнительных данных""" #ищем файл flag_sostav=False # print 'basa', num_sect for x in self.dict_sort: if QtCore.QString(x)==typ_sec: y=self.dict_sort[x] typ_sec=x #меняем текст на номер break # print y, 'y' if y in self.dict_sostav_sort: y=self.dict_sostav_sort[y] #меняем y на номер госта flag_sostav=True for i in self.__list4sortament[1+y]: if QtCore.QString(i[0])==gost: path=i[1] break #Грузим свойства прлфиля table=tables.tables_csv(path, 'float') table_data=table.get_table() #определяем кол-во профилей в файле input_data=self.input_data4sortament(self.dict_sort[typ_sec]) len_input_data=len(input_data) # print table_data # print table_data[1:] for x in table_data[1:]: if num_sect==QtCore.QString(x[0]): if flag_sostav==False: pr=self.output_data(typ_sec, x[1:-3]) else: add_ln=len_input_data-len(x[1:-3]) lst=x[1:-3]+inp[0:0+add_ln] pr=self.output_data(typ_sec, lst) break if code==QtCore.QString(self.__list_code[0]): s=steel.steel_snip1987(str(stl), pr,dim=1, typ_steel='prokat') elif code==QtCore.QString(self.__list_code[1]): s=steel.steel_snip20107n(str(stl), pr,dim=1) if s.ry()!=0: # print s.ry() forc=codes.force() if type_element== QtCore.QString(self.__list_elements[0][0] ): el=codes.elements(s, pr, mux=inp[-2], muy=inp[-1], lfact=inp[-3]) # print inp[-1],inp[-2] sol=codes.ferma(el,forc,[inp[-5],inp[-4]]) if code==QtCore.QString(self.__list_code[0]): out=sol.output_data_all_snip_old() elif code==QtCore.QString(self.__list_code[1]): out=sol.output_data_all_snip_n() elif type_element== QtCore.QString(self.__list_elements[1][0] ): el=codes.elements(s, pr, mub=inp[-5], lfact=inp[-6]) # print inp[-1],inp[-2] sol=codes.beam(el,forc,yc=[inp[-8]],ycb=inp[-7]) if code==QtCore.QString(self.__list_code[0]): out=sol.output_data_all_snip_old(inp[-4],inp[-3],inp[-2],inp[-1]) elif code==QtCore.QString(self.__list_code[1]): out=sol.output_data_all_snip_n(inp[-4],inp[-3],inp[-2],inp[-1]) return out else: out=0 return out