diff --git a/lib/Elemente/Eckrad.py b/lib/Elemente/Eckrad.py index ecb84a8..be6ec0b 100644 --- a/lib/Elemente/Eckrad.py +++ b/lib/Elemente/Eckrad.py @@ -1,6 +1,7 @@ from pydantic import BaseModel, Field, field_validator from typing import Optional - +import block_methoden +RADIUS = 400 class Eckrad(BaseModel): teileid: str drehung: Optional [float] = Field(default=0.0,description="Rotation des Elements") @@ -27,4 +28,21 @@ class Eckrad(BaseModel): y = y, hoehe = hoehe, drehrichtung = drehrichtung - ) \ No newline at end of file + ) + def erstellung_eckrad_richtung(merkmale, doc, lib_doc): + block_methoden.import_block("AN8",lib_doc,doc) + block_methoden.import_block("Richtungspfeil",lib_doc,doc) + eckrad_rechts = "eckrad_UZS" + eckrad_links = "eckrad_GUZS" + hight = float(merkmale.get("Höhe in m")) * 1000 + # Erstellung der Richtungung Blöcke der Eckrads + if eckrad_rechts not in doc.blocks: + block_rechts = doc.blocks.new(name= eckrad_rechts,base_point=(0,0,0)) + block_links = doc.blocks.new(name= eckrad_links,base_point=(0,0,0)) + block_rechts.add_blockref("AN8",(0,0,0)) + block_links.add_blockref("AN8",(0,0,0)) + block_rechts.add_blockref("Richtungspfeil",(0+200,0+ RADIUS,0)) + block_rechts.add_blockref("Richtungspfeil",(0-200,0- RADIUS,0),dxfattribs={"rotation": 180}) + block_links.add_blockref("Richtungspfeil",(0+200,0- RADIUS,0)) + block_links.add_blockref("Richtungspfeil",(0-200,0+ RADIUS,0),dxfattribs={"rotation": 180}) + return eckrad_rechts,eckrad_links,hight \ No newline at end of file diff --git a/lib/Elemente/VarioFoerderer.py b/lib/Elemente/VarioFoerderer.py index d37dcd2..ec6a539 100644 --- a/lib/Elemente/VarioFoerderer.py +++ b/lib/Elemente/VarioFoerderer.py @@ -605,7 +605,6 @@ class VarioFoerderer(BaseModel): elif voerder_richtung == "Ab": # Setzng die hälfte des Gefälles auf beide seiten falls dieser nicht mit einem anderen Förder verbunden ist was durch die abwesenheit eines motors/umlenkung gezeigt wird - if gefaelle > 0: if motor_vorhanden == True and umlenk_vorhanden == True: halbesgefaelle = gefaelle/2 diff --git a/lib/as_es_methoden.py b/lib/as_es_methoden.py index d555999..57dcb4d 100644 --- a/lib/as_es_methoden.py +++ b/lib/as_es_methoden.py @@ -162,7 +162,6 @@ def gefaellegerade_erstellung(x, y, doc, lib_doc, upper_hoehe_gefaehlle, lower_h layer, color = block_methoden.get_insert_color_layer(lib_doc,block_es) - elif (((drehung0 == "UZS" and drehung1 == "UZS")or (am_kreisel!= None and drehung0 == "UZS" and drehung1 == "UZS")) or (drehung0 == "GUZS" and drehung1 == "UZS" and hight_position == "lower")or diff --git a/lib/plant2dxf.py b/lib/plant2dxf.py index dddaf93..7e2cd77 100644 --- a/lib/plant2dxf.py +++ b/lib/plant2dxf.py @@ -68,22 +68,7 @@ def handle_ils_2_0_kreisel(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, def handle_ils_2_0_eckrad(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols, strecken_nachbarn,config,config_allgemein): """Erstellt ein Eckrad in der neuen Dxf""" - block_methoden.import_block("AN8",lib_doc,doc) - block_methoden.import_block("Richtungspfeil",lib_doc,doc) - eckrad_rechts = "eckrad_UZS" - eckrad_links = "eckrad_GUZS" - hight = float(merkmale.get("Höhe in m")) * 1000 - # Erstellung der Richtungung Blöcke der Eckrads - if eckrad_rechts not in doc.blocks: - block_rechts = doc.blocks.new(name= eckrad_rechts,base_point=(0,0,0)) - block_links = doc.blocks.new(name= eckrad_links,base_point=(0,0,0)) - block_rechts.add_blockref("AN8",(0,0,0)) - block_links.add_blockref("AN8",(0,0,0)) - block_rechts.add_blockref("Richtungspfeil",(0+200,0+ RADIUS,0)) - block_rechts.add_blockref("Richtungspfeil",(0-200,0- RADIUS,0),dxfattribs={"rotation": 180}) - block_links.add_blockref("Richtungspfeil",(0+200,0- RADIUS,0)) - block_links.add_blockref("Richtungspfeil",(0-200,0+ RADIUS,0),dxfattribs={"rotation": 180}) - + eckrad_rechts, eckrad_links, hight = Eckrad.Eckrad.erstellung_eckrad_richtung(merkmale, doc, lib_doc) if merkmale.get("Drehrichtung") == "UZS": msp.add_blockref(eckrad_rechts,(x,y,hight)) elif merkmale.get("Drehrichtung") == "GUZS": @@ -91,6 +76,7 @@ def handle_ils_2_0_eckrad(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, s else: msp.add_blockref("AN8",(x,y,hight)) + def handle_ils_2_0_gefaellestrecke(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols, strecken_nachbarn,config,config_allgemein): """Erstellt eine Gefällestrecke in der neuen Dxf""" #Vorbereitung der attributen