Files
kabellaengen/cfg/create_tests.json
T

428 lines
11 KiB
JSON

{
"_description": "Konfiguration für create_example.py zur Erzeugung von Test-DXF-Dateien",
"test_scenes": {
"Nummerierung1": {
"description": "Test-Szene für automatische Nummerierung von MA-Symbolen mit Renamer-Rahmen",
"ma_groups": [
{
"name": "MA-1@@_top",
"count": 3,
"layout_type": "horizontal",
"base_x": 1500,
"base_y": 1300,
"spacing": 1450
},
{
"name": "MA-1@@_bottom",
"count": 1,
"layout_type": "single",
"base_x": 500,
"base_y": 200,
"spacing": 0
},
{
"name": "MA-2@@_bottom",
"count": 3,
"layout_type": "horizontal_offset",
"base_x": 2000,
"base_y": 400,
"spacing": 1450
}
],
"renaming_frames": [
{
"comment": "Rahmen 1: Rechts oben - umschließt 3x MA-1@@",
"name": "MA-1@@",
"kennzeichnung": "A01+UH00",
"layer_name": "ILS_MOTOR",
"direction": "LEFT_RIGHT",
"x": 800,
"y": 900,
"width": 4000,
"height": 450,
"use_polyline": false
},
{
"comment": "Rahmen 2: Links unten - umschließt 1x MA-1@@, schmaler Rahmen mit Polylinie",
"name": "MA-1@@",
"kennzeichnung": "A01+UH00",
"layer_name": "ILS_MOTOR",
"direction": "LEFT_RIGHT",
"x": 400,
"y": 75,
"width": 1400,
"height": 480,
"use_polyline": true
},
{
"comment": "Rahmen 3: Rechts unten - umschließt 3x MA-2@@, mit Extra-Höhe für vertikale Offsets",
"name": "MA-2@@",
"kennzeichnung": "A01+UH00",
"layer_name": "ILS_MOTOR",
"direction": "TOP_BOTTOM",
"x": 1400,
"y": 250,
"width": 3600,
"height": 680,
"use_polyline": false
}
]
},
"Nummerierung2": {
"description": "Test-Szene mit zirkulärer Nummerierung des Layouts - 8 MA-1@@ Symbole entlang einer Polyline nummerieren",
"ma_groups": [
{
"name": "MA-1@@_top_left",
"count": 1,
"layout_type": "single",
"base_x": 400,
"base_y": 2800,
"spacing": 0
},
{
"name": "MA-1@@_top_right",
"count": 1,
"layout_type": "single",
"base_x": 4800,
"base_y": 2800,
"spacing": 0
},
{
"name": "MA-1@@_middle_left",
"count": 1,
"layout_type": "single",
"base_x": 1200,
"base_y": 1800,
"spacing": 0
},
{
"name": "MA-1@@_middle_right",
"count": 1,
"layout_type": "single",
"base_x": 3400,
"base_y": 1800,
"spacing": 0
},
{
"name": "MA-1@@_bottom_center",
"count": 1,
"layout_type": "single",
"base_x": 2480,
"base_y": 800,
"spacing": 0
},
{
"name": "MA-1@@_right_top",
"count": 1,
"layout_type": "single",
"base_x": 6400,
"base_y": 2400,
"spacing": 0
},
{
"name": "MA-1@@_right_middle",
"count": 1,
"layout_type": "single",
"base_x": 6400,
"base_y": 1400,
"spacing": 0
},
{
"name": "MA-1@@_right_bottom",
"count": 1,
"layout_type": "single",
"base_x": 6080,
"base_y": 800,
"spacing": 0
}
],
"renaming_frames": [
{
"comment": "Polyline-Pfad: Verbindet alle MA-1@@ in kreisförmiger Bewegung",
"type": "polyline_path",
"name": "MA-1@@",
"kennzeichnung": "A01+UH00",
"layer_name": "ILS_MOTOR",
"direction": "POLYLINE_PATH",
"path_points": [
{"x": 400, "y": 2800},
{"x": 4800, "y": 2800},
{"x": 6400, "y": 2400},
{"x": 6400, "y": 1400},
{"x": 6080, "y": 800},
{"x": 2480, "y": 800},
{"x": 3400, "y": 1800},
{"x": 1200, "y": 1800},
{"x": 400, "y": 2800}
]
}
]
},
"BG_Multi_Frames": {
"description": "Test-Szene mit drei Rechtecken für BG-1@@@ und BG-2@@@ Symbole mit mehreren Layern",
"ma_groups": [
{
"name": "BG-1@@_frame1",
"count": 1,
"layout_type": "single",
"base_x": 700,
"base_y": 700,
"spacing": 0
},
{
"name": "BG-1@@_frame2_1",
"count": 1,
"layout_type": "single",
"base_x": 3500,
"base_y": 2350,
"spacing": 0
},
{
"name": "BG-1@@_frame2_2",
"count": 1,
"layout_type": "single",
"base_x": 4800,
"base_y": 2400,
"spacing": 0
},
{
"name": "BG-1@@_frame2_3",
"count": 1,
"layout_type": "single",
"base_x": 6100,
"base_y": 2300,
"spacing": 0
},
{
"name": "MB-1@@_frame2_1",
"count": 1,
"layout_type": "single",
"base_x": 3500,
"base_y": 2800,
"spacing": 0
},
{
"name": "MB-1@@_frame2_2",
"count": 1,
"layout_type": "single",
"base_x": 4800,
"base_y": 2850,
"spacing": 0
},
{
"name": "MB-1@@_frame2_3",
"count": 1,
"layout_type": "single",
"base_x": 6100,
"base_y": 2750,
"spacing": 0
},
{
"name": "BG-2@@_frame3_1",
"count": 1,
"layout_type": "single",
"base_x": 3700,
"base_y": 700,
"spacing": 0
},
{
"name": "BG-2@@_frame3_2",
"count": 1,
"layout_type": "single",
"base_x": 5000,
"base_y": 700,
"spacing": 0
},
{
"name": "BG-2@@_frame3_3",
"count": 1,
"layout_type": "single",
"base_x": 6300,
"base_y": 700,
"spacing": 0
}
],
"renaming_frames": [
{
"comment": "Rahmen 1: Links unten - 1x BG-1@@@ (Polylinie)",
"name": "BG-1@@@",
"name2": "MB-1@@@",
"kennzeichnung": "",
"layer_name1": "ILS_Eingang",
"layer_name2": "ILS_Ausgang",
"direction": "LEFT_RIGHT",
"x": 300,
"y": 500,
"width": 1200,
"height": 500,
"use_polyline": true
},
{
"comment": "Rahmen 2: Rechts oben - 3x BG-1@@@ + 3x MB-1@@@ (Polylinie)",
"name": "BG-1@@@",
"name2": "MB-1@@@",
"kennzeichnung": "",
"layer_name1": "ILS_Eingang",
"layer_name2": "ILS_Ausgang",
"direction": "LEFT_RIGHT",
"x": 3000,
"y": 2000,
"width": 3600,
"height": 1000,
"use_polyline": true
},
{
"comment": "Rahmen 3: Rechts unten - 3x BG-2@@@ (normales Rechteck)",
"name": "BG-2@@@",
"name2": "MB-2@@@",
"kennzeichnung": "",
"layer_name1": "ILS_Eingang",
"layer_name2": "ILS_Ausgang",
"direction": "LEFT_RIGHT",
"x": 3200,
"y": 500,
"width": 3600,
"height": 500,
"use_polyline": false
}
]
}
},
"ma_defaults": {
"_description": "Standard-Werte für MA-Symbole",
"block_name": "io",
"layer": "ILS_MOTOR",
"attributes": {
"SPS": "1",
"VERW": "Motor",
"ARTIKELNR": "790902001",
"ARTIKELBEZEICHN": "E-Teile für SEW Motor ASE1-HAN10ES-BG",
"KENNZEICHNUNG": "=A01+UH00",
"REALE_POSITION": "x",
"TEXT-D": "",
"TEXT-E": "",
"TEXT-ES": "",
"TEXT-F": "",
"TEXT-I": "",
"ID": ""
},
"dimensions": {
"_comment": "Symbol-Dimensionen für Layout-Berechnung. Basiert auf Analyse: ~201.49 Einheiten Breite pro Zeichen, 380.94 Einheiten Höhe",
"width_per_char": 201.49,
"fixed_height": 380.94
}
},
"general": {
"_description": "Allgemeine Frame-Attribute und Einstellungen. Renamer Frame Struktur (zweistufig): Äußerer Block mit LWPOLYLINE (umschließender Rahmen), Innerer Block mit ATTDEF (NAME, KENNZEICHNUNG, LAYER_NAME, DIRECTION)",
"ma_frame": {
"_description": "MA Frame-Typ Attribute (einfache Frames für MA, MG, etc.)",
"layer": "ILS_RENAMER",
"color": 1,
"insert_point": "center",
"_insert_point_description": "Einfügepunkt für MA-Blöcke. Mögliche Werte: left_top_corner, left_bottom_corner, right_top_corner, right_bottom_corner, center, top_center, bottom_center",
"attdef_positions": {
"_description": "ATTDEF Positionen im inneren Block RENAMER_ATTRIB_MA",
"NAME": {
"x": 10,
"y": -10,
"height": 21.25
},
"KENNZEICHNUNG": {
"x": 10,
"y": -35,
"height": 21.25
},
"LAYER_NAME": {
"x": 10,
"y": -60,
"height": 21.25
},
"DIRECTION": {
"x": 10,
"y": -85,
"height": 21.25
}
}
},
"multi_frame": {
"_description": "MULTI Frame-Typ Attribute (für BG/MG/POT mit mehreren Layern)",
"layer": "ILS_RENAMER",
"color": 1,
"attdef_positions": {
"_description": "ATTDEF Positionen im inneren Block RENAMER_ATTRIB_MULTI",
"NAME1": {
"x": 10,
"y": -10,
"height": 21.25
},
"NAME2": {
"x": 10,
"y": -45,
"height": 21.25
},
"NAME3": {
"x": 10,
"y": -80,
"height": 21.25
},
"KENNZEICHNUNG": {
"x": 10,
"y": -115,
"height": 21.25
},
"LAYER_NAME1": {
"x": 10,
"y": -150,
"height": 21.25
},
"LAYER_NAME2": {
"x": 10,
"y": -185,
"height": 21.25
},
"LAYER_NAME3": {
"x": 10,
"y": -220,
"height": 21.25
},
"DIRECTION": {
"x": 10,
"y": -255,
"height": 21.25
},
"ID": {
"x": 10,
"y": -290,
"height": 21.25
}
}
},
"textstyle": {
"attrib_textstyle": "textstyle3",
"attrib_color": 1
},
"inner_block_position": {
"_description": "Innerer Block Insert-Position (relativ zum äußeren Block)",
"x": 10,
"y_offset_from_top": 30
},
"layout": {
"_description": "Frame-Padding (Abstand zwischen Symbol und Rahmen), Symbol-Spacing (Abstand zwischen Symbolen in Gruppen)",
"frame_padding": 100,
"frame_padding_small": 50,
"symbol_spacing_factor": 1.2,
"horizontal_offset_y_offsets": [0, -50, 50]
}
}
}