From 84449d1092f1aeb26c7a2f5f4ef4cf0a9fa5e47c Mon Sep 17 00:00:00 2001 From: mistangl Date: Mon, 26 May 2025 19:31:30 +0200 Subject: [PATCH 1/2] =?UTF-8?q?Toleranzen=20f=C3=BCr=20Sensor=20und=20Kabe?= =?UTF-8?q?lpritschen=20aus=20der=20Config=20holen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cfg/routing.cfg | 26 +++++++++----------------- lib/routing.py | 5 +++++ 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/cfg/routing.cfg b/cfg/routing.cfg index b9e4820..65029dd 100644 --- a/cfg/routing.cfg +++ b/cfg/routing.cfg @@ -1,18 +1,10 @@ -[Eingänge] -0-0_ILS_EINGANG +# Vorgaben für die Toleranzen +# bei den Kabelpritschen +[Racks] +SnapTolerances=200. +SnapStep=10. -[Ausgänge] -AUSGANG -MOTOR - -[Pritsche] -PRITSCHE_100-60-SCHRAFF -PRITSCHE_200-60 - -[Unterverteiler] -Breite = 320 -Hoehe = 350 - -[Sensor_Marker] -Breite = 80 -Hoehe = 90 +# bei den Sensoren +[Sensoren] +ConnectionTolerances=1000. +ConnectSnap=50. diff --git a/lib/routing.py b/lib/routing.py index 59a4836..6f902e0 100644 --- a/lib/routing.py +++ b/lib/routing.py @@ -140,6 +140,11 @@ if __name__ == "__main__": rawdata = load_json(sensors_path) (racks, sensors, subdists, mapping) = prepare_data(rawdata) + config = configparser.ConfigParser(allow_no_value=True, delimiters=("=")) + config.optionxform = lambda option: option # preserve case for letters + config.read(os.path.join(config_dir, "routing.cfg")) + + # virtuelle Anlage erstellen cable_paths = create_plant(racks, sensors, subdists, mapping) if args.console: From fd0ad34288c4ae02ee7af1fb03ce7c70c00fb62a Mon Sep 17 00:00:00 2001 From: mistangl Date: Mon, 26 May 2025 19:36:01 +0200 Subject: [PATCH 2/2] Configparser vergessen zu importieren --- lib/routing.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/routing.py b/lib/routing.py index 6f902e0..02eac8a 100644 --- a/lib/routing.py +++ b/lib/routing.py @@ -8,6 +8,7 @@ import networkx as nx from shapely.geometry import LineString, Point from shapely.ops import nearest_points from plant import Anlage +import configparser # Funktionen def load_json(jsonfilename): @@ -51,8 +52,13 @@ def create_plant(racks:dict, sensors:dict, distributors:dict, mapping:dict) -> d # "FC0062" # ] # } - - an = Anlage() + + tol_snap = config.getfloat("Racks", "SnapTolerances") + snap_step = config.getfloat("Racks", "SnapStep") + tol_connect = config.getfloat("Sensoren", "ConnectionTolerances") + tol_connect_step = config.getfloat("Sensoren", "ConnectSnap") + + an = Anlage(tol_snap=tol_snap, snap_step=snap_step, tol_connect=tol_connect, tol_connect_step=tol_connect_step) # Füge racks aus Daten hinzu an.set_racks(racks) # Verbinde Racks miteinander (ggf. verlängere ungenaue Racks)