Methode erzeugt um auf einen Rutsch alle Textdxf Dateien zu erzeugen
This commit is contained in:
@@ -10,7 +10,7 @@ Aufgrund möglicher Änderungen im CSV-Dateiformat von RuleDesigner müssen in Z
|
||||
|
||||
Die Logik zur Bestimmung und Platzierung von AS- und ES-Elementen bei Gefällestrecken und Vario-Förderern basiert auf dem aktuellen CSV-Format. Bei Änderungen der Datenstruktur oder der verfügbaren Informationen müssen folgende Methoden in `as_es_methoden.py` überprüft und angepasst werden:
|
||||
|
||||
- `erstellung_gefaelle_block_verbunenden_am_einen()`: Erstellt AS/ES-Elemente für Gefällestrecken, die mit einem Kreisel verbunden sind
|
||||
- `erstellung_gefaelle_block_verbunden_an_einen()`: Erstellt AS/ES-Elemente für Gefällestrecken, die mit einem Kreisel verbunden sind
|
||||
- `gefaellegerade_erstellung()`: Erstellt AS/ES-Elemente für Gefällestrecken, die mit zwei Kreiseln verbunden sind
|
||||
- `am_kreisel_direct_verbunden()`: Prüft, ob eine Gefällestrecke/Vario-Förderer direkt mit einem Kreisel verbunden ist (ohne Stahlband)
|
||||
|
||||
@@ -23,7 +23,7 @@ Die Höhenvergleiche zur Bestimmung der Verbindungsart zwischen Gefällestrecken
|
||||
- `handle_ils_2_0_gefaellestrecke()`: Haupt-Handler für Gefällestrecken
|
||||
- `handle_ils_2_0_variofoerderer()`: Haupt-Handler für Vario-Förderer
|
||||
|
||||
**Gefällestrecke-Methoden (`lib/Elemente/Gefaehllestrecke.py`):**
|
||||
**Gefällestrecke-Methoden (`lib/Elemente/Gefaellestrecke.py`):**
|
||||
|
||||
- `rotation_mit_zwei_verbunden()`: Berechnet Rotation bei Verbindung mit zwei Kreiseln (verwendet Höhenvergleiche)
|
||||
|
||||
@@ -33,7 +33,7 @@ Die Höhenvergleiche zur Bestimmung der Verbindungsart zwischen Gefällestrecken
|
||||
**Betroffene Dateien:**
|
||||
- `lib/as_es_methoden.py`: AS/ES-Element-Berechnungen
|
||||
- `lib/plant2dxf.py`: Handler-Funktionen für Gefällestrecken und Vario-Förderer
|
||||
- `lib/Elemente/Gefaehllestrecke.py`: Höhenvergleiche und Verbindungslogik
|
||||
- `lib/Elemente/Gefaellestrecke.py`: Höhenvergleiche und Verbindungslogik
|
||||
- `lib/Elemente/VarioFoerderer.py`: Höhenvergleiche und Verbindungslogik
|
||||
|
||||
## Übersicht
|
||||
@@ -505,7 +505,7 @@ msp.add_blockref(blockname, (x, y, z), dxfattribs={"rotation": rotation, "layer"
|
||||
|
||||
```python
|
||||
msp.add_blockref("ILS_2.0_Gefaellestrecke_8200_2000_UZS_higher",
|
||||
(x, y, hoehe_gefaehlle),
|
||||
(x, y, hoehe_gefaelle),
|
||||
dxfattribs={"rotation": rotation, "layer": "6-SP"})
|
||||
```
|
||||
|
||||
@@ -536,13 +536,13 @@ if blockname not in doc.blocks:
|
||||
**Beispiel:**
|
||||
|
||||
```python
|
||||
blockname = f"Ils_2.0_Gefaellestrecke_{laenge}_{hoehe_gefaehlle}_{hat_motor_0}_{hat_umlenk_0}"
|
||||
blockname = f"Ils_2.0_Gefaellestrecke_{laenge}_{hoehe_gefaelle}_{hat_motor_0}_{hat_umlenk_0}"
|
||||
if blockname not in doc.blocks:
|
||||
block = doc.blocks.new(name=blockname, base_point=(0, 0, 0))
|
||||
# Füge Komponenten zum Block hinzu
|
||||
block.add_blockref("Vario_Motorstation_500mm", (0, 0, 0))
|
||||
line = Line.new(dxfattribs={"start": start, "end": ende})
|
||||
line.translate(-x, -y, -hoehe_gefaehlle)
|
||||
line.translate(-x, -y, -hoehe_gefaelle)
|
||||
block.add_entity(line)
|
||||
```
|
||||
|
||||
@@ -733,11 +733,11 @@ Die Methode `hat_motor_umlenk_station()` prüft, ob eine Gefällestrecke eine Mo
|
||||
|
||||
**Höhen-basierte Bestimmung:**
|
||||
|
||||
- Wenn `upper_hoehe_gefaehlle > lower_hoehe_gefaehlle`:
|
||||
- Wenn `vario_hoehe_0` oder `vario_hoehe_1 == upper_hoehe_gefaehlle` → `hat_motor_0 = True`
|
||||
- Wenn `upper_hoehe_gefaelle > lower_hoehe_gefaelle`:
|
||||
- Wenn `vario_hoehe_0` oder `vario_hoehe_1 == upper_hoehe_gefaelle` → `hat_motor_0 = True`
|
||||
- Sonst → `hat_umlenk_0 = True`
|
||||
- Wenn `upper_hoehe_gefaehlle < lower_hoehe_gefaehlle`:
|
||||
- Wenn `vario_hoehe_0` oder `vario_hoehe_1 == lower_hoehe_gefaehlle` → `hat_motor_0 = True`
|
||||
- Wenn `upper_hoehe_gefaelle < lower_hoehe_gefaelle`:
|
||||
- Wenn `vario_hoehe_0` oder `vario_hoehe_1 == lower_hoehe_gefaelle` → `hat_motor_0 = True`
|
||||
- Sonst → `hat_umlenk_0 = True`
|
||||
|
||||
**Rotations-basierte Bestimmung (bei gleicher Höhe):**
|
||||
@@ -797,7 +797,7 @@ Die Methode `ein_motor_oder_eine_umlenk()` erstellt die Motor- oder Umlenkstatio
|
||||
Der Blockname wird dynamisch generiert:
|
||||
|
||||
```python
|
||||
Ils_2.0_Gefaellestrecke_{laenge}_{hoehe_gefaehlle}_{hat_umlenk_0}_{hat_motor_0}_{tefkurve_0}_{umlenk_gerade}_{motor_gerade}
|
||||
Ils_2.0_Gefaellestrecke_{laenge}_{hoehe_gefaelle}_{hat_umlenk_0}_{hat_motor_0}_{tefkurve_0}_{umlenk_gerade}_{motor_gerade}
|
||||
```
|
||||
|
||||
#### 4. Block-Erstellung
|
||||
|
||||
Reference in New Issue
Block a user