Skip to content

[TASK] | Stworzenie systemu szczebelków (ang. rang) #15

@PEXEL2002

Description

@PEXEL2002

Opis zadania i szczegółowe wymagania

Celem jest stworzenie dynamicznego silnika graficznego dla schematów drabinkowych (LAD), który pozwoli na budowanie nieskończonej liczby szczebli (Rungs) przy zachowaniu ścisłych reguł elektrotechnicznych.
Kluczowe wymagania:

  • Dynamiczne skalowanie: Możliwość dodawania/usuwania szczebli w dowolnym miejscu schematu bez naruszania struktury pozostałych.
  • Logika pozycjonowania: System musi wymuszać poprawną kolejność: styki (wejścia) po lewej stronie, cewki (wyjścia) zawsze na samym końcu szczebla (przy prawej szynie).
  • Obsługa rozgałęzień (Branching): Implementacja pionowych linii łączących (np. dla logiki OR) z automatycznym wyrównywaniem siatki (Grid alignment).

Definicja wykonania zadania

  • Dynamiczność: Użytkownik może dodać $n$ szczebli; wydajność renderowania pozostaje stabilna przy dużej skali.
  • Walidacja wstawiania: System uniemożliwia upuszczenie cewki (Output) przed stykiem (Input) lub wewnątrz gałęzi wejściowej (jeśli takie są założenia projektowe).
  • Logika OR (Parallel): Prawidłowe renderowanie połączeń równoległych; system automatycznie rozciąga szczebel w pionie przy dodawaniu kolejnych gałęzi.
  • Serializacja: Układ szczebli i elementów jest poprawnie zapisywany i odczytywany (np. do formatu XML/JSON).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions