This commit is contained in:
2025-07-08 12:42:50 +02:00
15 changed files with 1351 additions and 0 deletions
+3
View File
@@ -1 +1,4 @@
Sessions
CAD/Code/input
CAD/Code/work
+10
View File
@@ -0,0 +1,10 @@
@echo off
REM ~dp0 steht für das Verzeichnis, in der diese Datei liegt
call setenv.bat
REM Beispielaufruf mit Parametern:
REM --in: Ordner mit .par-Dateien (optional. Standard: Input)
REM --out: Zielverzeichnis (optional. Standard: Work)
python %PROJECT_LIB%\create_assemblies.py %*
+4
View File
@@ -0,0 +1,4 @@
@echo off
call setenv.bat
start
+10
View File
@@ -0,0 +1,10 @@
@echo off
REM ~dp0 steht für das Verzeichnis, in der diese Datei liegt
call setenv.bat
REM Beispielaufruf mit Parametern:
REM --in: Ordner mit .asm-Dateien (optional. Standard: Work)
REM --out: Zielverzeichnis (optional. Standard: Work\stl_export)
python %PROJECT_LIB%\save_stl.py %*
+16
View File
@@ -0,0 +1,16 @@
@echo off
REM ~dp0 steht für das Verzeichnis, in der diese Datei liegt
pushd %~dp0\..
set PROJECT_DIR=%cd%
set PROJECT_LIB=%PROJECT_DIR%\lib
set PROJECT_WORK=%PROJECT_DIR%\work
set PROJECT_DATA=%PROJECT_DIR%\data
set PROJECT_INPUT=%PROJECT_DIR%\input
if not exist %PROJECT_WORK% mkdir %PROJECT_WORK%
if not exist %PROJECT_INPUT% mkdir %PROJECT_INPUT%
popd
goto :eof
Binary file not shown.
Binary file not shown.
Binary file not shown.
+121
View File
@@ -0,0 +1,121 @@
import os
import sys
import shutil
import argparse
import win32com.client
def start_solid_edge():
"""Startet Solid Edge über COM."""
print("Starting instance of SolidEdge...")
se = win32com.client.Dispatch("SolidEdge.Application")
se.Visible = True
print("done\n")
return se.Documents
def find_placeholder_occurrence(occurrences, placeholder_name):
"""Sucht die Occurrence mit dem Namen placeholder_name."""
for occ in occurrences:
filename = os.path.basename(occ.OccurrenceFileName)
if filename.lower() == placeholder_name.lower():
return occ
return None
def process_part(par_name, par_path, dummy_asm_path, placeholder_name, work_dir, output_dir, documents):
"""Kopiert Dummy-ASM, ersetzt Platzhalter mit .par, speichert Ergebnis."""
temp_asm = os.path.join(work_dir, "_temp.asm")
temp_cfg = os.path.splitext(temp_asm)[0] + ".cfg"
shutil.copyfile(dummy_asm_path, temp_asm)
asm_doc = documents.Open(temp_asm)
occurrences = asm_doc.Occurrences
target_occ = find_placeholder_occurrence(occurrences, placeholder_name)
if not target_occ:
print(f"[{par_name}] Placeholder '{placeholder_name}' not found in 'dummy.asm'. Skipping.")
asm_doc.Close(False)
# Cleanup bei Fehler
if os.path.exists(temp_asm):
os.remove(temp_asm)
if os.path.exists(temp_cfg):
os.remove(temp_cfg)
return
print(f"[{par_name}] Replacing '{placeholder_name}' with '{par_name}'...")
target_occ.Replace(par_path, True)
ziel_name = os.path.splitext(par_name)[0] + ".asm"
ziel_path = os.path.join(output_dir, ziel_name)
asm_doc.SaveAs(ziel_path)
print(f"→ Saved: {ziel_path}")
asm_doc.Close(False)
# Lösche ggf. erzeugte .cfg-Datei zur Ziel-ASM
ziel_cfg = os.path.splitext(ziel_path)[0] + ".cfg"
if os.path.exists(ziel_cfg):
os.remove(ziel_cfg)
# Lösche temporäre ASM und deren CFG
if os.path.exists(temp_asm):
os.remove(temp_asm)
if os.path.exists(temp_cfg):
os.remove(temp_cfg)
if __name__ == "__main__":
# Argumente parsen
parser = argparse.ArgumentParser(description="Solid Edge Occurrence-Replacer")
parser.add_argument("--in", dest="input_dir", required=False, help="Path to .par files (Standard: INPUT env or ./input)")
parser.add_argument("--out", dest="output_dir", required=False, help="Optional target-directory for .asm files (Standard: ./work)")
if len(sys.argv) == 2 and sys.argv[1] in ("-h", "--help"):
parser.print_help()
sys.exit(0)
args = parser.parse_args()
# Umgebungsvariablen & Ordner
work_dir = os.environ.get("PROJECT_WORK", "../work")
data_dir = os.environ.get("PROJECT_DATA", "../data")
if args.input_dir:
input_dir = args.input_dir
print("Using provided input directory.")
else:
input_dir = os.environ.get("PROJECT_INPUT", "../input")
print("No input directory provided. Using standard input directory.")
if args.output_dir:
output_dir = args.output_dir
else:
output_dir = work_dir
os.makedirs(work_dir, exist_ok=True)
os.makedirs(output_dir, exist_ok=True)
dummy_asm_path = os.path.join(data_dir, "dummy.asm")
placeholder_name = "dummy.par"
documents = start_solid_edge()
par_dateien = [f for f in os.listdir(input_dir) if f.lower().endswith(".par")]
if not par_dateien:
print("No .par-files found in input-directory. Exiting...")
exit(1)
for par_name in par_dateien:
par_path = os.path.join(input_dir, par_name)
process_part(par_name, par_path, dummy_asm_path, placeholder_name, work_dir, output_dir, documents)
if output_dir == work_dir:
print("\nNo output folder (--out) specified. Files saved into 'work' folder.")
else:
print("\nAll .par files processed and saved into given target folder.")
+100
View File
@@ -0,0 +1,100 @@
import os
import sys
import argparse
import win32com.client
import pythoncom
def export_assemblies_to_stl(input_dir, output_dir):
pythoncom.CoInitialize()
try:
# Solid Edge starten oder verbinden
se_app = win32com.client.Dispatch("SolidEdge.Application")
se_app.Visible = False
documents = se_app.Documents
os.makedirs(output_dir, exist_ok=True)
for filename in os.listdir(input_dir):
if filename.lower().endswith(".asm"):
asm_path = os.path.join(input_dir, filename)
stl_filename = os.path.splitext(filename)[0] + ".stl"
stl_path = os.path.join(output_dir, stl_filename)
print(f"Processing: {asm_path}")
try:
# Baugruppe öffnen
doc = documents.Open(asm_path)
# STL exportieren in den Unterordner
doc.SaveAs(stl_path)
print(f"→ Exported to: {stl_path}")
except Exception as e:
print(f"Error processing {filename}: {e}")
finally:
# Datei schließen
doc.Close(False)
# --- Aufräumen: .cfg und .log im Hauptordner ---
print("")
for file in os.listdir(input_dir):
if file.lower().endswith((".cfg", ".log")):
file_path = os.path.join(input_dir, file)
try:
os.remove(file_path)
print(f"Deleted (input): {file}")
except Exception as e:
print(f"Error deleting {file}: {e}")
# --- Aufräumen: .log im STL-Unterordner ---
for file in os.listdir(output_dir):
if file.lower().endswith(".log"):
file_path = os.path.join(output_dir, file)
try:
os.remove(file_path)
print(f"Deleted (output): {file}")
except Exception as e:
print(f"Error deleting {file}: {e}")
print("\nExport and cleanup completed.")
finally:
try:
if 'doc' in locals():
doc.Close(False)
except:
pass
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Exportiert alle .asm-Dateien in einem Ordner nach STL.")
parser.add_argument("--in", dest="input_dir", required=False, help="Ordner mit .asm-Dateien (Standard: WORK oder ../work)")
parser.add_argument("--out", dest="output_dir", required=False, help="Zielordner für STL-Dateien (Standard: work/STL_Export)")
if len(sys.argv) == 2 and sys.argv[1] in ("-h", "--help"):
parser.print_help()
sys.exit(0)
args = parser.parse_args()
work_dir = os.environ.get("PROJECT_WORK", "../work")
if args.input_dir:
input_dir = args.input_dir
print("Using provided input directory.\n")
else:
input_dir = os.environ.get("PROJECT_WORK", "../work")
print("No input directory provided. Using 'work' directory as input.\n")
if args.output_dir:
output_dir = args.output_dir
print(f"Saving exported STL files to provided output directory.\n")
else:
output_dir = os.path.join(work_dir, "STL_Export")
print(f"No output directory provided. Exporting STL files to 'work'.\n")
if not os.path.exists(input_dir):
print(f"Input folder not found: {input_dir}")
sys.exit(1)
export_assemblies_to_stl(input_dir, output_dir)
+1
View File
@@ -4,6 +4,7 @@ pushd %~dp0\..
set RD_CONF=%cd%
set RD_CONF_BIN=%RD_CONF%\bin
set RD_CONF_CFG=%RD_CONF%\cfg
set RD_CONF_WORK=%RD_CONF%\work
set RD_CONF_LIB=%RD_CONF%\lib
+275
View File
@@ -0,0 +1,275 @@
[
{
"Sivasnr": 821104025,
"ProfilTyp": "APB 110 R 550/22,5° 84/522",
"Radius": 550,
"KurvenWinkel": 22.5,
"Breite": 84,
"Länge": 522,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104025+0_B10090",
"ProfilTyp": "APB 110 R 550/22,5° 84/522 mit TEF Innen",
"Radius": 550,
"KurvenWinkel": 22.5,
"Breite": 84,
"Länge": 522,
"SivasnrTEF": "0_B10090",
"Antriebsart":1
},
{
"Sivasnr": "821104025+0_B10091",
"ProfilTyp": "APB 110 R 550/22,5° 84/522 mit TEF Aussen",
"Radius": 550,
"KurvenWinkel": 22.5,
"Breite": 84,
"Länge": 522,
"SivasnrTEF": "0_B10091",
"Antriebsart":2
},
{
"Sivasnr": 821104021,
"ProfilTyp": "APB 110 R 400/45° 400/670",
"Radius": 400,
"KurvenWinkel": 45,
"Breite": 400,
"Länge": 670,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104026,
"ProfilTyp": "APB 110 R 550/45° 232/610",
"Radius": 550,
"KurvenWinkel": 45,
"Breite": 232,
"Länge": 610,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104026+0_B10071",
"ProfilTyp": "APB 110 R 550/45° 232/610 mit TEF Innen",
"Radius": 550,
"KurvenWinkel": 45,
"Breite": 232,
"Länge": 610,
"SivasnrTEF": "0_B10071",
"Antriebsart":1
},
{
"Sivasnr": 821104037,
"ProfilTyp": "APB 110 R 550/45° 205/337",
"Radius": 550,
"KurvenWinkel": 45,
"Breite": 205,
"Länge": 337,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104029,
"ProfilTyp": "APB 110 R 550/45° 191/552",
"Radius": 550,
"KurvenWinkel": 45,
"Breite": 191,
"Länge": 552,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104031,
"ProfilTyp": "APB 110 R 630/45° 400/825",
"Radius": 630,
"KurvenWinkel": 45,
"Breite": 400,
"Länge": 825,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104031+0_B10060",
"ProfilTyp": "APB 110 R 630/45° 400/825 mit TEF Aussen",
"Radius": 630,
"KurvenWinkel": 45,
"Breite": 400,
"Länge": 825,
"SivasnrTEF": "0_B10060",
"Antriebsart":2
},
{
"Sivasnr": "821104031+0_B10070",
"ProfilTyp": "APB 110 R 630/45° 400/825 mit TEF Innen",
"Radius": 630,
"KurvenWinkel": 45,
"Breite": 400,
"Länge": 825,
"SivasnrTEF": "0_B10070",
"Antriebsart":1
},
{
"Sivasnr": 821104024,
"ProfilTyp": "APB 110 R 400/67,5° 339/508",
"Radius": 400,
"KurvenWinkel": 67.5,
"Breite": 339,
"Länge": 508,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104024+0_B10081",
"ProfilTyp": "APB 110 R 400/67,5° 339/508 mit TEF Innen",
"Radius": 400,
"KurvenWinkel": 67.5,
"Breite": 339,
"Länge": 508,
"SivasnrTEF": "0_B10081",
"Antriebsart":1
},
{
"Sivasnr": 821104027,
"ProfilTyp": "APB 110 R 550/67,5° 488/778",
"Radius": 550,
"KurvenWinkel": 67.5,
"Breite": 448,
"Länge": 778,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104027+0_B10080",
"ProfilTyp": "APB 110 R 550/67,5° 488/778 mit TEF Innen",
"Radius": 550,
"KurvenWinkel": 67.5,
"Breite": 448,
"Länge": 778,
"SivasnrTEF": "0_B10080",
"Antriebsart":1
},
{
"Sivasnr": 821104028,
"ProfilTyp": "APB 110 R 550/67,5° 420/582",
"Radius": 550,
"KurvenWinkel": 67.5,
"Breite": 420,
"Länge": 582,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104065,
"ProfilTyp": "APB 110 R 550/67,5° 498/758",
"Radius": 550,
"KurvenWinkel": 67.5,
"Breite": 498,
"Länge": 758,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104022,
"ProfilTyp": "APB 110 R 400/90° 500/500",
"Radius": 400,
"KurvenWinkel": 90,
"Breite": 500,
"Länge": 500,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104030,
"ProfilTyp": "APB 110 R 500/90° 550/550",
"Radius": 500,
"KurvenWinkel": 90,
"Breite": 550,
"Länge": 550,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104033,
"ProfilTyp": "APB 110 R 630/90° 800/800",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 800,
"Länge": 800,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": "821104033+0_B10040",
"ProfilTyp": "APB 110 R 630/90° 800/800 mit TEF Aussen",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 800,
"Länge": 800,
"SivasnrTEF": "0_B10040",
"Antriebsart":1
},
{
"Sivasnr": "821104033+0_B10050",
"ProfilTyp": "APB 110 R 630/90° 800/800 mit TEF Innen",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 800,
"Länge": 800,
"SivasnrTEF": "0_B10050",
"Antriebsart":1
},
{
"Sivasnr": 821104035,
"ProfilTyp": "APB 110 R 630/90° 850/870",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 850,
"Länge": 870,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104041,
"ProfilTyp": "APB 110 R 630/90° 850/690",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 850,
"Länge": 690,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104034,
"ProfilTyp": "APB 110 R 630/90° 850/890",
"Radius": 630,
"KurvenWinkel": 90,
"Breite": 850,
"Länge": 890,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104066,
"ProfilTyp": "APB 110 R 550/90° 900/605",
"Radius": 550,
"KurvenWinkel": 90,
"Breite": 900,
"Länge": 605,
"SivasnrTEF": null,
"Antriebsart": 0
},
{
"Sivasnr": 821104043,
"ProfilTyp": "APB 110 R 630/180° 1300/800",
"Radius": 650,
"KurvenWinkel": 180,
"Breite": 1300,
"Länge": 800,
"SivasnrTEF": null,
"Antriebsart": 0
}
]
+65
View File
@@ -0,0 +1,65 @@
[
{
"Sivasnr": 0_B10040,
"Beschreibung": "TEF Bogen 90° R725",
"Radius": 725,
"KurvenWinkel": 90,
"innen": false
},
{
"Sivasnr": 0_B10050,
"Beschreibung": "TEF Bogen 90° R535",
"Radius": 535,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": 0_B10060,
"Beschreibung": "TEF Bogen 45° R725",
"Radius": 725,
"KurvenWinkel": 45,
"innen": false
},
{
"Sivasnr": 0_B10070,
"Beschreibung": "TEF Bogen 45° R535",
"Radius": 535,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": 0_B10071,
"Beschreibung": "TEF Bogen 45° R450 für S C Delta 1600",
"Radius": 450,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": 0_B10080,
"Beschreibung": "TEF Bogen 67.5° R400",
"Radius": 400,
"KurvenWinkel": 67.5,
"innen": true
},
{
"Sivasnr": 0_B10081,
"Beschreibung": "TEF Bogen 67.5° R250",
"Radius": 250,
"KurvenWinkel": 67.5,
"innen": true
},
{
"Sivasnr": 0_B10090,
"Beschreibung": "TEF Bogen 22.5° R450",
"Radius": 450,
"KurvenWinkel": 22.5,
"innen": true
},
{
"Sivasnr": 0_B10091,
"Beschreibung": "TEF Bogen 22.5° R650",
"Radius": 650,
"KurvenWinkel": 22.5,
"innen": false
}
]
+72
View File
@@ -0,0 +1,72 @@
[
{
"Sivasnr": _BG080090,
"Beschreibung": "TEF Bogen für Weiche S 90° 700/700 links",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": _BG080090,
"Beschreibung": "TEF Bogen für Weiche S 90° 700/700 rechts",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": _BG081090,
"Beschreibung": "TEF Bogen für Weiche S 90° 500/600 links",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": _BG081090,
"Beschreibung": "TEF Bogen für Weiche S 90° 500/600 rechts",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": _BG190090,
"Beschreibung": "TEF Bogen für Weiche S 45° 400/750 links",
"Radius": ,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": _BG190090,
"Beschreibung": "TEF Bogen für Weiche S 45° 400/750 rechts",
"Radius": ,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": _BG090090,
"Beschreibung": "TEF Bogen für Weiche S 45° 350/700 links",
"Radius": ,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": _BG090090,
"Beschreibung": "TEF Bogen für Weiche S 45° 350/700 rechts",
"Radius": ,
"KurvenWinkel": 45,
"innen": true
},
{
"Sivasnr": _BG071090,
"Beschreibung": "TEF Bogen für Weiche S C Delta 1600/800 links",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
},
{
"Sivasnr": _BG071090,
"Beschreibung": "TEF Bogen für Weiche S C Delta 1600/800 rechts",
"Radius": ,
"KurvenWinkel": 90,
"innen": true
}
]
+674
View File
@@ -0,0 +1,674 @@
[
{
"Sivasnr": 834372001,
"ProfilTyp": "WEICHE S 45°-L-350/700, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372002,
"ProfilTyp": "WEICHE S 45°-L-350/700, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372002+0_BG090090",
"ProfilTyp": "WEICHE S 45°-L-350/700, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": 834372004,
"ProfilTyp": "WEICHE S 45°-R-350/700, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372005,
"ProfilTyp": "WEICHE S 45°-R-350/700, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372005+0_BG090090",
"ProfilTyp": "WEICHE S 45°-R-350/700, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": 834372007,
"ProfilTyp": "WEICHE S 45°-L-400/750, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372008,
"ProfilTyp": "WEICHE S 45°-L-400/750, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372008+0_BG190090",
"ProfilTyp": "WEICHE S 45°-L-400/750, KPL. MIT P mit TEF Ihnen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834372010,
"ProfilTyp": "WEICHE S 45°-R-400/750, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372011,
"ProfilTyp": "WEICHE S 45°-R-400/750, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372011+0_BG190090",
"ProfilTyp": "WEICHE S 45°-R-400/750, KPL. MIT P mit TEF Ihnen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": 834372021,
"ProfilTyp": "WEICHE S 90°-L-500/600, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372022,
"ProfilTyp": "WEICHE S 90°-L-500/600, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372022+0_BG081090",
"ProfilTyp": "WEICHE S 90°-L-500/600, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090"
},
{
"Sivasnr": 834372024,
"ProfilTyp": "WEICHE S 90°-R-500/600, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372025,
"ProfilTyp": "WEICHE S 90°-R-500/600, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372025+0_BG081090",
"ProfilTyp": "WEICHE S 90°-R-500/600, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090"
},
{
"Sivasnr": 834372027,
"ProfilTyp": "WEICHE S 90°-L-700/700, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372028,
"ProfilTyp": "WEICHE S 90°-L-700/700, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372028+0_BG080090",
"ProfilTyp": "WEICHE S 90°-L-700/700, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090"
},
{
"Sivasnr": 834372030,
"ProfilTyp": "WEICHE S 90°-R-700/700, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372031,
"ProfilTyp": "WEICHE S 90°-R-700/700, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372031+0_BG080090",
"ProfilTyp": "WEICHE S 90°-R-700/700, KPL. MIT P mit TEF Innen",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090"
},
{
"Sivasnr": 834372047,
"ProfilTyp": "WEICHE S PARALLEL-L-200/750, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372048,
"ProfilTyp": "WEICHE S PARALLEL-L-200/750, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834372050,
"ProfilTyp": "WEICHE S PARALLEL-R-200/750, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372051,
"ProfilTyp": "WEICHE S PARALLEL-R-200/750, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834372100,
"ProfilTyp": "WEICHE S D 45°-350/700, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372101,
"ProfilTyp": "WEICHE S D 45°-350/700, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372101+0_BG090090",
"ProfilTyp": "WEICHE S D 45°-350/700, KPL. MIT P mit TEF links",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG090090+834372101",
"ProfilTyp": "WEICHE S D 45°-350/700, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG090090+834372101+0_BG090090",
"ProfilTyp": "WEICHE S D 45°-350/700, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090+0_B10090+0_B10090"
},
{
"Sivasnr": 834372103,
"ProfilTyp": "WEICHE S D 45°-400/750, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372104,
"ProfilTyp": "WEICHE S D 45°-400/750, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372104+0_BG190090",
"ProfilTyp": "WEICHE S D 45°-400/750, KPL. MIT P mit TEF links",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG190090+834372104",
"ProfilTyp": "WEICHE S D 45°-400/750, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG190090+834372104+0_BG190090",
"ProfilTyp": "WEICHE S D 45°-400/750, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090+0_B10090+0_B10090"
},
{
"Sivasnr": 834372106,
"ProfilTyp": "WEICHE S D 90°-500/600, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372107,
"ProfilTyp": "WEICHE S D 90°-500/600, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372107+0_BG081090",
"ProfilTyp": "WEICHE S D 90°-500/600, KPL. MIT P mit TEF links",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090"
},
{
"Sivasnr": "834372107+0_B10090+0_B10081",
"ProfilTyp": "WEICHE S D 90°-500/600, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10081"
},
{
"Sivasnr": "0_BG081090+834372107+0_BG081090",
"ProfilTyp": "WEICHE S D 90°-500/600, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090+0_B10081+0_B10090"
},
{
"Sivasnr": 834372109,
"ProfilTyp": "WEICHE S D 90°-700/700, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372110,
"ProfilTyp": "WEICHE S D 90°-700/700, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372110+0_BG080090",
"ProfilTyp": "WEICHE S D 90°-700/700, KPL. MIT P mit TEF links",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090"
},
{
"Sivasnr": "834372110+0_B10090+0_B10080",
"ProfilTyp": "WEICHE S D 90°-700/700, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10080"
},
{
"Sivasnr": "0_BG080090+834372110+0_BG080090",
"ProfilTyp": "WEICHE S D 90°-700/700, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090+0_B10080+0_B10090"
},
{
"Sivasnr": 834372115,
"ProfilTyp": "WEICHE S D PARALLEL-200/750, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372116,
"ProfilTyp": "WEICHE S D PARALLEL-200/750, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834372200,
"ProfilTyp": "WEICHE S T 45°-350/700, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 365.007,
"OFWeiche_CP4_y_mm": 355.001
},
{
"Sivasnr": 834372201,
"ProfilTyp": "WEICHE S T 45°-350/700, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"OFWeiche_CP4_x_mm": 365.007,
"OFWeiche_CP4_y_mm": 355.001
},
{
"Sivasnr": "834372201+0_BG090090",
"ProfilTyp": "WEICHE S T 45°-350/700, KPL. MIT P mit TEF links",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG090090+834372201",
"ProfilTyp": "WEICHE S T 45°-350/700, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG090090+834372201+0_BG090090",
"ProfilTyp": "WEICHE S T 45°-350/700, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090+0_B10090+0_B10090"
},
{
"Sivasnr": 834372203,
"ProfilTyp": "WEICHE S T 45°-400/750, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372204,
"ProfilTyp": "WEICHE S T 45°-400/750, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
},
{
"Sivasnr": "834372204+0_BG090090",
"ProfilTyp": "WEICHE S T 45°-400/750, KPL. MIT P mit TEF links",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG190090+834372204",
"ProfilTyp": "WEICHE S T 45°-400/750, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG090090+834372204+0_BG090090",
"ProfilTyp": "WEICHE S T 45°-400/750, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 45,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090+0_B10090+0_B10090"
},
{
"Sivasnr": 834372206,
"ProfilTyp": "WEICHE S T 90°-500/600, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 515.107,
"OFWeiche_CP4_y_mm": 255.075
},
{
"Sivasnr": 834372207,
"ProfilTyp": "WEICHE S T 90°-500/600, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"OFWeiche_CP4_x_mm": 515.107,
"OFWeiche_CP4_y_mm": 255.075
},
{
"Sivasnr": "834372207+0_BG081090",
"ProfilTyp": "WEICHE S T 90°-500/600, KPL. MIT P mit TEF links",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090"
},
{
"Sivasnr": "0_BG081090+834372207",
"ProfilTyp": "WEICHE S T 90°-500/600, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10081"
},
{
"Sivasnr": "0_BG081090+834372207+0_BG081090",
"ProfilTyp": "WEICHE S T 90°-500/600, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10081+0_B10090+0_B10081+0_B10090"
},
{
"Sivasnr": 834372209,
"ProfilTyp": "WEICHE S T 90°-700/700, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 700.37,
"OFWeiche_CP4_y_mm": 361.216
},
{
"Sivasnr": 834372210,
"ProfilTyp": "WEICHE S T 90°-700/700, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"OFWeiche_CP4_x_mm": 700.37,
"OFWeiche_CP4_y_mm": 361.216
},
{
"Sivasnr": "834372404+0_BG080090",
"ProfilTyp": "WEICHE S T 90°-700/700, KPL. MIT P mit TEF links",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090"
},
{
"Sivasnr": "0_BG080090+834372404",
"ProfilTyp": "WEICHE S T 90°-700/700, KPL. MIT P mit TEF rechts",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10080"
},
{
"Sivasnr": "0_BG080090+834372404+0_BG080090",
"ProfilTyp": "WEICHE S T 90°-700/700, KPL. MIT P mit TEF beideseitig",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10080+0_B10090+0_B10080+0_B10090"
},
{
"Sivasnr": 834372215,
"ProfilTyp": "WEICHE S T PARALLEL-200/750, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 221.047,
"OFWeiche_CP4_y_mm": 389.8
},
{
"Sivasnr": 834372216,
"ProfilTyp": "WEICHE S T PARALLEL-200/750, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "P",
"OFWeiche_CP4_x_mm": 221.047,
"OFWeiche_CP4_y_mm": 389.8
},
{
"Sivasnr": 834372400,
"ProfilTyp": "WEICHE S C DELTA 1400/700, KPL. M",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372401,
"ProfilTyp": "WEICHE S C DELTA 1400/700, KPL. P",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834372403,
"ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. M",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834372404,
"ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. P",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
},
{
"Sivasnr": "0_BG071090+834372404+0_BG071090",
"ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. P mit TEF beideseitig",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10071+0_B10090+0_B10090+0_B10071+0_B10090+0_B10090"
},
{
"Sivasnr": "834372404+0_BG071090",
"ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. P mit TEF links",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10071+0_B10090+0_B10090"
},
{
"Sivasnr": "0_BG071090+834372404",
"ProfilTyp": "WEICHE S C DELTA 1600/800, KPL. P mit TEF rechts",
"WeichenTyp": "Dreifachweiche",
"KurvenWinkel": 90,
"Schaltungstyp": "P",
"SivasnrTEF": "0_B10090+0_B10090+0_B10071"
},
{
"Sivasnr": 834372420,
"ProfilTyp": "WEICHE S C STAR 1400/1400, KPL. M",
"WeichenTyp": "Sternweiche",
"KurvenWinkel": 0,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 0,
"OFWeiche_CP4_y_mm": 700.221
},
{
"Sivasnr": 834342011,
"ProfilTyp": "WEICHENKOERPER S -L-, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834342001,
"ProfilTyp": "WEICHENKOERPER S -R-, KPL. MIT M",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834342012,
"ProfilTyp": "WEICHENKOERPER S -L-, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834342002,
"ProfilTyp": "WEICHENKOERPER S -R-, KPL. MIT P",
"WeichenTyp": "Einzelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834342100,
"ProfilTyp": "WEICHENKOERPER S D, KPL. MIT M",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "M",
},
{
"Sivasnr": 834342101,
"ProfilTyp": "WEICHENKOERPER S D, KPL. MIT P",
"WeichenTyp": "Doppelweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "P",
},
{
"Sivasnr": 834342200,
"ProfilTyp": "WEICHENKOERPER S T, KPL. MIT M",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "M",
"OFWeiche_CP4_x_mm": 120.939,
"OFWeiche_CP4_y_mm": -11.948
},
{
"Sivasnr": 834342201,
"ProfilTyp": "WEICHENKOERPER S T, KPL. MIT P",
"WeichenTyp": "Dreiwegeweiche",
"KurvenWinkel": 22.5,
"Schaltungstyp": "P",
"OFWeiche_CP4_x_mm": 120.939,
"OFWeiche_CP4_y_mm": -11.948
}
]