Programowanie graficzne - co z czym?

Programowanie graficzne - co z czym?
Rafał Kapłon
  • Rejestracja:ponad 7 lat
  • Ostatnio:prawie 7 lat
  • Postów:8
0

Witam,
Stawiam jeszcze 'nieśmiałe' kroki w C#, i mam problem z wykonaniem projektu, którego cząstka ma być odpowiedzialna za zaprogramowanie sterownika.
Aplikacja będzie miała za pomocą wcześniej zdefiniowanych bloków funkcyjnych, łączono odpowiednio za pomocą strzałek - generować kod w czystym C.
Tu powstaje problem - Tworzenie bloków, rysowanie linii pomiędzy węzłami, analiza połączeń...
Może ktoś z Was miał z czyś takim do czynienia? Może mógł bym liczyć na drobną pomoc/ pomysł jak się za to zabrać?

Manuel.Artificer
Manuel.Artificer
  • Rejestracja:ponad 7 lat
  • Ostatnio:12 miesięcy
  • Postów:177
0

No to tak. Moja propozycja jest taka. Najpierw musisz sobie zdefiniować te bloczki np. używając klasy Panel i ustawić im jakiś obrazek jako tło, powiedzmy znajdujące się na liście z boku głównego okna, potem byś musiał napisać kod do obsługi DragDrop, potem przesuwanie wstawionych do głownego okna bloczków za pomocą myszy, operowanie na ich właściwości Location i oczywiście odświeżanie okna. Strzałki mógłbyś rysować za pomocą klasy Graphics. A jak już byś miał gotowy ten programik to zrobić np. przycisk generuj kod i pobrać wszystkie bloczki korzystając z LINQ (workSpace.Controls.OfType<Panel>), potem posortować na podstawie ich położenia no i wtedy na podstawie otrzymanej kolekcji wygenerować kod w C. To bym proponował zrobić na początku, żeby wgl. coś działało. Kod ten służyłby do obsługi tylko prostego schematu w jednej linii od lewej do prawej), a potem bawić się dalej, ustalać kolejność na podstawie strzałek

Ktos
Moderator
  • Rejestracja:prawie 23 lata
  • Ostatnio:dzień
0

Takie uproszczone podejście jak proponuje @Manuel.Artificer zrobiłem kiedyś dla programu, który generował kod dla Arduino właśnie z takich klocków:

(dół to "paleta", góra to ścieżka wykonania)

screenshot-20171025191416.png

Ale jak rozumiem, oczekujesz czegoś bardziej skomplikowanego?

edytowany 3x, ostatnio: Ktos
gg
  • Rejestracja:około 9 lat
  • Ostatnio:około rok
  • Lokalizacja:Kraków
  • Postów:574
0
Rafał Kapłon
  • Rejestracja:ponad 7 lat
  • Ostatnio:prawie 7 lat
  • Postów:8
0

W zasadzie to założenie jest bardzo podobne. Tyle że bloki chciałbym łączyć za pomocą linii. Całość będzie trochę bardziej rozbudowana ale to nie ma na razie znaczenia.
Chciał bym zacząć od kilku prostych elementów jak @Ktos

title

Oczywiście interface nie będzie tak dopieszczony jak ten powyżej.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.