Füge umfassende Dokumentation für die Skripte create_assemblies, save_stl und read_variables hinzu; aktualisiere save_stl.py, um die Sichtbarkeit von Solid Edge zu aktivieren.

This commit is contained in:
2025-07-16 10:35:30 +02:00
parent bbad442762
commit 100b7dbd6c
2 changed files with 129 additions and 1 deletions
+128
View File
@@ -0,0 +1,128 @@
# 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):
```bat
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:
```sh
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):
```bat
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:
```sh
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:
```sh
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:
```json
{
"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!