Layer für linien erstellt und Linien Kordinaten system koriegiert
This commit is contained in:
+9
-5
@@ -360,19 +360,23 @@ def handle_omniflo(msp, teileid, merkmale, x, y, doc, lib_doc, verbose, symbols)
|
||||
except Exception:
|
||||
laenge = 0
|
||||
try:
|
||||
winkel = float(merkmale.get("Drehung", 0))
|
||||
winkel = float(merkmale.get("Drehung"))
|
||||
except Exception:
|
||||
winkel = 0.0
|
||||
|
||||
winkel_rad = math.radians(winkel)
|
||||
halbe_laenge = laenge / 2
|
||||
|
||||
dx = halbe_laenge * math.sin(winkel_rad)
|
||||
# Man muss bei sin -1 machen wegen des links koordinaten system
|
||||
dx = halbe_laenge * math.sin(winkel_rad * -1)
|
||||
dy = halbe_laenge * math.cos(winkel_rad)
|
||||
start = (x + dx, y + dy, float(merkmale.get("Höhe oben")) )
|
||||
ende = (x - dx, y - dy, float(merkmale.get("Höhe unten")))
|
||||
msp.add_line(start, ende)
|
||||
|
||||
if "A-2" not in doc.layers:
|
||||
doc.layers.add(name="A-2", color=2)
|
||||
linie=msp.add_line(start, ende)
|
||||
linie.dxf.layer = "A-2"
|
||||
|
||||
|
||||
if verbose:
|
||||
print(f"[INFO] Omniflo Gerade → {teileid} Linie von ({start[0]:.1f}, {start[1]:.1f}) nach ({ende[0]:.1f}, {ende[1]:.1f})")
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user