Files
SSG-Ruledesigner-Konfigurator/CAD/Code/doku

Dokumentation: create_assemblies, save_stl & read_variables

1. create_assemblies

Zweck

Das Skript erstellt für jede .par-Datei im Eingabeordner eine neue .asm-Baugruppe, indem es eine Platzhalter-Baugruppe (dummy.asm) kopiert und darin die Platzhalter-Komponente (dummy.par) durch die jeweilige .par-Datei ersetzt.

Aufrufmöglichkeiten

Über die Batch-Datei (empfohlen unter Windows):

bin\create_assemblies.bat --in <Eingabeordner> --out <Ausgabeordner>
  • Die Batch-Datei setzt Umgebungsvariablen und ruft das Python-Skript mit den übergebenen Parametern auf.

Direkt über die Kommandozeile:

python lib/create_assemblies.py --in <Eingabeordner> --out <Ausgabeordner>

Parameter:

  • --in: Pfad zum Ordner mit .par-Dateien (optional, Standard: Umgebungsvariable PROJECT_INPUT oder ./input)
  • --out: Zielordner für die erzeugten .asm-Dateien (optional, Standard: ./work)

Input/Output

  • Input:
    • .par-Dateien im angegebenen Eingabeordner
    • dummy.asm und dummy.par im data/-Verzeichnis (werden als Vorlage und Platzhalter verwendet)
  • Output:
    • Für jede .par-Datei wird eine .asm-Datei im Ausgabeverzeichnis erzeugt.
    • Temporäre Dateien (_temp.asm, .cfg) werden nach Verarbeitung gelöscht.

Hinweise

  • Solid Edge muss installiert sein, da das Skript über COM darauf zugreift.
  • Die Platzhalter-Komponente in dummy.asm muss exakt dummy.par heißen.
  • Fehlerhafte oder fehlende Platzhalter werden übersprungen und führen nicht zum Abbruch des gesamten Prozesses.

2. save_stl

Zweck

Das Skript exportiert alle .asm-Baugruppen in einem Ordner als STL-Dateien. Es dient dazu, die zuvor erzeugten Baugruppen für die Weiterverarbeitung (z.B. 3D-Druck) bereitzustellen.

Aufrufmöglichkeiten

Über die Batch-Datei (empfohlen unter Windows):

bin\save_stl.bat --in <Eingabeordner> --out <Ausgabeordner>
  • Die Batch-Datei setzt Umgebungsvariablen und ruft das Python-Skript mit den übergebenen Parametern auf.

Direkt über die Kommandozeile:

python lib/save_stl.py --in <Eingabeordner> --out <Ausgabeordner>

Parameter:

  • --in: Pfad zum Ordner mit .asm-Dateien (optional, Standard: Umgebungsvariable PROJECT_WORK oder ./work)
  • --out: Zielordner für die STL-Dateien (optional, Standard: ./work/STL_Export)

Input/Output

  • Input:
    • .asm-Dateien im angegebenen Eingabeordner (z.B. aus create_assemblies)
  • Output:
    • Für jede .asm-Datei wird eine .stl-Datei im Ausgabeverzeichnis erzeugt.
    • Temporäre .cfg- und .log-Dateien werden nach dem Export gelöscht.

Hinweise

  • Solid Edge muss installiert sein, da das Skript über COM darauf zugreift.
  • Das Skript ist robust gegenüber Fehlern beim Export einzelner Dateien (Fehler werden gemeldet, der Prozess läuft weiter).
  • Nach dem Export werden überflüssige .cfg- und .log-Dateien im Eingabe- und Ausgabeverzeichnis entfernt.

3. read_variables

Zweck

Das Skript liest aus allen .par-Dateien in einem Verzeichnis die benutzerdefinierten Variablen 'Mittiges_Koordinatensystem_X_Translation' und 'Mittiges_Koordinatensystem_Y_Translation' aus und speichert die Werte als Breite und Höhe in einer JSON-Datei.

Aufrufmöglichkeiten

Über die Kommandozeile oder Batch-Datei:

python lib/read_variables.py --in <Eingabeordner> --out <Ausgabeordner>

Parameter:

  • --in: Pfad zum Ordner mit .par-Dateien (optional, Standard: Umgebungsvariable PROJECT_INPUT oder ./input)
  • --out: Zielordner für die JSON-Ausgabe (optional, Standard: Umgebungsvariable PROJECT_WORK oder ./work)

Input/Output

  • Input:
    • .par-Dateien im angegebenen Eingabeordner
  • Output:
    • Eine JSON-Datei im Ausgabeverzeichnis, benannt nach dem Eingabeordner (z.B. input.json), mit folgendem Aufbau:
      {
        "Dateiname_ohne_Endung": {
          "breite": <Wert>,
          "hoehe": <Wert>
        },
        ...
      }
      

Hinweise

  • Solid Edge muss installiert sein, da das Skript über COM darauf zugreift.
  • Die Variablen werden mit 2000 multipliziert und auf drei Nachkommastellen gerundet.
  • Falls eine .par-Datei die benötigten Variablen nicht enthält, wird sie übersprungen.
  • Fehlerhafte Dateien führen nicht zum Abbruch des gesamten Prozesses.

  • Umgebungsvariablen:
    Die Batch-Dateien rufen vorab setenv.bat auf, um Umgebungsvariablen wie PROJECT_LIB, PROJECT_WORK, PROJECT_INPUT, PROJECT_DATA zu setzen. Diese sollten korrekt konfiguriert sein.
  • Voraussetzungen:
    • Python (mit win32com)
    • Solid Edge (für COM-Zugriff)
  • Fehlerbehandlung:
    Fehlerhafte oder fehlende Dateien werden übersprungen, der Prozess läuft weiter.

Wenn du eine Beispielkonfiguration oder weitere Details (z.B. zu setenv.bat oder den Umgebungsvariablen) benötigst, sag gerne Bescheid!