6ab698286f
Neue Spalte "Nachbarn" (kommaseparierte TeileId-Liste) in export_csv.py: zwei Elemente gelten als benachbart, wenn ihre Bounding-Boxes (x/y-Ebene) sich ueberschneiden. Toleranz konfigurierbar in mm ueber cfg/export.cfg [Nachbarschaft] -> toleranz_mm, siehe lib/export_neighbors.py. Nur EXPORTCSV betroffen, EXPORTSIVAS bleibt unveraendert. shapely als neue Abhaengigkeit in requirements.txt ergaenzt. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
67 lines
2.8 KiB
INI
67 lines
2.8 KiB
INI
# ============================================================
|
|
# export.cfg - Konfiguration fuer Lisp/export.lsp UND lib/export_csv.py,
|
|
# lib/export_sivas.py (gemeinsame Blockname-Muster, siehe
|
|
# lib/export_blockpatterns.py)
|
|
#
|
|
# Format: INI-Style
|
|
# [ABSCHNITT]
|
|
# Key = Wert (einzelner Wert)
|
|
# Key = Wert1, Wert2, Wert3 (Musterliste fuer wcmatch/fnmatch, kommagetrennt)
|
|
#
|
|
# Zeilen mit # sind Kommentare. Leerzeilen werden ignoriert.
|
|
#
|
|
# pattern_kreisel/pattern_strecke sind fuer Lisp's Block-SAMMLUNG grob
|
|
# gehalten (nur "gehoert das ueberhaupt zum Export"). Die uebrigen
|
|
# pattern_eckrad/pattern_variofoerderer/pattern_gefaellestrecke/
|
|
# pattern_strecke_module-Keys sind Teilmengen davon fuer die feinere
|
|
# TeileArt-KLASSIFIKATION in Python (eigene Zeile je Teileart) -
|
|
# Aenderungen an Blocknamen bitte in beiden Stellen nachziehen.
|
|
# ============================================================
|
|
|
|
[blockpattern]
|
|
pattern_kreisel= KR_*, KREISEL_*, ECKRAD_*
|
|
pattern_eckrad= ECKRAD_*
|
|
pattern_gerade= AP110*, AP_110*
|
|
pattern_strecke= Vario*, Staustrecke*, AUS_Element*, EIN_Element*, VF_*, GF_*
|
|
pattern_variofoerderer= VF_*
|
|
pattern_gefaellestrecke= GF_*
|
|
pattern_strecke_module= Vario*, Staustrecke*, AUS_Element*, EIN_Element*
|
|
pattern_ks_subblocks= KS_EIN, KS_AUS, K1, K2, K3, K4
|
|
|
|
[Planquadrate]
|
|
section=Planquadrate_AN
|
|
|
|
# hier kann man im csv Export aus den Koordinaten der Bauteile die Planquadrate berechnen lassen, in denen sie liegen
|
|
# Zählung ist numerisch oder Alphabetisch möglich, Schrittweite in m (z.B. 2m pro Spalte, 4m pro Zeile)
|
|
# liegt man im ersten Quadrat, ist diese A/1, oder 1/1 oder 1/A, je nach Formatierung. Die Zählung beginnt immer bei 1
|
|
[Planquadrate_NA]
|
|
# z.B. 1/A
|
|
x_step=2
|
|
x_description=numerisch # zahlen, von links nach rechts, 2m pro Spalte
|
|
y_step=4
|
|
y_description=alphabetisch # Buchstaben von unten nach oben, 4m pro Zeile
|
|
format= {x}/{y} # Formatierung der Planquadrate, {y} und {x} werden durch die berechneten gerundeten Werte der Objektkoordinaten ersetzt
|
|
|
|
[Planquadrate_AN]
|
|
# z.B. A/1
|
|
x_step=2
|
|
x_description=alphabetisch # Buchstaben, von links nach rechts, 2m pro Spalte
|
|
y_step=2
|
|
y_description=alphabetisch # Zahlen von unten nach oben, 2m pro Zeile
|
|
format= {x}/{y}
|
|
|
|
[Planquadrate_NN]
|
|
# z.B. 2/5
|
|
x_step=2
|
|
x_description=numerisch # Zahlen, von links nach rechts, 2m pro Spalte
|
|
y_step=4
|
|
y_description=numerisch # Zahlen von unten nach oben, 4m pro Zeile
|
|
format= {x}/{y}
|
|
|
|
[Nachbarschaft]
|
|
# Toleranz fuer die Nachbarschaftserkennung beim CSV-Export (Spalte "Nachbarn").
|
|
# Die Bounding-Box jedes Elements wird um die Haelfte dieses Werts nach allen
|
|
# Seiten erweitert, bevor per STRtree (shapely) auf Ueberschneidung mit anderen
|
|
# Elementen geprueft wird - zwei Elemente mit einem Abstand <= toleranz_mm
|
|
# (z.B. zwei Kreisel) gelten dann ebenfalls als benachbart. Wert in mm.
|
|
toleranz_mm=200 |