9c8f84799c
Die Omniflo-Nachbarschaftserkennung (export_neighbors.py, nur EXPORTCSV) wird zweistufig: - Broad-Phase ueber shapely-STRtree auf den Bounding-Boxen (Fallback: das bisherige Raster, falls shapely fehlt). - Narrow-Phase (KOS-Verfeinerung): zwei moegliche Nachbarn gelten nur dann als benachbart, wenn ein Anschluss-Koordinatensystem K1-K4 des einen naeher als omniflo_ks_toleranz_mm (neu, Default 10mm) an einem K-Punkt des anderen liegt. Das verwirft bloss ueberlappende BBoxen ohne echten Anschluss. Elemente ohne K1-K4 fallen auf reine BBox-Ueberschneidung zurueck. Geraden fuehren keine echten K-Bloecke in der Zeichnung; ihre K1 (Anfang) / K2 (Ende) werden beim Export aus Einfuegepunkt + Laenge + Rotation synthetisiert (csv:gerade-k-kos-strings in export.lsp) und stehen damit in den CSV-Spalten K1/K2 - wie echte KOS - und nehmen an der Kollisionspruefung teil. Verifiziert an results/test-omnicollision: gerichtete Nachbarschaften 20 -> 14. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
11 lines
318 B
Plaintext
11 lines
318 B
Plaintext
# Python-Abhaengigkeiten
|
|
# Installieren mit: pip install -r requirements.txt
|
|
|
|
ezdxf==1.4.1
|
|
pytest==9.0.2
|
|
# shapely: STRtree-Broad-Phase der Omniflo-Nachbarschaftserkennung
|
|
# (lib/export_neighbors.py). Fehlt shapely, faellt die Broad-Phase automatisch
|
|
# auf das Raster (omniflo_zellgroesse_mm) zurueck.
|
|
shapely==2.1.2
|
|
|