ANpassung der Ausgabe todraw.json, sodass Fehler in Excel -Ausgabe besser ausgegeben werden können. 2 neue Worksheets in Excel Ausgabe angefügt(Auflistung von Fehlgeschlagener Anbindung + Auflistung von Routingfelern mit Grund

This commit is contained in:
2025-06-04 08:54:18 +02:00
parent 86d209b428
commit 4b1002ff7e
3 changed files with 70 additions and 15 deletions
+13 -4
View File
@@ -483,13 +483,13 @@ class Anlage():
Eingabe: Dict des Equipments ({'Name': Point}), Dict der Aufpunkte von Sensoren o. Dists (zu Beginn leer)
Rückgabe: Liste der nicht mit Racks verbundenen Geräte (z.B. Entfernung zu groß)
'''
errors = []
errors = list()
for name, pos in equipment.items():
try:
onpoint, rackname = self.find_nearest_rack_from_point_STR_bbox(self._tol_connect, pos)
onpoints[name] = (onpoint, rackname)
except LookupError:
errors.append((name, (pos.x, pos.y))) # Name des fehlgeschlagenenen und Position als Koodinaten zurückgeben
errors.append({"name": name, "coords": {"x":pos.x, "y":pos.y}}) # Name des fehlgeschlagenenen und Position als Koodinaten zurückgeben
continue
self.add_point_to_rack(onpoint, rackname)
@@ -586,12 +586,15 @@ class Anlage():
def create_cable_paths(self, G) -> dict:
pfade = dict()
pfade["kabel"] = list()
pfade["errors_routing"] = list() # Fehler Liste für fehlgeschlagene Kabelverbindungen
pfade["errors_routing"] = dict()
routing_errors = dict() # Fehler Liste für fehlgeschlagene Kabelverbindungen
for sname, dname in self._sensor2dist.items():
try:
pfad_nodes, pfad_length = self.create_cable_path(G, sname, dname)
except:
pfade["errors_routing"].append((sname, dname))
if dname not in routing_errors:
routing_errors[dname] = list()
routing_errors[dname].append(sname)
continue
pfad_coords = self._nodeids.get_points(pfad_nodes)
@@ -609,6 +612,12 @@ class Anlage():
pfade["kabel"].append(ld)
lOfDistErrors = list() # sammeln wo keine Verbindung zwischen Dist und Senor möglich war
for dname,lofSensornamen in routing_errors.items():
lOfDistErrors.append({"unterverteiler":dname, "sensoren":lofSensornamen})
pfade["errors_routing"] = lOfDistErrors
return pfade
def show_node_ids(self):