werte in die config eingefügt

This commit is contained in:
2025-12-02 14:18:09 +01:00
parent 805213dd7f
commit 1d3fa60ed4
2 changed files with 45 additions and 48 deletions
+37 -41
View File
@@ -1661,36 +1661,32 @@ def erstellung_gefaelle_block_verbunenden_am_einen(msp,x, y, doc, lib_doc, upper
winkel_es = float(config.get("Ils 2.0 core winkel", "winkel_es"))
asoffset_y = asoffset * math.cos(math.radians(winkel_as))
asoffset_z = asoffset * math.sin(math.radians(winkel_as))
esoffset_y = esoffset * math.cos(math.radians(winkel_as))
esoffset_z = esoffset * math.sin(math.radians(winkel_as))
esoffset_y = esoffset * math.cos(math.radians(winkel_es))
esoffset_z = esoffset * math.sin(math.radians(winkel_es))
block_as = None
block_es = None
if (( hight == "higher" and drehung0 == "GUZS" )or (vario_richtung == "Auf"and verbungden_höher == False and drehung0 == "GUZS")or
(vario_richtung == "Ab" and verbungden_höher == True and drehung0 == "GUZS")or (vario_richtung == "Horizontal" and drehung0 == "GUZS" and (mit_horizontal_verbunden == "unten_drehung_0_or_-90" or mit_horizontal_verbunden == "oben_drehung_-180_or_-270"))):
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
elif ((hight == "lower" and drehung0 == "GUZS") or (vario_richtung == "Auf"and verbungden_höher == True and drehung0 == "GUZS") or
(vario_richtung == "Ab" and verbungden_höher == False and drehung0 == "GUZS")or (vario_richtung == "Horizontal" and drehung0 == "GUZS" and (mit_horizontal_verbunden == "oben_drehung_0_or_-90" or mit_horizontal_verbunden == "unten_drehung_-180_or_-270"))):
block_es = "200000146_ES-Element_90_rechts"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
elif ((hight == "higher" and drehung0 == "UZS")or (vario_richtung == "Auf"and verbungden_höher == False and drehung0 == "UZS") or
(vario_richtung == "Ab" and verbungden_höher == True and drehung0 == "UZS")or (vario_richtung == "Horizontal" and drehung0 == "UZS" and (mit_horizontal_verbunden == "unten_drehung_0_or_-90" or mit_horizontal_verbunden == "oben_drehung_-180_or_-270"))):
block_as = "200000217_AS-Element_90_links"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_es))
elif (( hight == "lower" and drehung0 == "UZS") or (vario_richtung == "Auf" and verbungden_höher == True and drehung0 == "UZS") or
(vario_richtung == "Ab" and verbungden_höher == False and drehung0 == "UZS")or (vario_richtung == "Horizontal" and drehung0 == "UZS" and (mit_horizontal_verbunden == "oben_drehung_0_or_-90" or mit_horizontal_verbunden == "unten_drehung_-180_or_-270"))):
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
if block_as != None:
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
if vario_richtung == "Auf" or vario_richtung =="Horizontal":
start = (x , y + dy ,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset_y ,lower_hoehe_gefaehlle - asoffset_z)
@@ -1716,6 +1712,7 @@ def erstellung_gefaelle_block_verbunenden_am_einen(msp,x, y, doc, lib_doc, upper
msp.add_blockref(block_as,(x,y,upper_hoehe_gefaehlle))
return True
elif block_es != None:
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
if vario_richtung == "Auf" or vario_richtung =="Horizontal":
start = (x , y + dy-esoffset_y ,upper_hoehe_gefaehlle + esoffset_z)
ende = (x , y - dy,lower_hoehe_gefaehlle)
@@ -1750,8 +1747,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
winkel_es = float(config.get("Ils 2.0 core winkel", "winkel_es"))
asoffset_y = asoffset * math.cos(math.radians(winkel_as))
asoffset_z = asoffset * math.sin(math.radians(winkel_as))
esoffset_y = esoffset * math.cos(math.radians(winkel_as))
esoffset_z = esoffset * math.sin(math.radians(winkel_as))
esoffset_y = esoffset * math.cos(math.radians(winkel_es))
esoffset_z = esoffset * math.sin(math.radians(winkel_es))
block_as = None
block_es = None
halbe_laenge = laenge / 2
@@ -1766,15 +1763,12 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
(voerder_richtung == "Auf" and((am_kreisel == 1 and erster_kreisel_höher == False)or (am_kreisel== 2 and erster_kreisel_höher == True)) and drehung0 == "GUZS" and drehung1== "GUZS") or
(voerder_richtung == "Ab"and ((am_kreisel == 1 and erster_kreisel_höher == True)or (am_kreisel== 2 and erster_kreisel_höher == False)) and drehung0 == "GUZS" and drehung1== "GUZS")):
block_es = "200000146_ES-Element_90_rechts"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
import_block(block_es,lib_doc,doc)
elif ((drehung0 == "GUZS" and drehung1 == "GUZS") or
(am_kreisel != None and drehung0 == "GUZS" and drehung1 == "GUZS")):
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
elif (( drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "higher")or
(voerder_richtung == "Auf" and((am_kreisel == 1 and erster_kreisel_höher == False)or (am_kreisel == 2 and erster_kreisel_höher == True))and (drehung0 == "UZS" and drehung1 == "GUZS")) or
@@ -1782,7 +1776,6 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
elif ((drehung0 == "UZS" and drehung1 == "GUZS" and hight_position == "lower")or
(voerder_richtung == "Auf" and((am_kreisel == 1 and erster_kreisel_höher == True)or (am_kreisel == 2 and erster_kreisel_höher == False))and (drehung0 == "UZS" and drehung1 == "GUZS")) or
@@ -1790,7 +1783,6 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
elif ((drehung0 == "UZS" and drehung1 == "UZS" and hight_position == "higher")or
(voerder_richtung == "Auf" and((am_kreisel == 1 and erster_kreisel_höher == False)or (am_kreisel== 2 and erster_kreisel_höher == True)) and drehung0 == "UZS" and drehung1== "UZS")or
@@ -1798,30 +1790,26 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
elif (((drehung0 == "UZS" and drehung1 == "UZS")or
(am_kreisel!= None and drehung0 == "UZS" and drehung1 == "UZS"))):
block_as = "200000217_AS-Element_90_links"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
elif (((drehung0 == "UZS" and drehung1 == "GUZS" and hight_position== "higher"))or
(voerder_richtung == "Auf"and ((am_kreisel == 1 and erster_kreisel_höher == False) or (am_kreisel ==2 and erster_kreisel_höher ==True))and (drehung0 == "GUZS" and drehung1 == "UZS")) or
(voerder_richtung == "Ab" and((am_kreisel == 1 and erster_kreisel_höher == True)or (am_kreisel == 2 and erster_kreisel_höher == False))and (drehung0 == "UZS" and drehung1 == "GUZS"))):
block_es = "200000146_ES-Element_90_rechts"
import_block(block_es,lib_doc,doc)
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
elif ((drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "lower")or
(voerder_richtung == "Auf"and((am_kreisel == 1 and erster_kreisel_höher == True)or (am_kreisel == 2 and erster_kreisel_höher == False))and (drehung0 == "GUZS" and drehung1 == "UZS")) or
(voerder_richtung == "Ab" and((am_kreisel == 1 and erster_kreisel_höher == False)or (am_kreisel == 2 and erster_kreisel_höher == True))and (drehung0 == "UZS" and drehung1 == "GUZS"))):
block_as = "200000217_AS-Element_90_links"
import_block(block_as,lib_doc,doc)
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
if block_es != None:
block_es = dreh_block(block_es,doc,math.radians(winkel_es))
if voerder_richtung == "Auf":
start = (x , y+ dy - esoffset_y,upper_hoehe_gefaehlle + esoffset_z)
ende = (x , y1 ,z1)
@@ -1843,6 +1831,7 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h
block.add_entity(copy)
block.add_blockref(block_es, (ende[0]-x ,ende[1]- esoffset_y -y ,ende[2] -hoehe_gefaehlle ))
if block_as != None:
block_as = dreh_block(block_as,doc,math.radians(winkel_as))
if voerder_richtung == "Auf":
start = (x , y1,z1)
ende = (x , y - dy + asoffset_y ,lower_hoehe_gefaehlle)
@@ -2099,8 +2088,11 @@ def am_kreisel_direct_verbunden(x, y, upper_hoehe_gefaehlle, lower_hoehe_gefaehl
def vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block,block_name_links, start, ende,voerder_richtung,winkel_VP_offset_vorne,winkel_VP_offset_hinten ):
# Entnehmen der Motor und Umlenk station um die Gefähle auzurechnen und ob man diese tatsächlich einfügen muss
winkel_motor = int(config.get("Ils 2.0 core winkel","winkel_motor"))
winkel_umlenk = int(config.get("Ils 2.0 core winkel","winkel_umlenk"))
winkel_motor = float(config.get("Ils 2.0 core winkel","winkel_motor"))
winkel_umlenk = float(config.get("Ils 2.0 core winkel","winkel_umlenk"))
umlenk_laenge = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Umlenkstation")).split(","))
motor_laenge = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Motorstation")).split(","))
vario_abstand = float(config.get("ILS 2.0 Variofoerderer","vario_abstand"))
motor_vorhanden = bool(merkmale.get("hatMotor"))
umlenk_vorhanden = bool(merkmale.get("hatUmlenkung"))
if merkmale.get("Winkel_Gefaellestrecke") != None:
@@ -2110,12 +2102,16 @@ def vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_var
gefahellewinkel = 0.0
gefaelle = 0.0
# Aktueller offset des motors und Umlenkungstation, wird wahrscheinlich später einfach berechnet (sobald man entschieden hat ob wir nur 3 grad neigung erlauben oder nicht)
umlenk_motor_offset = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Umlenkstation")).split(","))
motor_offset_x = umlenk_laenge[0]* math.cos(math.radians(winkel_motor))
motor_offset_z = umlenk_laenge[0]* math.sin(math.radians(winkel_motor))
umlenk_offset_x = motor_laenge[0]* math.cos(math.radians(winkel_umlenk))
umlenk_offset_z = motor_laenge[0]* math.sin(math.radians(winkel_umlenk))
# Berechnung des Gefälles
if motor_vorhanden == True:
gefaelle = gefaelle - umlenk_motor_offset[0]
gefaelle = gefaelle - motor_offset_x
if umlenk_vorhanden == True:
gefaelle = gefaelle - umlenk_motor_offset[0]
gefaelle = gefaelle - umlenk_offset_x
#Erstellung des Förderes falls er auf ist oder Horizontal da diese gleich aufgebaut werden
if voerder_richtung== "Auf" or voerder_richtung== "Horizontal":
@@ -2167,16 +2163,16 @@ def vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_var
block_Vario_Motorstation_500mm = dreh_block(block_Vario_Motorstation_500mm,doc,math.radians(winkel_motor))
block_Vario_Umlenkstation_500mm = dreh_block( block_Vario_Umlenkstation_500mm, doc,math.radians(winkel_umlenk))
if umlenk_vorhanden == True:
block.add_blockref(block_Vario_Umlenkstation_500mm,(ende[0] -x,ende[1] -y + umlenk_motor_offset[0]/2,ende[2] - hoehe_vario -umlenk_motor_offset[2]/2 ),dxfattribs={"rotation": 90})
ende = (ende[0] ,ende[1] + umlenk_motor_offset[0],ende[2] -umlenk_motor_offset[2])
block.add_blockref(block_Vario_Umlenkstation_500mm,(ende[0] -x,ende[1] -y + umlenk_offset_x/2,ende[2] - hoehe_vario -umlenk_offset_z/2 ),dxfattribs={"rotation": 90})
ende = (ende[0] ,ende[1] + umlenk_offset_x,ende[2] - umlenk_offset_z)
if motor_vorhanden == True:
block.add_blockref(block_Vario_Motorstation_500mm, (start[0]-x , start[1] - umlenk_motor_offset[0]/2 -y ,start[2] - hoehe_vario +umlenk_motor_offset[2]/2),dxfattribs={"rotation": 90})
start = start[0] , start[1] - umlenk_motor_offset[0],start[2] +umlenk_motor_offset[2]
block.add_blockref(block_Vario_Motorstation_500mm, (start[0]-x , start[1] - motor_offset_x/2 -y ,start[2] - hoehe_vario +motor_offset_z/2),dxfattribs={"rotation": 90})
start = start[0] , start[1] - motor_offset_x,start[2] + motor_offset_z
if voerder_richtung== "Auf":
# Einfügen der 51 grad Bogen und deren notwendigen Werten von den attributen des bogens in den block
winkel_core = int(config.get("Ils 2.0 core winkel","winkel_boegen"))
winkel_plus = int(winkel) + winkel_core
winkel_core = float(config.get("Ils 2.0 core winkel","winkel_boegen"))
winkel_plus = winkel + winkel_core
block_Vario_Bogen_auf = (f"Vario_Bogen_auf_{winkel_plus}°")
block_Vario_Bogen_ab = (f"Vario_Bogen_ab_{winkel_plus}°")
@@ -2367,22 +2363,22 @@ def vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_var
block_Vario_Motorstation_500mm = dreh_block( block_Vario_Motorstation_500mm, doc,math.radians(winkel_motor))
block_Vario_Umlenkstation_500mm = dreh_block( block_Vario_Umlenkstation_500mm , doc,math.radians(winkel_umlenk))
if umlenk_vorhanden == True:
block.add_blockref(block_Vario_Umlenkstation_500mm,(start[0] -x,start[1] -y - umlenk_motor_offset[0]/2, start[2] - hoehe_vario -umlenk_motor_offset[2]/2 ),dxfattribs={"rotation": 270})
start_Umlenkstation_VP = start[0] - 66.5, start[1] -500 *math.cos(math.radians(-winkel_umlenk))+ math.sin(math.radians(-winkel_umlenk))* -45,start[2] + math.sin(math.radians(-winkel_umlenk))*500+ math.cos(math.radians(-winkel_umlenk))*-45
start = (start[0] ,start[1] - umlenk_motor_offset[0],start[2] -umlenk_motor_offset[2])
block.add_blockref(block_Vario_Umlenkstation_500mm,(start[0] -x,start[1] -y - umlenk_offset_x/2, start[2] - hoehe_vario -umlenk_offset_z/2 ),dxfattribs={"rotation": 270})
start_Umlenkstation_VP = start[0] - vario_abstand, start[1] -500 *math.cos(math.radians(-winkel_umlenk))+ math.sin(math.radians(-winkel_umlenk))* -45,start[2] + math.sin(math.radians(-winkel_umlenk))*500+ math.cos(math.radians(-winkel_umlenk))*-45
start = (start[0] ,start[1] - umlenk_offset_x,start[2] -umlenk_offset_z)
elif winkel == 3:
start_Umlenkstation_VP = start[0] - 66.5, start[1]+ winkel_VP_offset_vorne[0],start[2] -winkel_VP_offset_hinten[2]
start_Umlenkstation_VP = start[0] - vario_abstand, start[1]+ winkel_VP_offset_vorne[0],start[2] -winkel_VP_offset_hinten[2]
if motor_vorhanden == True:
block.add_blockref(block_Vario_Motorstation_500mm, (ende[0]-x , ende[1] + umlenk_motor_offset[0]/2 -y ,ende[2] - hoehe_vario +umlenk_motor_offset[2]/2),dxfattribs={"rotation": 270})
ende_Motor_VP = ende[0] - 66.5, ende[1] +500 *math.cos(math.radians(-winkel_motor))+ math.sin(math.radians(-winkel_motor))* -45,ende[2] - math.sin(math.radians(-winkel_motor))*500+ math.cos(math.radians(-winkel_motor))*-45
block.add_blockref(block_Vario_Motorstation_500mm, (ende[0]-x , ende[1] + motor_offset_x/2 -y ,ende[2] - hoehe_vario + motor_offset_z/2),dxfattribs={"rotation": 270})
ende_Motor_VP = ende[0] - vario_abstand, ende[1] +500 *math.cos(math.radians(-winkel_motor))+ math.sin(math.radians(-winkel_motor))* -45,ende[2] - math.sin(math.radians(-winkel_motor))*500+ math.cos(math.radians(-winkel_motor))*-45
ende = ende[0] , ende[1] + umlenk_motor_offset[0],ende[2] +umlenk_motor_offset[2]
ende = ende[0] , ende[1] + motor_offset_x,ende[2] +motor_offset_z
elif winkel == 3:
ende_Motor_VP = ende[0] - 66.5, ende[1]+ winkel_VP_offset_hinten[0] ,ende[2] - winkel_VP_offset_vorne[2]
ende_Motor_VP = ende[0] - vario_abstand, ende[1]+ winkel_VP_offset_hinten[0] ,ende[2] - winkel_VP_offset_vorne[2]
if winkel != 3:
winkel_core = int(config.get("Ils 2.0 core winkel","winkel_boegen"))
winkel_minus = int(winkel) - winkel_core
winkel_core = float(config.get("Ils 2.0 core winkel","winkel_boegen"))
winkel_minus = winkel - winkel_core
block_Vario_Bogen_auf = (f"Vario_Bogen_auf_{winkel_minus}°")
block_Vario_Bogen_ab = (f"Vario_Bogen_ab_{winkel_minus}°")
ab_attrib =import_block( block_Vario_Bogen_ab , lib_doc, doc)