tro_annotate --read-tros: TRO-Handkorrekturen aus BricsCAD, Staubereiche vor dem TRO
- Marker tragen KEY (ID der ID-Datei) und SLOTS (Bauteil je Slot), die Zeichnung die Bauteiltabelle SPS_SKEL_PARTS (XRECORD) fuer "Im Plan waehlen" im Dialog TRO_EDIT (dxfmakros) - --read-tros schreibt geaenderte, neue und geloeschte Marker als Abschnitte edit/edit_add nach cfg/tro_overrides.ini; tro_flow.apply_edits wendet nur diese Arten an (Bauteile mit Lage, exportfest) - --emit-lisp schreibt dazu *TRO-SLOTS* und *TRO-SLOT-KINDS* - model: Lagerlinien zaehlen je TRO (Katalog nur Vorgabe), Mubea-Speicher jetzt 20 Linien (Golden-Datei) - Staubereich als stehendes graues Rechteck direkt vor seinem TRO-Marker (jam_abstand statt jam_versatz); Marker 150 mm, Text 120 mm Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -52,6 +52,7 @@ __all__ = [
|
||||
"render_new_entries",
|
||||
"insert_entries",
|
||||
"other_sections",
|
||||
"id_problem",
|
||||
]
|
||||
|
||||
SECTION = "tro"
|
||||
@@ -133,6 +134,15 @@ def _parser() -> configparser.ConfigParser:
|
||||
return parser
|
||||
|
||||
|
||||
def id_problem(tro_id: str) -> str:
|
||||
"""Warum `tro_id` keine gueltige TRO-ID ist ("" = gueltig)."""
|
||||
if not _ID_PATTERN.match(tro_id):
|
||||
return f"'{tro_id}' ist kein gueltiger SCL-Bezeichner"
|
||||
if _RESERVED.match(tro_id):
|
||||
return f"'{tro_id}' ist fuer Systemgrenzen reserviert"
|
||||
return ""
|
||||
|
||||
|
||||
def load_ids(path: Path) -> list[IdEntry]:
|
||||
"""ID-Datei lesen. ValueError bei doppelter ID, falscher Lage oder ID."""
|
||||
parser = _parser()
|
||||
|
||||
Reference in New Issue
Block a user