[ADD] Lager: Darstellung Gitterrost/Gitterkorb unter Regalreihen, Farben aus lager.json, LG_DARSTELLUNG

[FIX] Lager: manuelle Gaenge/Randgaenge nicht mehr ueberschreiben, Bereich-Edit uebertraegt statt neu zu berechnen
This commit is contained in:
Simon Hensch committed 2026-11-04 09:14:13 +01:00
1 parent a887ae8152
commit 4a5a3da88a
8 files changed
+199 -24

No files matched your search

+22 -8
View File
@@ -145,8 +145,9 @@ Stattdessen entsteht jedes Objekt ueber die normalen Einfuegefunktionen neu:
- Reihen und Gaenge 1:1 aus der Quelle (`lg-linie-einfuegen`). Es wird nicht neu
gefuellt, damit Handaenderungen (`auto_geaendert`, manuelle Reihen/Gaenge) erhalten
bleiben.
- Belaege, die dem Geschossbelag der Quelle entsprachen, folgen dem neuen Belag,
inklusive Schraffur. Bewusst abweichende bleiben.
- Ist im Dialog ein Belag gewaehlt, bekommen ALLE Gaenge und Bereiche des neuen
Geschosses ihn, inklusive Schraffur - auch von Hand gesetzte Rand- und
Sondergaenge (`lg-kopie-belag`).
### Auto-Fuellung (`lg-fuellung-berechnen`)
@@ -162,12 +163,25 @@ liegen (konkave Konturen werden korrekt beschnitten). Quergaenge: Luecken der
Breite `QUERGANG_BREITE_mm` nach je `QUERGANG_ABSTAND_mm`, ueber alle Reihen
ausgerichtet; keine Luecke am Reihenende, wenn dahinter kein Mindeststueck mehr
passt. Hauptgaenge laufen durch. Der Rest quer zu den Reihen steht in
`RESTBREITE_mm`. Edit des Bereichs = Neuaufbau aller Kinder (Sektions-Neuaufbau,
kein Feld-Splice) - aber nur der automatisch erzeugten (`QUELLE=auto`). Von Hand
eingefuegte (`manuell`) und von Hand geaenderte (`auto_geaendert`) Reihen und Gaenge
bleiben stehen und werden ausgespart, ebenso unverknuepfte manuelle Objekte, deren
Mitte in der Kontur liegt; die Anzahl wird gemeldet. Von Hand geloeschte
automatische Objekte entstehen bei dieser ausdruecklichen Neuberechnung neu.
`RESTBREITE_mm`.
**Bereich bearbeiten: aktualisieren statt ueberschreiben.** Was eingezeichnet ist,
bleibt stehen. Geaenderte Werte ohne Geometrie werden auf ALLE vorhandenen Kinder
uebertragen (`lg-bereich-attribute-uebertragen`): `BELAG` -> jeder Gang wird mit dem
neuen Belag an derselben Stelle neu aufgebaut, `HAENGEEBENEN` -> Attribut jeder
Reihe. Nur wenn sich ein Geometrie-Wert aendert (`lg-bereich-geometrie-geaendert-p`:
Gangbreite, Regaltiefe, Reihen je Gang, Quergaenge, Richtung, Randgang-Breiten),
fragt der Befehl "Bereich neu berechnen?" (Vorgabe Ja; ohne Aenderung Vorgabe
Nein - so laesst sich ein Bereich auch bewusst neu berechnen).
Die Neuberechnung (`lg-bereich-fuellen`) ersetzt nur die automatisch erzeugten
Kinder (`QUELLE=auto`). Sperre sind ALLE von Hand eingefuegten (`manuell`) und
geaenderten (`auto_geaendert`) Reihen und Gaenge des Geschosses
(`lg-von-hand-auf-geschoss`) - auch solche eines anderen Bereichs oder nur
teilweise in der Kontur. Sie werden aus Reihen, Haupt-, Quer- UND Randgaengen
ausgeschnitten (`lg-randgang-stuecke`): ein manueller Gang ersetzt den Randgang
dort, wo er liegt, statt von ihm ueberlagert zu werden. Von Hand geloeschte
automatische Objekte entstehen bei der Neuberechnung neu.
**Randgaenge** (`RANDGANG_N/O/S/W_mm`, Nord = +Y Welt): jede Konturkante bekommt
den Randgang ihrer Himmelsrichtung (Aussennormale, auf N/O/S/W eingerastet,