[ADD] Modul zum Erstellen von Hängewarenlagerbereichen und Stockwerken mit Attributsdefinition für den Export in ein Anforderungsdokument für Ausschreibungen

This commit is contained in:
2026-10-30 11:11:20 +01:00
parent 4fdeaf831f
commit 473aeec5bf
26 changed files with 5921 additions and 175 deletions
+99 -1
View File
@@ -1121,6 +1121,104 @@
"kreisel-bp-kollision": "\n COLLISION %1: %2 <-> %3 [%4] at X=%5 Y=%6 Z=%7",
"kreisel-bp-marker": "\n%1 markers drawn (layer %2).",
"exp-kreisel-weichen": "\n[%1] Kreisel switch points: %2 contact(s), %3 collision(s) -> %4",
"exp-kreisel-kollision": "\n[%1] WARNING: %2 Kreisel collision(s) - command KREISEL_WEICHEN shows them."
"exp-kreisel-kollision": "\n[%1] WARNING: %2 Kreisel collision(s) - command KREISEL_WEICHEN shows them.",
"lg-daten-fehlt": "\n[Storage] Data file not found: %1 - built-in defaults apply.",
"lg-dialog-fehlt": "\n[Storage] Dialog not loadable (%1) - input via command line.",
"lg-einfuegen-fehler": "\n[Storage] Block %1 could not be inserted: %2",
"lg-feld-ungueltig": "Invalid value: %1",
"lg-wert-ungueltig": "\nInvalid value - please enter again.",
"lg-wahl-ungueltig": "\nPlease enter one of the listed values.",
"lg-feld-nr": "\nLevel number",
"lg-feld-bezeichnung": "\nName",
"lg-feld-hoehe": "\nFloor elevation (top, mm)",
"lg-feld-konstr": "\nFloor construction depth (mm)",
"lg-feld-lichte": "\nClear height (mm, empty = calculated)",
"lg-feld-belag": "\nFloor type",
"lg-feld-personen": "\nPersons on the level",
"lg-feld-brand": "\nFire risk",
"lg-feld-gang": "\nAisle width (mm)",
"lg-feld-tiefe": "\nRack depth (mm)",
"lg-feld-reihen": "\nRows per aisle",
"lg-feld-schienen": "\nRails per aisle",
"lg-feld-q_abstand": "\nCross aisle spacing (mm, 0 = none)",
"lg-feld-q_breite": "\nCross aisle width (mm)",
"lg-feld-richtung": "\nRow direction (degrees)",
"lg-feld-ebenen": "\nHanging levels rail height/goods length;... (mm)",
"lg-feld-laenge": "\nLength (mm)",
"lg-feld-rand_n": "\nPerimeter aisle north (mm, 0 = none)",
"lg-feld-rand_o": "\nPerimeter aisle east (mm, 0 = none)",
"lg-feld-rand_s": "\nPerimeter aisle south (mm, 0 = none)",
"lg-feld-rand_w": "\nPerimeter aisle west (mm, 0 = none)",
"lg-feld-breite": "\nAisle width (mm)",
"lg-feld-art": "\nAisle type",
"lg-titel-gang": "Storage: insert aisles",
"lg-prompt-gang-start": "\nStart point of the aisle centre line or [%1] <Enter = finish>: ",
"lg-key-rechteck": "Rectangle",
"lg-rechteck-hinweis": "\nDraw the aisle area with RECTANG (all options such as dimensions/rotation available), Enter = finish.",
"lg-rechteck-kein-rechteck": "\n[Storage] Not a plain rectangle (4 corners, no chamfer/fillet) - no aisle inserted.",
"lg-rechteck-zu-klein": "\n[Storage] Rectangle too small (side below 1 mm) - no aisle inserted.",
"lg-gaenge-eingefuegt": "\n%1 aisle(s) inserted.",
"lg-schraffur-unbekannt": "\n[Storage] Floor type %1 has no entry in belag_schraffur (lager.json) - aisles without hatch.",
"lg-schraffur-fehler": "\n[Storage] Hatch %1 for %2 not possible (%3) - aisle without hatch.",
"lg-blockdef-ergaenzt": "\n[Storage] Block definition %1 extended by %2 (existing drawing).",
"lg-titel-kopie": "Storage: copy level",
"lg-feld-quelle": "\nSource level (no.)",
"lg-feld-anzahl": "\nNumber of new levels",
"lg-feld-abstand": "\nLevel height per copy (mm)",
"lg-feld-versatz_x": "\nOffset X per copy (mm, 0 = congruent)",
"lg-feld-versatz_y": "\nOffset Y per copy (mm, 0 = congruent)",
"lg-kopie-abstand-ungueltig": "\n[Storage] Level height per copy must be greater than 0 - nothing copied.",
"lg-kopie-hoehe-belegt": "\n[Storage] A level already exists at floor height %1 mm - copy is created anyway.",
"lg-kopie-racks-mehrdeutig": "\n[Storage] %1 goh_rack without a unique level (stacked contours, no layer _G<no>) - not copied.",
"lg-kopie-racks-umgehaengt": "\n%1 goh_rack moved to the rack layer of level %2 (assignment for congruent levels).",
"lg-kopie-fertig": "\nLevel %1 copied -> level %2 at %3 mm: %4 rack row(s), %5 aisle/cross aisle area(s), %6 goh_rack.",
"lg-kopie-hinweis-aktiv": "\nLast copy is the active level. Switch the display with LG_GESCHOSS_AKTIV.",
"lg-regale-keine": "\n[Storage] No %1 blocks found in model space.",
"lg-regale-kopf": "\nRacks (goh_rack) per level: count, length, length x levels",
"lg-regale-zeile": "\n %1: %2 rack(s), %3 m, %4 m",
"lg-regale-geschoss": "Level %1",
"lg-regale-ohne-geschoss": "no level",
"lg-regale-summe": "Total",
"lg-regale-ohne-laenge": "\n[Storage] %1 rack(s) without readable length - counted as 0.",
"lg-titel-geschoss": "Storage: create level",
"lg-titel-bereich": "Storage: create storage area",
"lg-titel-reihe": "Storage: insert rack rows",
"lg-titel-edit": "Storage: edit",
"lg-titel-hand-yaml": "Manual YAML for comparison (empty = none)",
"lg-prompt-kontur-geschoss": "\nSelect floor contour of the level (closed polyline) <Enter = draw>: ",
"lg-prompt-kontur-bereich": "\nSelect contour of the storage area (closed polyline) <Enter = draw>: ",
"lg-kontur-zeichnen": "\nDraw the contour as polyline (Enter finishes, it will be closed).",
"lg-keine-kontur": "\nThis is not a polyline with at least 3 points.",
"lg-kontur-boegen": "\nNote: arc segments of the contour are treated as straight lines.",
"lg-kein-geschoss": "\n[Storage] No level defined yet - run LG_GESCHOSS first.",
"lg-prompt-geschoss-nr": "\nLevel not unique - level number",
"lg-prompt-geschoss-aktiv": "\nActive level (0 = show all)",
"lg-geschoss-unbekannt": "\n[Storage] Level %1 does not exist.",
"lg-geschoss-existiert": "\n[Storage] Level %1 already exists - choose another number.",
"lg-geschoss-angelegt": "\nLevel %1 created (floor %2 mm) and set active.",
"lg-geschoss-aktiv": "\nActive level: %1 - layers of the other levels are frozen.",
"lg-geschoss-alle": "\nAll levels visible, no active level.",
"lg-geaendert": "\nChanged.",
"lg-bereich-ohne-kontur": "\n[Storage] The contour of the area is missing - cannot fill.",
"lg-bereich-beibehalten": "\nArea %2: %1 manually inserted or changed row(s)/aisle(s) are kept and left out.",
"lg-bereich-gefuellt": "\nArea %1: %2 rack row(s), %3 aisle/cross aisle area(s), remaining width %4 mm.",
"lg-prompt-reihe-start": "\nStart point of the rack row <Enter = finish>: ",
"lg-prompt-reihe-ende": "\nEnd point or length (mm): ",
"lg-prompt-reihe-richtung": "\nDirection: ",
"lg-reihen-eingefuegt": "\n%1 rack row(s) inserted.",
"lg-exp-keine-geschosse": "No levels (LG_GESCHOSS) in the drawing - levels stay empty.",
"lg-exp-geschoss-ohne-kontur": "Level %1 has no floor contour any more.",
"lg-exp-rack-ohne-geschoss": "goh_rack at X=%1 Y=%2 cannot be assigned to a level.",
"lg-exp-rack-ohne-laenge": "goh_rack %1 without readable length.",
"lg-exp-datei-fehler": "\n[Storage] File not writable: %1",
"lg-exp-raw": "\n[Storage] Raw data: %1",
"lg-exp-yaml": "\n[Storage] Overlay YAML: %1\n[Storage] Report: %2",
"lg-exp-ohne-python": "\n[Storage] Cannot call Python (export.lsp/DXFM_LIB missing) - create the YAML manually: python lib/lager_yaml_export.py <raw.json> <out.yaml>",
"lg-exp-python-fehler": "\n[Storage] lager_yaml_export.py ended with code %1 - see %2",
"lg-hand-yaml": "\nManual YAML for comparison: %1",
"lg-regel-profil-fehlt": "\n[Storage] Rule profile %1 not found (%2).",
"lg-regel-profil-ungepflegt": "\n[Storage] WARNING: rule profile %1 is not maintained - inherited values apply.",
"lg-regel-unbekannt": "\n[Storage] Rule %1 not in profile.",
"lg-regel-liste-kopf": "\nRule profile %1: %2 rules (context: increased fire risk without extinguishing system)"
}
}