60f2b72e39
Neuer Test: 4 Geraden -> 180-Grad-Kurve (4x 45-Grad-Bogen) -> 4 Geraden als lueckenlos verketteter Streckenzug (U-Form). - testdata/omniflo_strecke_tests.json: 12 Elemente mit berechneter, verketteter Platzierung (x, y, drehung, x_ende, y_ende, Bogen-Mittelpunkt) - test_omniflo_strecke.py: Geometrie-Validierung ohne BricsCAD (Struktur, Katalog-Abgleich, Verkettung, Kurvensumme 180 Grad, gemeinsamer Mittelpunkt) - test_omniflo_strecke.lsp: C:TEST_OMNIFLO_STRECKE baut die Strecke auf - alltests.json/README.md: Test registriert und dokumentiert OmniModulInsert.lsp: omni:insert-block in skriptfaehigen Kern omni:make-gerade + omni:read-src-attribs aufgeteilt. Der Kern erzeugt eine Aluprofil-Gerade non-interaktiv aus zwei Punkten (kein getpoint/ssg-start), sodass der Test echte Gerade-Bloecke statt nackter Linien baut. Interaktives Verhalten von omni:insert-block bleibt unveraendert (Vorschau-Text, Laengenpruefung). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
194 lines
3.8 KiB
JSON
194 lines
3.8 KiB
JSON
[
|
|
{
|
|
"seq": 1,
|
|
"gruppe": "gerade_start",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 0.0,
|
|
"y": 0.0,
|
|
"drehung": 0.0,
|
|
"x_ende": 1000.0,
|
|
"y_ende": 0.0,
|
|
"drehung_ende": 0.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 2,
|
|
"gruppe": "gerade_start",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 1000.0,
|
|
"y": 0.0,
|
|
"drehung": 0.0,
|
|
"x_ende": 2000.0,
|
|
"y_ende": 0.0,
|
|
"drehung_ende": 0.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 3,
|
|
"gruppe": "gerade_start",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 2000.0,
|
|
"y": 0.0,
|
|
"drehung": 0.0,
|
|
"x_ende": 3000.0,
|
|
"y_ende": 0.0,
|
|
"drehung_ende": 0.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 4,
|
|
"gruppe": "gerade_start",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 3000.0,
|
|
"y": 0.0,
|
|
"drehung": 0.0,
|
|
"x_ende": 4000.0,
|
|
"y_ende": 0.0,
|
|
"drehung_ende": 0.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 5,
|
|
"gruppe": "kurve_180",
|
|
"type": "bogen",
|
|
"sivasnr": "821104021",
|
|
"radius": 400.0,
|
|
"winkel": 45.0,
|
|
"x": 4000.0,
|
|
"y": 0.0,
|
|
"drehung": 0.0,
|
|
"x_ende": 4282.84,
|
|
"y_ende": 117.16,
|
|
"drehung_ende": 45.0,
|
|
"x_mitte": 4000.0,
|
|
"y_mitte": 400.0,
|
|
"hoehe": 2000,
|
|
"description": "APB 110 R 400/45 - 400/670 (1/4)"
|
|
},
|
|
{
|
|
"seq": 6,
|
|
"gruppe": "kurve_180",
|
|
"type": "bogen",
|
|
"sivasnr": "821104021",
|
|
"radius": 400.0,
|
|
"winkel": 45.0,
|
|
"x": 4282.84,
|
|
"y": 117.16,
|
|
"drehung": 45.0,
|
|
"x_ende": 4400.0,
|
|
"y_ende": 400.0,
|
|
"drehung_ende": 90.0,
|
|
"x_mitte": 4000.0,
|
|
"y_mitte": 400.0,
|
|
"hoehe": 2000,
|
|
"description": "APB 110 R 400/45 - 400/670 (2/4)"
|
|
},
|
|
{
|
|
"seq": 7,
|
|
"gruppe": "kurve_180",
|
|
"type": "bogen",
|
|
"sivasnr": "821104021",
|
|
"radius": 400.0,
|
|
"winkel": 45.0,
|
|
"x": 4400.0,
|
|
"y": 400.0,
|
|
"drehung": 90.0,
|
|
"x_ende": 4282.84,
|
|
"y_ende": 682.84,
|
|
"drehung_ende": 135.0,
|
|
"x_mitte": 4000.0,
|
|
"y_mitte": 400.0,
|
|
"hoehe": 2000,
|
|
"description": "APB 110 R 400/45 - 400/670 (3/4)"
|
|
},
|
|
{
|
|
"seq": 8,
|
|
"gruppe": "kurve_180",
|
|
"type": "bogen",
|
|
"sivasnr": "821104021",
|
|
"radius": 400.0,
|
|
"winkel": 45.0,
|
|
"x": 4282.84,
|
|
"y": 682.84,
|
|
"drehung": 135.0,
|
|
"x_ende": 4000.0,
|
|
"y_ende": 800.0,
|
|
"drehung_ende": 180.0,
|
|
"x_mitte": 4000.0,
|
|
"y_mitte": 400.0,
|
|
"hoehe": 2000,
|
|
"description": "APB 110 R 400/45 - 400/670 (4/4)"
|
|
},
|
|
{
|
|
"seq": 9,
|
|
"gruppe": "gerade_ende",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 4000.0,
|
|
"y": 800.0,
|
|
"drehung": 180.0,
|
|
"x_ende": 3000.0,
|
|
"y_ende": 800.0,
|
|
"drehung_ende": 180.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 10,
|
|
"gruppe": "gerade_ende",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 3000.0,
|
|
"y": 800.0,
|
|
"drehung": 180.0,
|
|
"x_ende": 2000.0,
|
|
"y_ende": 800.0,
|
|
"drehung_ende": 180.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 11,
|
|
"gruppe": "gerade_ende",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 2000.0,
|
|
"y": 800.0,
|
|
"drehung": 180.0,
|
|
"x_ende": 1000.0,
|
|
"y_ende": 800.0,
|
|
"drehung_ende": 180.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
},
|
|
{
|
|
"seq": 12,
|
|
"gruppe": "gerade_ende",
|
|
"type": "gerade",
|
|
"profil": "AP110",
|
|
"laenge": 1000.0,
|
|
"x": 1000.0,
|
|
"y": 800.0,
|
|
"drehung": 180.0,
|
|
"x_ende": 0.0,
|
|
"y_ende": 800.0,
|
|
"drehung_ende": 180.0,
|
|
"hoehe": 2000,
|
|
"description": "Gerade AP110 L=1000"
|
|
}
|
|
] |