From df772ad2883142caaba0c5feda058d20b3ab2a77 Mon Sep 17 00:00:00 2001
From: Paul Wolok
Date: Tue, 28 Oct 2025 15:02:15 +0100
Subject: [PATCH] =?UTF-8?q?Die=20F=C3=B6rder=20funktionieren=20nun=20auch?=
=?UTF-8?q?=20mit=20ab=20varios=20(inklusive=20verbindung=20mit=20kreisel)?=
=?UTF-8?q?,=20die=20gr=C3=BCnen=20linien=20fehlen=20noch?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
cfg/shapes.cfg | 139 +++++++---
lib/plant2dxf.py | 697 +++++++++++++++++++++++++++++++++++------------
2 files changed, 617 insertions(+), 219 deletions(-)
diff --git a/cfg/shapes.cfg b/cfg/shapes.cfg
index a5d7570..9615172 100644
--- a/cfg/shapes.cfg
+++ b/cfg/shapes.cfg
@@ -19,62 +19,111 @@ esoffset = 479.95
Umlenkstation = 499.3148,0,26.1680
-Vario_Bogen_auf_51_Delta_SP_0_aufwaerts= 629.34, 0, 32.98
-Vario_Bogen_auf_51_Delta_SP_1_aufwaerts = 433.90, 0, 481.89
+Vario_Bogen_auf_51_Delta_SP_0= 629.34, 0, 32.98
+Vario_Bogen_auf_51_Delta_SP_1 = 433.90, 0, 481.89
-Vario_Bogen_ab_51_Delta_SP_0_aufwaerts = 408.68, 0, 453.89
-Vario_Bogen_ab_51_Delta_SP_1_aufwaerts =591.71, 0, 31.01
+Vario_Bogen_ab_51_Delta_SP_0 = 408.68, 0, 453.89
+Vario_Bogen_ab_51_Delta_SP_1 =591.71, 0, 31.01
-Vario_Bogen_auf_51_Delta_VP_1_aufwaerts = 30.77, 51.3653,28.59
-Vario_Bogen_ab_51_Delta_VP_0_aufwaerts = 32.97,51.3653,26.6341
+Vario_Bogen_auf_51_Delta_VP_1 = 30.77, 51.3653,28.59
+Vario_Bogen_ab_51_Delta_VP_0 = 32.97,51.3653,26.6341
-Vario_Bogen_auf_39_Delta_SP_0_aufwaerts= 489.1281, 0, 25.6341
-Vario_Bogen_auf_39_Delta_SP_1_aufwaerts = 358.3992, 0, 260.3923
+Vario_Bogen_ab_45_Delta_SP_0 = 438.6149, 0, 75.3228
+Vario_Bogen_ab_45_Delta_SP_1 =293.89, 0, 326.4
-Vario_Bogen_ab_39_Delta_SP_0_aufwaerts = 335.7703, 0, 243.9534
-Vario_Bogen_ab_39_Delta_SP_1_aufwaerts =461.1878, 0, 24.1747
+Vario_Bogen_auf_45_Delta_SP_0 = 471.2929, 0, 24.6994
+Vario_Bogen_auf_45_Delta_SP_1 =315.7893, 0, 350.7195
-Vario_Bogen_auf_39_Delta_VP_1_aufwaerts = 335.3992, 51.3653, 35.5535
-Vario_Bogen_ab_39_Delta_VP_0_aufwaerts = 364.86,51.3653,25.6341
+Vario_Bogen_auf_39_Delta_SP_0= 489.1281, 0, 25.6341
+Vario_Bogen_auf_39_Delta_SP_1 = 358.3992, 0, 260.3923
+
+Vario_Bogen_ab_39_Delta_SP_0 = 335.7703, 0, 243.9534
+Vario_Bogen_ab_39_Delta_SP_1 =461.1878, 0, 24.1747
+
+Vario_Bogen_auf_39_Delta_VP_1 = 335.3992, 51.3653, 35.5535
+Vario_Bogen_ab_39_Delta_VP_0 = 364.86,51.3653,25.6341
+
+Vario_Bogen_ab_33_Delta_SP_0 = 464.52, 0, 76.86
+Vario_Bogen_ab_33_Delta_SP_1 = 331.83, 0, 241.09
+
+Vario_Bogen_auf_33_Delta_SP_0 = 487.8932, 0, 25.5694
+Vario_Bogen_auf_33_Delta_SP_1 = 350.7617, 0, 254.8433
+
+Vario_Bogen_auf_33_Delta_VP_1 = 335.3992, 51.3653, 35.5535
+Vario_Bogen_ab_33_Delta_VP_0 = 364.86,51.3653,25.6341
-Vario_Bogen_auf_27_Delta_SP_0_aufwaerts =320.5894, 0, 16.8014
-Vario_Bogen_auf_27_Delta_SP_1_aufwaerts = 262.5433,0,116.8918
+Vario_Bogen_auf_27_Delta_SP_0 =320.5894, 0, 16.8014
+Vario_Bogen_auf_27_Delta_SP_1= 262.5433,0,116.8918
-Vario_Bogen_ab_27_Delta_SP_0_aufwaerts =245.2168, 0, 109.1776
-Vario_Bogen_ab_27_Delta_SP_1_aufwaerts = 301.6492,0,15.8088
+Vario_Bogen_ab_27_Delta_SP_0 =245.2168, 0, 109.1776
+Vario_Bogen_ab_27_Delta_SP_1 = 301.6492,0,15.8088
-Vario_Bogen_auf_27_Delta_VP_1_aufwaerts = 15.4583, 50, 38.66
-Vario_Bogen_ab_27_Delta_VP_0_aufwaerts = 18.928,50, 37.988
+Vario_Bogen_auf_27_Delta_VP_1 = 15.4583, 50, 38.66
+Vario_Bogen_ab_27_Delta_VP_0= 18.928,50, 37.988
-Vario_Bogen_auf_18_Delta_SP_0_aufwaerts = 301.4561, 0,15.7986
-Vario_Bogen_auf_18_Delta_SP_1_aufwaerts = 291.5838, 0,78.1296
+Vario_Bogen_ab_21_Delta_SP_0 =308.9830, 0,68.5291
+Vario_Bogen_ab_21_Delta_SP_1 = 243.2899,0,108.3196
-Vario_Bogen_ab_18_Delta_SP_0_aufwaerts = 279.4978, 0,74.8912
-Vario_Bogen_ab_18_Delta_SP_1_aufwaerts = 288.9608, 0,15.1438
-
-
-Vario_Bogen_auf_18_Delta_VP_1_aufwaerts = 11.62, 50, 40.37
-Vario_Bogen_ab_18_Delta_VP_0_aufwaerts = 10.53,50, 40.59
-
-
-Vario_Bogen_auf_15_Delta_SP_0_aufwaerts = 149.7944, 0,7.8504
-Vario_Bogen_auf_15_Delta_SP_1_aufwaerts = 146.7221, 0,31.1868
-
-Vario_Bogen_ab_15_Delta_SP_0_aufwaerts = 136.55, 0,29.02
-Vario_Bogen_ab_15_Delta_SP_1_aufwaerts = 139.41, 0,7.31
-
-Vario_Bogen_auf_15_Delta_VP_1_aufwaerts = 8.28, 50, 41.18
-Vario_Bogen_ab_15_Delta_VP_0_aufwaerts = 9.15,50, 40.99
-
-Vario_Bogen_auf_12_Delta_SP_0_aufwaerts = 149.7944, 0,7.8504
-Vario_Bogen_auf_12_Delta_SP_1_aufwaerts = 148.1533, 0,23.4652
-
-Vario_Bogen_ab_12_Delta_SP_0_aufwaerts = 139.95, 0,22.17
-Vario_Bogen_ab_12_Delta_SP_1_aufwaerts = 141.5026, 0,7.4158
-
-Vario_Bogen_auf_12_Delta_VP_1_aufwaerts = 5.5, 50, 41.49
-Vario_Bogen_ab_12_Delta_VP_0_aufwaerts = 7.23,50, 41.38
+Vario_Bogen_auf_21_Delta_SP_0 =323.6047, 0, 16.9594
+Vario_Bogen_auf_21_Delta_SP_1= 256.67,0,114.27
+Vario_Bogen_auf_18_Delta_SP_0 = 301.4561, 0,16.96
+Vario_Bogen_auf_18_Delta_SP_1 = 291.5838, 0,78.1296
+
+Vario_Bogen_ab_18_Delta_SP_0 = 279.4978, 0,74.8912
+Vario_Bogen_ab_18_Delta_SP_1 = 288.9608, 0,15.1438
+
+
+Vario_Bogen_auf_18_Delta_VP_1 = 11.62, 50, 40.37
+Vario_Bogen_ab_18_Delta_VP_0 = 10.53,50, 40.59
+
+
+Vario_Bogen_auf_15_Delta_SP_0 = 149.7944, 0,7.8504
+Vario_Bogen_auf_15_Delta_SP_1= 146.7221, 0,31.1868
+
+Vario_Bogen_ab_15_Delta_SP_0 = 136.55, 0,29.02
+Vario_Bogen_ab_15_Delta_SP_1 = 139.41, 0,7.31
+
+Vario_Bogen_auf_15_Delta_VP_1 = 8.28, 50, 41.18
+Vario_Bogen_ab_15_Delta_VP_0 = 9.15,50, 40.99
+
+Vario_Bogen_auf_12_Delta_SP_0_auf= 149.7944, 0,7.8504
+Vario_Bogen_auf_12_Delta_SP_1_auf = 148.1533, 0,23.4652
+
+Vario_Bogen_ab_12_Delta_SP_0_auf = 139.95, 0,22.17
+Vario_Bogen_ab_12_Delta_SP_1_auf = 141.5026, 0,7.4158
+
+Vario_Bogen_auf_12_Delta_VP_1_auf= 5.5, 50, 41.49
+Vario_Bogen_ab_12_Delta_VP_0_auf = 7.23,50, 41.38
+
+Vario_Bogen_ab_12_Delta_SP_0_ab = 141.5026, 0,59.7518
+Vario_Bogen_ab_12_Delta_SP_1_ab = 136.8686, 0,36.6738
+
+Vario_Bogen_auf_12_Delta_SP_0_ab= 149.7944, 0,7.8504
+Vario_Bogen_auf_12_Delta_SP_1_ab = 144.8889, 0,38.8229
+
+Vario_Bogen_auf_12_Delta_VP_1_ab = 5.5, 50, 41.49
+Vario_Bogen_ab_12_Delta_VP_0_ab= 7.23,50, 41.38
+
+Vario_Bogen_ab_9_Delta_SP_0 = 143.5855, 0,59.8610
+Vario_Bogen_ab_9_Delta_SP_1 = 140.6406, 0,29.8941
+
+Vario_Bogen_auf_9_Delta_SP_0= 149.7944, 0,7.8504
+Vario_Bogen_auf_9_Delta_SP_1 = 146.72, 0,31.19
+
+Vario_Bogen_auf_9_Delta_VP_1 = 5.5, 50, 41.49
+Vario_Bogen_ab_9_Delta_VP_0= 7.23,50, 41.38
+
+
+Vario_Bogen_ab_6_Delta_SP_0 = 195.7284, 0,62.5937
+Vario_Bogen_ab_6_Delta_SP_1 = 193.5840, 0,30.6607
+
+Vario_Bogen_auf_6_Delta_SP_0= 199.8629, 0,10.4744
+Vario_Bogen_auf_6_Delta_SP_1 = 197.6732, 0,31.3084
+
+Vario_Bogen_auf_6_Delta_VP_1 = 5.5, 50, 41.49
+Vario_Bogen_ab_6_Delta_VP_0= 7.23,50, 41.38
+
diff --git a/lib/plant2dxf.py b/lib/plant2dxf.py
index 61d1aa3..9074c98 100644
--- a/lib/plant2dxf.py
+++ b/lib/plant2dxf.py
@@ -132,7 +132,7 @@ def import_block(block_name: str, from_doc, to_doc, winkel = None) -> None:
import_block(ent.dxf.name,from_doc, to_doc,None)
tgt.add_entity(copy)
-def dreh_block(block_name: str, from_doc, to_doc, winkel) :
+def dreh_block(block_name: str, to_doc, winkel) :
"""Importiert Blockdefinition block_name von from_doc nach to_doc.
- Kopiert alle Entities des Blocks
@@ -143,7 +143,7 @@ def dreh_block(block_name: str, from_doc, to_doc, winkel) :
dreh_block_name = block_name +f"_{math.degrees(winkel)}"
if (dreh_block_name in to_doc.blocks):
return dreh_block_name
- block_zwischen = to_doc.blocks.new(name=block_name + f"aaa_{winkel}", base_point=(0,0,0))
+ block_zwischen = to_doc.blocks.new(name=block_name + f"zwischenschrit_{winkel}", base_point=(0,0,0))
block = to_doc.blocks.new(name=dreh_block_name, base_point=(0,0,0))
rotation_matrix = Matrix44.axis_rotate(Y_AXIS, winkel)
@@ -582,9 +582,6 @@ def handle_ils_2_0_gefaellestrecke(msp, teileid, merkmale, x, y, doc, lib_doc, v
def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols, strecken_nachbarn,config):
-
-
-
if "VARIO" not in doc.layers:
@@ -598,16 +595,17 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
unterschiedlich = False
asoffset = float(config.get("ILS 2.0 Gefällestrecke", "asoffset"))
esoffset = float(config.get("ILS 2.0 Gefällestrecke", "esoffset"))
+ rotation = float(merkmale.get("Drehung"))
upper_hoehe_vario= float(merkmale.get("Höhe Ende")) *1000
lower_hoehe_vario = float(merkmale.get("Höhe Anfang")) *1000
+
if upper_hoehe_vario< lower_hoehe_vario:
hight = upper_hoehe_vario
upper_hoehe_vario = lower_hoehe_vario
lower_hoehe_vario = hight
rotation = rotation -180
hoehe_vario= (upper_hoehe_vario + lower_hoehe_vario)/2
- rotation = float(merkmale.get("Drehung"))
for nachbarn in strecken_nachbarn:
if teileid == nachbarn.get("Id"):
gefaellestrecke_vario = nachbarn
@@ -629,7 +627,7 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
richtung0 = float(gefaellestrecke_vario.get("rotation0"))
richtung_rad0= math.radians(richtung0)
- am_kreisel,kreseil_verbunden =am_kreisel_direct_verbunden(x, y, upper_hoehe_vario, lower_hoehe_vario, x0_kreisel, y0_kreisel, richtung_rad0, abstand0, dx, dy, None, None, None, None)
+ am_kreisel,kreseil_verbunden =am_kreisel_direct_verbunden(x, y, upper_hoehe_vario, lower_hoehe_vario, x0_kreisel, y0_kreisel, richtung_rad0, abstand0, dx, dy, None, None, None, None )
if am_kreisel == 1:
blockname = (f"Vario_Foerderer_{winkel}_{voerder_richtung}_{laenge}_{hoehe_vario}_rechts_{ein_kreisel_höher}_{drehung0}_True")
block_name_links = (f"Vario_Foerderer_{winkel}_{voerder_richtung}_{laenge}_{hoehe_vario}_links_{ein_kreisel_höher}_{drehung0}_True")
@@ -644,25 +642,42 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
dy_true = halbe_laenge * math.cos (0)
start = (x, y + dy_true,upper_hoehe_vario)
ende = (x,y -dy_true,lower_hoehe_vario)
- if ein_kreisel_höher == True:
+ if ein_kreisel_höher == True :
l = (start[0],start[1],upper_hoehe_vario)
- m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+ if voerder_richtung =="Auf":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+ start = m
+ elif voerder_richtung == "Ab":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario - 500* math.sin(math.radians(3)))
+ start = m
+ else:
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario)
+ start = m
+
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
- start = start[0], start[1] - math.cos(math.radians(3)) *500, start[2] +500* math.sin(math.radians(3))
+
+
else:
l = (ende[0],ende[1],lower_hoehe_vario)
- m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
- ende = ende[0], ende[1] + math.cos(math.radians(3)) *500, ende[2] - 500* math.sin(math.radians(3))
+ if voerder_richtung =="Auf":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
+ ende = m
+ elif voerder_richtung == "Ab":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario + 500* math.sin(math.radians(3)))
+ ende = m
+ else:
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario )
+ ende = m
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
return
@@ -682,8 +697,11 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
msp.add_blockref(blockname,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
return
block_vario = doc.blocks.new(blockname, base_point=(0,0,0))
+ dy_true = halbe_laenge * math.cos (0)
+ msp.add_line((x , y -dy_true,upper_hoehe_vario),(x,y+dy_true,lower_hoehe_vario))
+
start, ende =erstellung_gefaelle_block_verbunenden_am_einen(x, y, doc, lib_doc, asoffset, esoffset, upper_hoehe_vario, lower_hoehe_vario, hoehe_vario, drehung0, laenge, blockname,None ,block_vario, voerder_richtung, ein_kreisel_höher)
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
if merkmale.get("Motorseite")== "rechts":
@@ -714,6 +732,8 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
drehung2 = drehung0
drehung0 = drehung1
drehung1 = drehung2
+ if(teileid == "shape_b804092f-b609-619c-2588-2b3944f060a6"):
+ test = 3
am_kreisel,kreisel_verbunden =am_kreisel_direct_verbunden(x, y, upper_hoehe_vario, lower_hoehe_vario, x0_kreisel, y0_kreisel, richtung_rad0, abstand0, dx, dy, x1_kreisel, y1_kreisel, richtung_rad1, abstand1)
if kreisel_verbunden == 2:
@@ -731,22 +751,41 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
start = (x, y + dy_true,upper_hoehe_vario)
ende = (x,y -dy_true,lower_hoehe_vario)
l = (start[0],start[1],upper_hoehe_vario)
- m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+
+ if voerder_richtung =="Auf":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+ start = m
+
+ elif voerder_richtung == "Ab":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario -500* math.sin(math.radians(3)))
+ start = m
+
+ else:
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario )
+ start = m
+
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
- start = start[0], start[1] - math.cos(math.radians(3)) *500, start[2] +500* math.sin(math.radians(3))
l = (ende[0],ende[1],lower_hoehe_vario)
- m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
- ende = ende[0], ende[1] + math.cos(math.radians(3)) *500, ende[2] - 500* math.sin(math.radians(3))
+ if voerder_richtung =="Auf":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
+ ende = m
+
+ elif voerder_richtung == "Ab":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario + 500* math.sin(math.radians(3)))
+ ende = m
+ else:
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario )
+ ende = m
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
return
@@ -758,7 +797,7 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
erster_kreisel_höher = True
else:
erster_kreisel_höher = False
- blockname = (f"Vario_Foerderer_{winkel}_{voerder_richtung}_{laenge}_{hoehe_vario}_rechts_{am_kreisel}_{erster_kreisel_höher}_drehung0_{drehung1}")
+ blockname = (f"Vario_Foerderer_{winkel}_{voerder_richtung}_{laenge}_{hoehe_vario}_rechts_{am_kreisel}_{erster_kreisel_höher}_{drehung0}_{drehung1}")
block_name_links = (f"Vario_Foerderer_{winkel}_{voerder_richtung}_{laenge}_{hoehe_vario}_links_{am_kreisel}_{erster_kreisel_höher}_{drehung0}_{drehung1}")
@@ -771,32 +810,50 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
return
block_vario = doc.blocks.new(blockname, base_point=(0,0,0))
dy_true = halbe_laenge * math.cos(0)
- if am_kreisel == 1 and erster_kreisel_höher == True or am_kreisel == 2 and erster_kreisel_höher == False:
+
+ if (am_kreisel == 1 and erster_kreisel_höher == True)or (am_kreisel == 2 and erster_kreisel_höher == False):
start = (x, y + dy_true,upper_hoehe_vario)
ende = (x,y -dy_true,lower_hoehe_vario)
l = (start[0],start[1],upper_hoehe_vario)
- m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+ if voerder_richtung == "Auf":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario +500* math.sin(math.radians(3)))
+ z1 = m[2]
+ elif voerder_richtung == "Ab":
+ m = (start[0],start[1] - 500*math.cos(math.radians(3)),upper_hoehe_vario -500* math.sin(math.radians(3)))
+ z1 = m[2]
+ else:
+ m= (x,y -dy_true,lower_hoehe_vario)
+ z1 = m[2]
+
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
y1 = start[1] - math.cos(math.radians(3)) *500
- z1 = start[2] +500* math.sin(math.radians(3))
+
else:
start = (x, y + dy_true,upper_hoehe_vario)
ende = (x,y -dy_true,lower_hoehe_vario)
l = (ende[0],ende[1],lower_hoehe_vario)
- m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
+ if voerder_richtung =="Auf":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario - 500* math.sin(math.radians(3)))
+ z1 = m[2]
+ elif voerder_richtung == "Ab":
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario + 500* math.sin(math.radians(3)))
+ z1 = m[2]
+ else:
+ m = (ende[0],ende[1] + 500*math.cos(math.radians(3)) ,lower_hoehe_vario )
+ z1 = m[2]
line = Line.new(dxfattribs={"start": l,"end":m })
copy= line.copy()
copy.translate(-x,-y,-hoehe_vario)
block_vario.add_entity(copy)
y1 = ende[1] + math.cos(math.radians(3)) *500
- z1 = ende[2] -500* math.sin(math.radians(3))
+
start, ende =gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoehe_vario, lower_hoehe_vario, hoehe_vario,richtung2, drehung0, drehung1, laenge, None, blockname,block_vario,voerder_richtung, am_kreisel,erster_kreisel_höher,y1,z1)
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
elif merkmale.get("Motorseite")== "rechts":
@@ -821,7 +878,7 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
block_vario = doc.blocks.new(blockname, base_point=(0,0,0))
start, ende =gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoehe_vario, lower_hoehe_vario, hoehe_vario,richtung2, drehung0, drehung1, laenge, None, blockname,block_vario,voerder_richtung)
if blockname not in doc.blocks or block_name_links not in doc.blocks:
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block_vario,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
elif merkmale.get("Motorseite")== "rechts":
@@ -848,19 +905,23 @@ def handle_ils_2_0_variofoerderer(msp, teileid, merkmale, x, y, doc, lib_doc, ve
if blockname not in doc.blocks or block_name_links not in doc.blocks:
- vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block,block_name_links, start, ende)
+ vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block,block_name_links, start, ende,voerder_richtung )
if merkmale.get("Motorseite")== "links":
msp.add_blockref(block_name_links,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
if merkmale.get("Motorseite")== "rechts":
msp.add_blockref(blockname,(x,y,hoehe_vario),dxfattribs={"rotation": rotation})
-def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block,block_name_links, start, ende):
- if merkmale.get("Förderrichtung") == "Auf":
+def vario_erstellung(msp,merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario, laenge, block,block_name_links, start, ende,voerder_richtung ):
+ if voerder_richtung== "Auf":
umlenk_motor_offset = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Umlenkstation")).split(","))
block_Vario_Umlenkstation_500mm ="Vario_Umlenkstation_500mm"
block_Vario_Motorstation_500mm = "Vario_Motorstation_500mm"
- import_block( block_Vario_Motorstation_500mm, lib_doc, doc,math.radians(3))
- import_block( block_Vario_Umlenkstation_500mm , lib_doc, doc,math.radians(3))
+ import_block(block_Vario_Motorstation_500mm, lib_doc, doc)
+ import_block(block_Vario_Umlenkstation_500mm , lib_doc, doc,math.radians(3))
+ block_Vario_Motorstation_500mm = dreh_block(block_Vario_Motorstation_500mm,doc,math.radians(3))
+ block_Vario_Umlenkstation_500mm = dreh_block( block_Vario_Umlenkstation_500mm, doc,math.radians(3))
+
+
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_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})
@@ -868,26 +929,29 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
if winkel == 48:
block_Vario_Bogen_auf_51 = "Vario_Bogen_auf_51°"
block_Vario_Bogen_ab_51 = "Vario_Bogen_ab_51°"
- Vario_Bogen_auf_51_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_51_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_51_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_51_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_51_Delta_VP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_51_Delta_VP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_51, lib_doc, doc,math.radians(3))
- import_block(block_Vario_Bogen_ab_51, lib_doc, doc,math.radians(-48))
+ Vario_Bogen_auf_51_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_51_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_51_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_51_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_51_Delta_VP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_51_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_51_Delta_VP_0= tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_51_Delta_VP_0")).split(","))
+ import_block(block_Vario_Bogen_auf_51, lib_doc, doc)
+ import_block(block_Vario_Bogen_ab_51, lib_doc, doc)
+ block_Vario_Bogen_auf_51 = dreh_block(block_Vario_Bogen_auf_51, doc,math.radians(3))
+ block_Vario_Bogen_ab_51 = dreh_block(block_Vario_Bogen_ab_51, doc,math.radians(-48))
+
- block.add_blockref(block_Vario_Bogen_auf_51,(ende[0] -x ,ende[1] +Vario_Bogen_auf_51_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_51_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_51_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_51_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_51_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_51_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_51_Delta_VP_1_aufwaerts[1], ende[1]-Vario_Bogen_auf_51_Delta_VP_1_aufwaerts[0],ende[2] + Vario_Bogen_auf_51_Delta_VP_1_aufwaerts[2])
+ block.add_blockref(block_Vario_Bogen_auf_51,(ende[0] -x ,ende[1] +Vario_Bogen_auf_51_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_51_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_51_Delta_SP_1[0] + Vario_Bogen_auf_51_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_51_Delta_SP_1[2] - Vario_Bogen_auf_51_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_51_Delta_VP_1[1], ende[1]-Vario_Bogen_auf_51_Delta_VP_1[0],ende[2] + Vario_Bogen_auf_51_Delta_VP_1[2])
- block.add_blockref(block_Vario_Bogen_ab_51 ,(start[0]-x,start[1] - Vario_Bogen_ab_51_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_51_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
+ block.add_blockref(block_Vario_Bogen_ab_51 ,(start[0]-x,start[1] - Vario_Bogen_ab_51_Delta_SP_1[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_51_Delta_SP_1[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_51_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_51_Delta_SP_1_aufwaerts[0],start[2] + Vario_Bogen_ab_51_Delta_SP_1_aufwaerts[2]- Vario_Bogen_ab_51_Delta_SP_0_aufwaerts[2]
+ start = start[0] ,start[1] - Vario_Bogen_ab_51_Delta_SP_0[0] - Vario_Bogen_ab_51_Delta_SP_1[0],start[2] + Vario_Bogen_ab_51_Delta_SP_1[2]- Vario_Bogen_ab_51_Delta_SP_0[2]
- start_VP = start[0] +Vario_Bogen_ab_51_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_51_Delta_VP_0_aufwaerts[0] ,start[2]-Vario_Bogen_ab_51_Delta_VP_0_aufwaerts[2]
+ start_VP = start[0] +Vario_Bogen_ab_51_Delta_VP_0[1],start[1]+Vario_Bogen_ab_51_Delta_VP_0[0] ,start[2]-Vario_Bogen_ab_51_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -906,26 +970,28 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
elif winkel == 36:
block_Vario_Bogen_auf_39 = "Vario_Bogen_auf_39°"
block_Vario_Bogen_ab_39 = "Vario_Bogen_ab_39°"
- Vario_Bogen_auf_39_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_39_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_39_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_39_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_39_Delta_VP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_39_Delta_VP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_39, lib_doc, doc,math.radians(3))
- import_block(block_Vario_Bogen_ab_39, lib_doc, doc,math.radians(-36))
+ Vario_Bogen_auf_39_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_39_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_39_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_39_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_39_Delta_VP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_39_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_39_Delta_VP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_39_Delta_VP_0")).split(","))
+ import_block(block_Vario_Bogen_auf_39, lib_doc, doc)
+ import_block(block_Vario_Bogen_ab_39, lib_doc, doc)
+ block_Vario_Bogen_auf_39= dreh_block(block_Vario_Bogen_auf_39, doc,math.radians(3))
+ block_Vario_Bogen_ab_39 = dreh_block(block_Vario_Bogen_ab_39, doc,math.radians(-36))
+
-
- block.add_blockref(block_Vario_Bogen_auf_39,(ende[0] -x ,ende[1] +Vario_Bogen_auf_39_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_39_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_39_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_39_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_39_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_39_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_39_Delta_VP_1_aufwaerts[1], ende[1] +Vario_Bogen_auf_39_Delta_SP_1_aufwaerts[0]-Vario_Bogen_auf_39_Delta_VP_1_aufwaerts[0],ende[2] - Vario_Bogen_auf_39_Delta_VP_1_aufwaerts[2])
+ block.add_blockref(block_Vario_Bogen_auf_39,(ende[0] -x ,ende[1] +Vario_Bogen_auf_39_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_39_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_39_Delta_SP_1[0] + Vario_Bogen_auf_39_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_39_Delta_SP_1[2] - Vario_Bogen_auf_39_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_39_Delta_VP_1[1], ende[1] +Vario_Bogen_auf_39_Delta_SP_1[0]-Vario_Bogen_auf_39_Delta_VP_1[0],ende[2] - Vario_Bogen_auf_39_Delta_VP_1[2])
- block.add_blockref(block_Vario_Bogen_ab_39 ,(start[0]-x,start[1] - Vario_Bogen_ab_39_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_39_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
+ block.add_blockref(block_Vario_Bogen_ab_39 ,(start[0]-x,start[1] - Vario_Bogen_ab_39_Delta_SP_1[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_39_Delta_SP_1[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_39_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_39_Delta_SP_1_aufwaerts[0],start[2] -Vario_Bogen_ab_39_Delta_SP_0_aufwaerts[2] + Vario_Bogen_ab_39_Delta_SP_1_aufwaerts[2]
+ start = start[0] ,start[1] - Vario_Bogen_ab_39_Delta_SP_0[0] - Vario_Bogen_ab_39_Delta_SP_1[0],start[2] -Vario_Bogen_ab_39_Delta_SP_0[2] + Vario_Bogen_ab_39_Delta_SP_1[2]
- start_VP = start[0] +Vario_Bogen_ab_39_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_39_Delta_VP_0_aufwaerts[0] - Vario_Bogen_ab_39_Delta_SP_0_aufwaerts[0],start[2]-Vario_Bogen_ab_39_Delta_VP_0_aufwaerts[2]
+ start_VP = start[0] +Vario_Bogen_ab_39_Delta_VP_0[1],start[1]+Vario_Bogen_ab_39_Delta_VP_0[0] - Vario_Bogen_ab_39_Delta_SP_0[0],start[2]-Vario_Bogen_ab_39_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -943,21 +1009,24 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
elif winkel == 24:
block_Vario_Bogen_auf_27 = "Vario_Bogen_auf_27°"
block_Vario_Bogen_ab_27 = "Vario_Bogen_ab_27°"
- Vario_Bogen_auf_27_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_27_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_27_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_27_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_27_Delta_VP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_27_Delta_VP_0_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_27, lib_doc, doc,math.radians(3))
- import_block(block_Vario_Bogen_ab_27, lib_doc, doc,math.radians(-24))
- block.add_blockref(block_Vario_Bogen_auf_27,(ende[0] -x ,ende[1] +Vario_Bogen_auf_27_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_27_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_27_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_27_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_27_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_27_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_27_Delta_VP_1_aufwaerts[1], ende[1] +Vario_Bogen_auf_27_Delta_VP_1_aufwaerts[0],ende[2] - Vario_Bogen_auf_27_Delta_VP_1_aufwaerts[2])
+ Vario_Bogen_auf_27_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_27_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_27_Delta_SP_0= tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_27_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_27_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_27_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_27_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_27_Delta_VP_0")).split(","))
+ import_block(block_Vario_Bogen_auf_27, lib_doc, doc)
+ import_block(block_Vario_Bogen_ab_27, lib_doc, doc)
+ block_Vario_Bogen_auf_27= dreh_block(block_Vario_Bogen_auf_27, doc,math.radians(3))
+ block_Vario_Bogen_ab_27 = dreh_block(block_Vario_Bogen_ab_27, doc,math.radians(-24))
- block.add_blockref(block_Vario_Bogen_ab_27 ,(start[0]-x,start[1] - Vario_Bogen_ab_27_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario + Vario_Bogen_ab_27_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_27_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_27_Delta_SP_1_aufwaerts[0],start[2] -Vario_Bogen_ab_27_Delta_SP_0_aufwaerts[2] + Vario_Bogen_ab_27_Delta_SP_1_aufwaerts[2]
- start_VP = start[0] +Vario_Bogen_ab_27_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_27_Delta_VP_0_aufwaerts[0] ,start[2]-Vario_Bogen_ab_27_Delta_VP_0_aufwaerts[2]
+ block.add_blockref(block_Vario_Bogen_auf_27,(ende[0] -x ,ende[1] +Vario_Bogen_auf_27_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_27_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_27_Delta_SP_1[0] + Vario_Bogen_auf_27_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_27_Delta_SP_1[2] - Vario_Bogen_auf_27_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_27_Delta_VP_1[1], ende[1] +Vario_Bogen_auf_27_Delta_VP_1[0],ende[2] - Vario_Bogen_auf_27_Delta_VP_1[2])
+
+ block.add_blockref(block_Vario_Bogen_ab_27 ,(start[0]-x,start[1] - Vario_Bogen_ab_27_Delta_SP_1[0] -y ,start[2] - hoehe_vario + Vario_Bogen_ab_27_Delta_SP_1[2]),dxfattribs={"rotation": 90})
+ start = start[0] ,start[1] - Vario_Bogen_ab_27_Delta_SP_0[0] - Vario_Bogen_ab_27_Delta_SP_1[0],start[2] -Vario_Bogen_ab_27_Delta_SP_0[2] + Vario_Bogen_ab_27_Delta_SP_1[2]
+ start_VP = start[0] +Vario_Bogen_ab_27_Delta_VP_0[1],start[1]+Vario_Bogen_ab_27_Delta_VP_0[0] ,start[2]-Vario_Bogen_ab_27_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -977,21 +1046,24 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
elif winkel == 15:
block_Vario_Bogen_ab_18 = "Vario_Bogen_ab_18°"
block_Vario_Bogen_auf_18 = "Vario_Bogen_auf_18°"
- Vario_Bogen_auf_18_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_18_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_18_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_18_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_18_Delta_VP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_18_Delta_VP_0_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_18, lib_doc, doc,math.radians(3))
+ Vario_Bogen_auf_18_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_18_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_18_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_18_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_18_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_18_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_18_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_18_Delta_VP_0")).split(","))
+ import_block(block_Vario_Bogen_auf_18, lib_doc, doc)
import_block(block_Vario_Bogen_ab_18, lib_doc, doc,math.radians(-15))
- block.add_blockref(block_Vario_Bogen_auf_18,(ende[0] -x ,ende[1] +Vario_Bogen_auf_18_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_18_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_18_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_18_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_18_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_18_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_18_Delta_VP_1_aufwaerts[1], ende[1] +Vario_Bogen_auf_18_Delta_VP_1_aufwaerts[0],ende[2] - Vario_Bogen_auf_18_Delta_VP_1_aufwaerts[2])
+ block_Vario_Bogen_auf_18 = dreh_block(block_Vario_Bogen_auf_18, doc,math.radians(3))
+ block_Vario_Bogen_ab_18 = dreh_block(block_Vario_Bogen_ab_18, doc,math.radians(-15))
- block.add_blockref(block_Vario_Bogen_ab_18 ,(start[0]-x,start[1] - Vario_Bogen_ab_18_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_18_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_18_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_18_Delta_SP_1_aufwaerts[0],start[2] -Vario_Bogen_ab_18_Delta_SP_0_aufwaerts[2] + Vario_Bogen_ab_18_Delta_SP_1_aufwaerts[2]
- start_VP = start[0] +Vario_Bogen_ab_18_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_18_Delta_VP_0_aufwaerts[0] ,start[2]-Vario_Bogen_ab_18_Delta_VP_0_aufwaerts[2]
+ block.add_blockref(block_Vario_Bogen_auf_18,(ende[0] -x ,ende[1] +Vario_Bogen_auf_18_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_18_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_18_Delta_SP_1[0] + Vario_Bogen_auf_18_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_18_Delta_SP_1[2] - Vario_Bogen_auf_18_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_18_Delta_VP_1[1], ende[1] +Vario_Bogen_auf_18_Delta_VP_1[0],ende[2] - Vario_Bogen_auf_18_Delta_VP_1[2])
+
+ block.add_blockref(block_Vario_Bogen_ab_18 ,(start[0]-x,start[1] - Vario_Bogen_ab_18_Delta_SP_1[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_18_Delta_SP_1[2]),dxfattribs={"rotation": 90})
+ start = start[0] ,start[1] - Vario_Bogen_ab_18_Delta_SP_0[0] - Vario_Bogen_ab_18_Delta_SP_1[0],start[2] -Vario_Bogen_ab_18_Delta_SP_0[2] + Vario_Bogen_ab_18_Delta_SP_1[2]
+ start_VP = start[0] +Vario_Bogen_ab_18_Delta_VP_0[1],start[1]+Vario_Bogen_ab_18_Delta_VP_0[0] ,start[2]-Vario_Bogen_ab_18_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -1012,21 +1084,25 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
elif winkel == 12:
block_Vario_Bogen_ab_15 = "Vario_Bogen_ab_15°"
block_Vario_Bogen_auf_15 = "Vario_Bogen_auf_15°"
- Vario_Bogen_auf_15_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_15_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_15_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_15_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_15_Delta_VP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_15_Delta_VP_0_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_15, lib_doc, doc,math.radians(3))
- import_block(block_Vario_Bogen_ab_15, lib_doc, doc,math.radians(-12))
- block.add_blockref(block_Vario_Bogen_auf_15,(ende[0] -x ,ende[1] +Vario_Bogen_auf_15_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_15_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_15_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_15_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_15_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_15_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_15_Delta_VP_1_aufwaerts[1], ende[1] +Vario_Bogen_auf_15_Delta_VP_1_aufwaerts[0],ende[2] - Vario_Bogen_auf_15_Delta_VP_1_aufwaerts[2])
+ Vario_Bogen_auf_15_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_15_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_15_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_15_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_15_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_15_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_15_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_15_Delta_VP_0")).split(","))
+ import_block(block_Vario_Bogen_auf_15, lib_doc, doc)
+ import_block(block_Vario_Bogen_ab_15, lib_doc, doc)
+ block_Vario_Bogen_auf_15= dreh_block(block_Vario_Bogen_auf_15, doc,math.radians(3))
+ block_Vario_Bogen_ab_15 = dreh_block(block_Vario_Bogen_ab_15, doc,math.radians(-12))
- block.add_blockref(block_Vario_Bogen_ab_15 ,(start[0]-x,start[1] - Vario_Bogen_ab_15_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_15_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_15_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_15_Delta_SP_1_aufwaerts[0],start[2] -Vario_Bogen_ab_15_Delta_SP_0_aufwaerts[2] + Vario_Bogen_ab_15_Delta_SP_1_aufwaerts[2]
- start_VP = start[0] +Vario_Bogen_ab_15_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_15_Delta_VP_0_aufwaerts[0] ,start[2]-Vario_Bogen_ab_15_Delta_VP_0_aufwaerts[2]
+
+ block.add_blockref(block_Vario_Bogen_auf_15,(ende[0] -x ,ende[1] +Vario_Bogen_auf_15_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_15_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_15_Delta_SP_1[0] + Vario_Bogen_auf_15_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_15_Delta_SP_1[2] - Vario_Bogen_auf_15_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_15_Delta_VP_1[1], ende[1] +Vario_Bogen_auf_15_Delta_VP_1[0],ende[2] - Vario_Bogen_auf_15_Delta_VP_1[2])
+
+ block.add_blockref(block_Vario_Bogen_ab_15 ,(start[0]-x,start[1] - Vario_Bogen_ab_15_Delta_SP_1[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_15_Delta_SP_1[2]),dxfattribs={"rotation": 90})
+ start = start[0] ,start[1] - Vario_Bogen_ab_15_Delta_SP_0[0] - Vario_Bogen_ab_15_Delta_SP_1[0],start[2] -Vario_Bogen_ab_15_Delta_SP_0[2] + Vario_Bogen_ab_15_Delta_SP_1[2]
+ start_VP = start[0] +Vario_Bogen_ab_15_Delta_VP_0[1],start[1]+Vario_Bogen_ab_15_Delta_VP_0[0] ,start[2]-Vario_Bogen_ab_15_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -1043,23 +1119,29 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
elif winkel == 9:
- block_Vario_Bogen_ab_12 = "Vario_Bogen_ab_12°"
+ block_Vario_Bogen_ab_12 = "Vario_Bogen_ab_12_°"
block_Vario_Bogen_auf_12 = "Vario_Bogen_auf_12°"
- Vario_Bogen_auf_12_Delta_SP_0_aufwaerts = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_auf_12_Delta_SP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_12_Delta_SP_0_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_0_aufwaerts")).split(","))
- Vario_Bogen_ab_12_Delta_SP_1_aufwaerts = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_1_aufwaerts")).split(","))
- Vario_Bogen_auf_12_Delta_VP_1_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_VP_1_aufwaerts")).split(","))
- Vario_Bogen_ab_12_Delta_VP_0_aufwaerts = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_VP_0_aufwaerts")).split(","))
- import_block(block_Vario_Bogen_auf_12, lib_doc, doc,math.radians(3))
- import_block(block_Vario_Bogen_ab_12, lib_doc, doc,math.radians(-9))
- block.add_blockref(block_Vario_Bogen_auf_12,(ende[0] -x ,ende[1] +Vario_Bogen_auf_12_Delta_SP_0_aufwaerts[0] -y ,ende[2] - Vario_Bogen_auf_12_Delta_SP_0_aufwaerts[2]- hoehe_vario ),dxfattribs={"rotation": 90})
- ende = (ende[0] ,ende[1] +Vario_Bogen_auf_12_Delta_SP_1_aufwaerts[0] + Vario_Bogen_auf_12_Delta_SP_0_aufwaerts[0] ,ende[2] + Vario_Bogen_auf_12_Delta_SP_1_aufwaerts[2] - Vario_Bogen_auf_12_Delta_SP_0_aufwaerts[2])
- ende_VP = (ende[0] +Vario_Bogen_auf_12_Delta_VP_1_aufwaerts[1], ende[1] +Vario_Bogen_auf_12_Delta_VP_1_aufwaerts[0],ende[2] - Vario_Bogen_auf_12_Delta_VP_1_aufwaerts[2])
+ Vario_Bogen_auf_12_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_0_auf")).split(","))
+ Vario_Bogen_auf_12_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_1_auf")).split(","))
+ Vario_Bogen_ab_12_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_0_auf")).split(","))
+ Vario_Bogen_ab_12_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_1_auf")).split(","))
+ Vario_Bogen_auf_12_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_VP_1_auf")).split(","))
+ Vario_Bogen_ab_12_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_VP_0_auf")).split(","))
+ import_block(block_Vario_Bogen_auf_12, lib_doc, doc)
+ import_block(block_Vario_Bogen_ab_12, lib_doc, doc)
+ block_Vario_Bogen_auf_12 = dreh_block(block_Vario_Bogen_auf_12, doc,math.radians(3))
+ block_Vario_Bogen_ab_12 = dreh_block(block_Vario_Bogen_ab_12, doc,math.radians(-9))
- block.add_blockref(block_Vario_Bogen_ab_12 ,(start[0]-x,start[1] - Vario_Bogen_ab_12_Delta_SP_1_aufwaerts[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_12_Delta_SP_1_aufwaerts[2]),dxfattribs={"rotation": 90})
- start = start[0] ,start[1] - Vario_Bogen_ab_12_Delta_SP_0_aufwaerts[0] - Vario_Bogen_ab_12_Delta_SP_1_aufwaerts[0],start[2] -Vario_Bogen_ab_12_Delta_SP_0_aufwaerts[2] + Vario_Bogen_ab_12_Delta_SP_1_aufwaerts[2]
- start_VP = start[0] +Vario_Bogen_ab_12_Delta_VP_0_aufwaerts[1],start[1]+Vario_Bogen_ab_12_Delta_VP_0_aufwaerts[0] ,start[2]-Vario_Bogen_ab_12_Delta_VP_0_aufwaerts[2]
+
+
+
+ block.add_blockref(block_Vario_Bogen_auf_12,(ende[0] -x ,ende[1] +Vario_Bogen_auf_12_Delta_SP_0[0] -y ,ende[2] - Vario_Bogen_auf_12_Delta_SP_0[2]- hoehe_vario ),dxfattribs={"rotation": 90})
+ ende = (ende[0] ,ende[1] +Vario_Bogen_auf_12_Delta_SP_1[0] + Vario_Bogen_auf_12_Delta_SP_0[0] ,ende[2] + Vario_Bogen_auf_12_Delta_SP_1[2] - Vario_Bogen_auf_12_Delta_SP_0[2])
+ ende_VP = (ende[0] +Vario_Bogen_auf_12_Delta_VP_1[1], ende[1] +Vario_Bogen_auf_12_Delta_VP_1[0],ende[2] - Vario_Bogen_auf_12_Delta_VP_1[2])
+
+ block.add_blockref(block_Vario_Bogen_ab_12 ,(start[0]-x,start[1] - Vario_Bogen_ab_12_Delta_SP_1[0] -y ,start[2] - hoehe_vario+Vario_Bogen_ab_12_Delta_SP_1[2]),dxfattribs={"rotation": 90})
+ start = start[0] ,start[1] - Vario_Bogen_ab_12_Delta_SP_0[0] - Vario_Bogen_ab_12_Delta_SP_1[0],start[2] -Vario_Bogen_ab_12_Delta_SP_0[2] + Vario_Bogen_ab_12_Delta_SP_1[2]
+ start_VP = start[0] +Vario_Bogen_ab_12_Delta_VP_0[1],start[1]+Vario_Bogen_ab_12_Delta_VP_0[0] ,start[2]-Vario_Bogen_ab_12_Delta_VP_0[2]
line_VP = Line.new(dxfattribs={"start":start_VP,"end": ende_VP})
line_VP.dxf.layer = "VARIO"
copy_VP = line_VP.copy()
@@ -1084,33 +1166,184 @@ def vario_erstellung(merkmale, x, y, doc, lib_doc, config, winkel, hoehe_vario,
copy.translate(-x,-y,-hoehe_vario)
block.add_entity(copy)
- matrix = Matrix44.scale(-1,1,1)
- block_links = doc.blocks.new(block_name_links, base_point=(0,0,0))
- for entity in block:
- clone= entity.copy()
- if entity.dxftype() == "INSERT":
- if (entity.dxf.name == "400102632_ES-Element_90_links" or entity.dxf.name == "200000146_ES-Element_90_rechts" or
- entity.dxf.name == "200000241_AS-Element_90_rechts" or entity.dxf.name == "200000217_AS-Element_90_links"
- ):
- block_links.add_entity(clone)
- else:
- clone.transform(matrix)
- block_links.add_entity(clone)
- else:
- clone.transform(matrix)
- block_links.add_entity(clone)
- else:
+
+ elif voerder_richtung == "Ab":
+
+
umlenk_motor_offset = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Umlenkstation")).split(","))
block_Vario_Umlenkstation_500mm ="Vario_Umlenkstation_500mm"
block_Vario_Motorstation_500mm = "Vario_Motorstation_500mm"
- import_block( block_Vario_Motorstation_500mm, lib_doc, doc,math.radians(3))
- import_block( block_Vario_Umlenkstation_500mm , lib_doc, doc,math.radians(3))
- 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_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]
+ import_block( block_Vario_Motorstation_500mm, lib_doc, doc)
+ import_block( block_Vario_Umlenkstation_500mm , lib_doc, doc)
+ block_Vario_Motorstation_500mm = dreh_block( block_Vario_Motorstation_500mm, doc,math.radians(3))
+ block_Vario_Umlenkstation_500mm = dreh_block( block_Vario_Umlenkstation_500mm , doc,math.radians(3))
+ 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 = (start[0] ,start[1] - umlenk_motor_offset[0],start[2] +umlenk_motor_offset[2])
+ 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 = ende[0] , ende[1] + umlenk_motor_offset[0],ende[2] +umlenk_motor_offset[2]
+ if winkel == 48:
+ block_Vario_ab_45 = "Vario_Bogen_ab_45°"
+ block_Vario_auf_45 = "Vario_Bogen_auf_45°"
+ import_block( block_Vario_ab_45 , lib_doc, doc)
+ import_block( block_Vario_auf_45 , lib_doc, doc)
+ block_Vario_ab_45 = dreh_block( block_Vario_ab_45 , doc, math.radians(3))
+ block_Vario_auf_45 = dreh_block( block_Vario_auf_45 , doc, math.radians(48))
+ Vario_Bogen_auf_45_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_45_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_45_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_45_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_45_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_45_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_45_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_45_Delta_SP_1")).split(","))
+ # Vario_Bogen_auf_45_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_45_Delta_VP_1")).split(","))
+ # Vario_Bogen_ab_45_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_45_Delta_VP_0")).split(","))
+
+ block.add_blockref(block_Vario_ab_45, (start[0]-x,start[1]-y- Vario_Bogen_ab_45_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_45_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_45_Delta_SP_0[0]- Vario_Bogen_ab_45_Delta_SP_1[0],start[2]-Vario_Bogen_ab_45_Delta_SP_0[2]-Vario_Bogen_ab_45_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_45, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_45_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_45_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_45_Delta_SP_0[0]+ Vario_Bogen_auf_45_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_45_Delta_SP_0[2]+ Vario_Bogen_auf_45_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+
+ elif winkel == 36:
+ block_Vario_ab_33 = "Vario_Bogen_ab_33°"
+ block_Vario_auf_33 = "Vario_Bogen_auf_33°"
+ import_block( block_Vario_ab_33 , lib_doc, doc)
+ import_block( block_Vario_auf_33 , lib_doc, doc)
+ block_Vario_ab_33 = dreh_block( block_Vario_ab_33 , doc, math.radians(3))
+ block_Vario_auf_33 = dreh_block( block_Vario_auf_33 , doc, math.radians(36))
+ Vario_Bogen_auf_33_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_33_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_33_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_33_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_33_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_33_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_33_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_33_Delta_SP_1")).split(","))
+ # Vario_Bogen_auf_33_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_33_Delta_VP_1")).split(","))
+ # Vario_Bogen_ab_33_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_33_Delta_VP_0")).split(","))
+
+ block.add_blockref(block_Vario_ab_33, (start[0]-x,start[1]-y- Vario_Bogen_ab_33_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_33_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_33_Delta_SP_0[0]- Vario_Bogen_ab_33_Delta_SP_1[0],start[2]-Vario_Bogen_ab_33_Delta_SP_0[2]-Vario_Bogen_ab_33_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_33, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_33_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_33_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_33_Delta_SP_0[0]+ Vario_Bogen_auf_33_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_33_Delta_SP_0[2]+ Vario_Bogen_auf_33_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+
+ elif winkel == 24:
+ block_Vario_ab_21 = "Vario_Bogen_ab_21°"
+ block_Vario_auf_21 = "Vario_Bogen_auf_21°"
+ import_block( block_Vario_ab_21 , lib_doc, doc)
+ import_block( block_Vario_auf_21 , lib_doc, doc)
+ block_Vario_ab_21 = dreh_block( block_Vario_ab_21 , doc, math.radians(3))
+ block_Vario_auf_21 = dreh_block( block_Vario_auf_21 , doc, math.radians(24))
+ Vario_Bogen_auf_21_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_21_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_21_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_21_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_21_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_21_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_21_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_21_Delta_SP_1")).split(","))
+ # Vario_Bogen_auf_21_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_21_Delta_VP_1")).split(","))
+ # Vario_Bogen_ab_21_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_21_Delta_VP_0")).split(","))
+
+ block.add_blockref(block_Vario_ab_21, (start[0]-x,start[1]-y- Vario_Bogen_ab_21_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_21_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_21_Delta_SP_0[0]- Vario_Bogen_ab_21_Delta_SP_1[0],start[2]-Vario_Bogen_ab_21_Delta_SP_0[2]-Vario_Bogen_ab_21_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_21, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_21_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_21_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_21_Delta_SP_0[0]+ Vario_Bogen_auf_21_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_21_Delta_SP_0[2]+ Vario_Bogen_auf_21_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+ elif winkel == 15:
+ block_Vario_ab_12 = "Vario_Bogen_ab_12°"
+ block_Vario_auf_12 = "Vario_Bogen_auf_12°"
+ import_block( block_Vario_ab_12 , lib_doc, doc)
+ import_block( block_Vario_auf_12 , lib_doc, doc)
+ block_Vario_ab_12 = dreh_block( block_Vario_ab_12, doc, math.radians(3))
+ block_Vario_auf_12 = dreh_block( block_Vario_auf_12 , doc, math.radians(15))
+ Vario_Bogen_auf_12_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_0_ab")).split(","))
+ Vario_Bogen_auf_12_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_SP_1_ab")).split(","))
+ Vario_Bogen_ab_12_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_0_ab")).split(","))
+ Vario_Bogen_ab_12_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_SP_1_ab")).split(","))
+ Vario_Bogen_auf_12_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_12_Delta_VP_1_ab")).split(","))
+ Vario_Bogen_ab_12_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_12_Delta_VP_0_ab")).split(","))
+
+ block.add_blockref(block_Vario_ab_12, (start[0]-x,start[1]-y- Vario_Bogen_ab_12_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_12_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_12_Delta_SP_0[0]- Vario_Bogen_ab_12_Delta_SP_1[0],start[2]-Vario_Bogen_ab_12_Delta_SP_0[2]-Vario_Bogen_ab_12_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_12, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_12_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_12_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_12_Delta_SP_0[0]+ Vario_Bogen_auf_12_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_12_Delta_SP_0[2]+ Vario_Bogen_auf_12_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+
+ elif winkel == 12:
+ block_Vario_ab_9 = "Vario_Bogen_ab_9°"
+ block_Vario_auf_9 = "Vario_Bogen_auf_9°"
+ import_block( block_Vario_ab_9 , lib_doc, doc)
+ import_block( block_Vario_auf_9 , lib_doc, doc)
+ block_Vario_ab_9 = dreh_block( block_Vario_ab_9, doc, math.radians(3))
+ block_Vario_auf_9 = dreh_block( block_Vario_auf_9 , doc, math.radians(12))
+ Vario_Bogen_auf_9_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_9_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_9_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_9_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_9_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_9_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_9_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_9_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_9_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_9_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_9_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_9_Delta_VP_0")).split(","))
+
+ block.add_blockref(block_Vario_ab_9, (start[0]-x,start[1]-y- Vario_Bogen_ab_9_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_9_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_9_Delta_SP_0[0]- Vario_Bogen_ab_9_Delta_SP_1[0],start[2]-Vario_Bogen_ab_9_Delta_SP_0[2]-Vario_Bogen_ab_9_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_9, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_9_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_9_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_9_Delta_SP_0[0]+ Vario_Bogen_auf_9_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_9_Delta_SP_0[2]+ Vario_Bogen_auf_9_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+ elif winkel == 9:
+ block_Vario_ab_6 = "Vario_Bogen_ab_6°"
+ block_Vario_auf_6 = "Vario_Bogen_auf_6°"
+ import_block( block_Vario_ab_6 , lib_doc, doc)
+ import_block( block_Vario_auf_6 , lib_doc, doc)
+ block_Vario_ab_6 = dreh_block( block_Vario_ab_6, doc, math.radians(3))
+ block_Vario_auf_6 = dreh_block( block_Vario_auf_6 , doc, math.radians(9))
+ Vario_Bogen_auf_6_Delta_SP_0 = tuple(float(x)for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_6_Delta_SP_0")).split(","))
+ Vario_Bogen_auf_6_Delta_SP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_6_Delta_SP_1")).split(","))
+ Vario_Bogen_ab_6_Delta_SP_0 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_6_Delta_SP_0")).split(","))
+ Vario_Bogen_ab_6_Delta_SP_1 = tuple(float(x) for x in(config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_6_Delta_SP_1")).split(","))
+ Vario_Bogen_auf_6_Delta_VP_1 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_auf_6_Delta_VP_1")).split(","))
+ Vario_Bogen_ab_6_Delta_VP_0 = tuple(float(x) for x in (config.get("ILS 2.0 Variofoerderer","Vario_Bogen_ab_6_Delta_VP_0")).split(","))
+
+ block.add_blockref(block_Vario_ab_6, (start[0]-x,start[1]-y- Vario_Bogen_ab_6_Delta_SP_0[0],start[2]-hoehe_vario-Vario_Bogen_ab_6_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+ start =(start[0], start[1]- Vario_Bogen_ab_6_Delta_SP_0[0]- Vario_Bogen_ab_6_Delta_SP_1[0],start[2]-Vario_Bogen_ab_6_Delta_SP_0[2]-Vario_Bogen_ab_6_Delta_SP_1[2])
+ block.add_blockref(block_Vario_auf_6, (ende[0]-x,ende[1]-y+ Vario_Bogen_auf_6_Delta_SP_0[0],ende[2]-hoehe_vario +Vario_Bogen_auf_6_Delta_SP_0[2]),dxfattribs={"rotation": 270})
+
+ ende = (ende[0],ende[1]+ Vario_Bogen_auf_6_Delta_SP_0[0]+ Vario_Bogen_auf_6_Delta_SP_1[0],ende[2]+ Vario_Bogen_auf_6_Delta_SP_0[2]+ Vario_Bogen_auf_6_Delta_SP_1[2])
+ line = Line.new(dxfattribs={"start":start,"end":ende })
+ copy = line.copy()
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+ elif winkel == 3:
+ line = Line.new(dxfattribs={"start": start, "end": ende})
+
+ copy= line.copy()
+
+ copy.translate(-x,-y,-hoehe_vario)
+ block.add_entity(copy)
+ matrix = Matrix44.scale(-1,1,1)
+ block_links = doc.blocks.new(block_name_links, base_point=(0,0,0))
+ for entity in block:
+ clone= entity.copy()
+ if entity.dxftype() == "INSERT":
+ if (entity.dxf.name == "400102632_ES-Element_90_links" or entity.dxf.name == "200000146_ES-Element_90_rechts" or
+ entity.dxf.name == "200000241_AS-Element_90_rechts" or entity.dxf.name == "200000217_AS-Element_90_links"
+ ):
+ block_links.add_entity(clone)
+ else:
+ clone.transform(matrix)
+ block_links.add_entity(clone)
+ else:
+ clone.transform(matrix)
+ block_links.add_entity(clone)
+
-
def handle_omniflo(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols, strecken_nachbarn,config):
"""
Für Omniflo Gerade: zeichnet eine Linie (Mitte = Koordinate, Länge und Winkel aus Merkmale).
@@ -1175,20 +1408,31 @@ def handle_omniflo(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols,
def erstellung_gefaelle_block_verbunenden_am_einen(x, y, doc, lib_doc, asoffset, esoffset, upper_hoehe_gefaehlle, lower_hoehe_gefaehlle, hoehe_gefaehlle, drehung0, laenge,blockname, hight = None, block_vario = None, vario_richtung = None, verbungden_höher = None):
+
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
+
if ((blockname not in doc.blocks and 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") ):
if hight != None:
block = doc.blocks.new(name=blockname, base_point=(0,0,0))
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
- if vario_richtung != None:
+ if vario_richtung == "Auf":
start = (x , y + dy ,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset ,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] -hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start, ende
+ elif vario_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy ,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] -hoehe_gefaehlle))
+ return start,ende
+ elif vario_richtung =="Horizontal":
+ # TODO
+ return start, ende
+
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy ,lower_hoehe_gefaehlle)
@@ -1207,11 +1451,21 @@ def erstellung_gefaelle_block_verbunenden_am_einen(x, y, doc, lib_doc, asoffset,
if hight != None:
block = doc.blocks.new(name=blockname, base_point=(0,0,0))
- if vario_richtung != None:
+ if vario_richtung == "Auf":
start = (x , y + dy-esoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy ,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es, (start[0]-x ,start[1]+esoffset-y ,start[2] -hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start, ende
+ elif vario_richtung == "Ab":
+ start = (x , y + dy,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset-y ,ende[2] -hoehe_gefaehlle))
+ return start, ende
+ elif vario_richtung =="Horizontal":
+ # TODO
+ return start, ende
+
+
start = (x , y + dy,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
@@ -1232,12 +1486,20 @@ def erstellung_gefaelle_block_verbunenden_am_einen(x, y, doc, lib_doc, asoffset,
if hight != None:
block = doc.blocks.new(name=blockname, base_point=(0,0,0))
- if vario_richtung != None:
+ if vario_richtung == "Auf":
start = (x , y + dy ,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle))
return start, ende
+ elif vario_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy ,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start, ende
+ elif vario_richtung =="Horizontal":
+ # TODO
+ return start, ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy ,lower_hoehe_gefaehlle)
@@ -1257,11 +1519,19 @@ def erstellung_gefaelle_block_verbunenden_am_einen(x, y, doc, lib_doc, asoffset,
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
- if vario_richtung != None:
+ if vario_richtung == "Auf":
start = (x , y + dy-esoffset ,upper_hoehe_gefaehlle)
ende = (x , y - dy,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es, (start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle))
return start, ende
+ elif vario_richtung == "Ab":
+ start = (x , y + dy ,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start,ende
+ elif vario_richtung =="Horizontal":
+ # TODO
+ return start, ende
start = (x , y + dy ,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
@@ -1288,7 +1558,9 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
lower_hoehe_gefaehlle = middle_hoehe
if richtung2!= "DEFAULT" or am_kreisel != None:
- if (blockname not in doc.blocks and drehung0 == "GUZS" and drehung1 == "GUZS" and hight_position == "higher") or (((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"):
+ if ((blockname not in doc.blocks and drehung0 == "GUZS" 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== "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)
if am_kreisel == None:
@@ -1296,13 +1568,16 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel!= None:
+ if voerder_richtung == "Auf":
start = (x , y+ dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y1 ,z1)
block_vario.add_blockref(block_es, (start[0]-x ,start[1]+esoffset-y ,start[2] -hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start,ende
-
-
+ elif(voerder_richtung == "Ab"):
+ start = (x , y1 ,z1)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset-y ,ende[2] -hoehe_gefaehlle))
+ return start, ende
start = (x , y + dy,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})
@@ -1314,7 +1589,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset-y ,ende[2] -hoehe_gefaehlle))
- elif (blockname not in doc.blocks and drehung0 == "GUZS" and drehung1 == "GUZS") or (am_kreisel != None and drehung0 == "GUZS" and drehung1 == "GUZS"):
+ elif ((blockname not in doc.blocks and drehung0 == "GUZS" and drehung1 == "GUZS") or
+ (am_kreisel != None and drehung0 == "GUZS" and drehung1 == "GUZS")):
if am_kreisel == None:
block = doc.blocks.new(name=blockname, base_point=(0,0,0))
halbe_laenge = laenge / 2
@@ -1322,11 +1598,17 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
import_block(block_as,lib_doc,doc)
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y1 ,z1)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] -hoehe_gefaehlle), dxfattribs={"rotation": 180})
return start,ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y1 ,z1)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] -hoehe_gefaehlle))
+ return start, ende
+
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
@@ -1341,7 +1623,9 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] -hoehe_gefaehlle))
elif ((blockname not in doc.blocks and (drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "higher"))or
- ((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")):
+ (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
+ (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 == "UZS"))):
+
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
if am_kreisel == None:
@@ -1349,11 +1633,16 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y1 ,z1)
block_vario.add_blockref(block_es,(start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle))
return start,ende
+ elif voerder_richtung == "Ab":
+ start = (x , y1 ,z1)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es,(ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle), dxfattribs={"rotation": 180})
+ return start,ende
start = (x , y + dy ,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
@@ -1367,8 +1656,9 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_es,(ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle), dxfattribs={"rotation": 180})
elif (blockname not in doc.blocks and (drehung0 == "UZS" and drehung1 == "GUZS" and hight_position == "lower")or
- ((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"))):
-
+ (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
+ (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 == "GUZS" and drehung1 == "UZS"))):
+
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
if am_kreisel == None:
@@ -1376,14 +1666,19 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y1,z1)
ende = (x , y - dy +asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start,ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y1 ,z1)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle))
+ return start,ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
- ende = (x , y1 - dy ,z1)
+ ende = (x , y - dy ,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})
line.dxf.layer = "6-SP"
@@ -1394,19 +1689,26 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle))
elif ((blockname not in doc.blocks and drehung0 == "UZS" and drehung1 == "UZS" and hight_position == "higher")or
- (((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")):
+ (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
+ (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== "UZS")):
if am_kreisel == None:
block = doc.blocks.new(name=blockname, base_point=(0,0,0))
halbe_laenge = laenge / 2
block_es = "400102632_ES-Element_90_links"
import_block(block_es,lib_doc,doc)
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y1,z1)
block_vario.add_blockref(block_es, (start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle))
return start,ende
+ elif voerder_richtung == "Ab":
+ start = (x , y1 ,z1)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start, ende
+
start = (x , y + dy ,upper_hoehe_gefaehlle)
@@ -1421,7 +1723,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
- elif (((blockname not in doc.blocks and drehung0 == "UZS" and drehung1 == "UZS")or (am_kreisel!= None and drehung0 == "UZS" and drehung1 == "UZS"))):
+ elif (((blockname not in doc.blocks and 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)
@@ -1430,11 +1733,16 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y1,z1)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle))
return start, ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y1 ,z1)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start,ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy ,lower_hoehe_gefaehlle)
@@ -1451,7 +1759,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
elif (blockname not in doc.blocks and ((drehung0 == "UZS" and drehung1 == "GUZS" and hight_position== "higher"))or
- ((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")):
+ (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)
if am_kreisel == None:
@@ -1459,12 +1768,18 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
- start = (x , y + dy - esoffset,z1)
- ende = (x , y1 ,lower_hoehe_gefaehlle)
+ if voerder_richtung == "Auf":
+ start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
+ ende = (x , y1 ,z1)
block_vario.add_blockref(block_es, (start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start, ende
-
+ elif voerder_richtung == "Ab":
+
+ start = (x , y1,z1)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle))
+ return start,ende
+
start = (x , y + dy,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})
@@ -1480,7 +1795,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle))
elif (blockname not in doc.blocks and (drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "lower")or
- ((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" and hight_position == "lower")):
+ (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)
if am_kreisel == None:
@@ -1488,11 +1804,16 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if am_kreisel != None:
+ if voerder_richtung == "Auf":
start = (x , y1,z1)
ende = (x , y - dy + asoffset ,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_as,(ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle))
return start, ende
+ elif voerder_richtung == "Ab":
+ start = (x , y +dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y1 ,z1)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start,ende
start = (x , y +dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy ,lower_hoehe_gefaehlle)
@@ -1518,13 +1839,18 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if hight_position == None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es,(start[0]-x ,start[1]+esoffset -y,start[2] -hoehe_gefaehlle), dxfattribs={"rotation": 180})
block_vario.add_blockref(block_as, (ende[0]-x ,ende[1]-asoffset-y ,ende[2] -hoehe_gefaehlle), dxfattribs={"rotation": 180})
return start,ende
-
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] -hoehe_gefaehlle))
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset-y ,ende[2] -hoehe_gefaehlle))
+ return start, ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
@@ -1543,7 +1869,8 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
block.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset-y ,ende[2] -hoehe_gefaehlle))
elif (blockname not in doc.blocks and((drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "higher")or (drehung0 == "UZS" and drehung1 == "GUZS" and hight_position == "lower")) or
- voerder_richtung != None and drehung0 == "UZS"and drehung1 == "GUZS"):
+ (voerder_richtung == "Auf" and drehung0 == "UZS"and drehung1 == "GUZS") or
+ (voerder_richtung == "Ab" and drehung0 == "GUZS" and drehung1 == "UZS")) :
block_as = "200000241_AS-Element_90_rechts"
import_block(block_as,lib_doc,doc)
block_es = "400102632_ES-Element_90_links"
@@ -1553,12 +1880,18 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if hight_position == None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es,(start[0]-x ,start[1]+ esoffset -y,start[2] - hoehe_gefaehlle))
block_vario.add_blockref(block_as, (ende[0]-x ,ende[1]- asoffset-y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
return start, ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle))
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]- esoffset-y,ende[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ return start, ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})
@@ -1583,12 +1916,19 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if hight_position == None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es,(start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle))
block_vario.add_blockref(block_as, (ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle))
return start, ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle) ,dxfattribs={"rotation": 180})
+ return start, ende
+
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})
@@ -1606,7 +1946,9 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
elif ((blockname not in doc.blocks and ((drehung0 == "UZS" and drehung1 == "GUZS" and hight_position== "higher")or (drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "lower")))or
- voerder_richtung != None and drehung0 == "GUZS" and drehung1 == "UZS"):
+ (voerder_richtung == "Auf" and drehung0 == "GUZS" and drehung1 == "UZS") or
+ (voerder_richtung == "Ab" and drehung0 == "UZS"and drehung1 == "GUZS")) :
+
block_as = "200000217_AS-Element_90_links"
import_block(block_as,lib_doc,doc)
@@ -1617,13 +1959,20 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, asoffset, esoffset, upper_hoeh
halbe_laenge = laenge / 2
dy = halbe_laenge * math.cos(0)
- if hight_position == None:
+ if voerder_richtung == "Auf":
start = (x , y + dy - esoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + asoffset,lower_hoehe_gefaehlle)
block_vario.add_blockref(block_es,(start[0]-x ,start[1]+esoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
block_vario.add_blockref(block_as, (ende[0]-x ,ende[1]-asoffset -y,ende[2] - hoehe_gefaehlle))
return start,ende
+ elif voerder_richtung == "Ab":
+ start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
+ ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
+
+ block_vario.add_blockref(block_as,(start[0]-x ,start[1]+asoffset -y,start[2] - hoehe_gefaehlle),dxfattribs={"rotation": 180})
+ block_vario.add_blockref(block_es, (ende[0]-x ,ende[1]-esoffset -y,ende[2] - hoehe_gefaehlle))
+ return start,ende
start = (x , y + dy - asoffset,upper_hoehe_gefaehlle)
ende = (x , y - dy + esoffset,lower_hoehe_gefaehlle)
line = Line.new(dxfattribs={"start": start, "end": ende})