Witam,
piszę prosty edytor grafiki. W skrócie wygląda to tak:
Mam klasę Area (dziedziczącą po JPanel), w której znajduje się metoda paint(), w której rysuję różne figury.
Wszystkie dane o figurach są przechowywane w ArrayList.
Każda figura jest reprezentowana przez swoją klasę, ale wszystkie dziedziczą po jednej wspólnej o nazwie AbstractObject.
W metodzie paint() znajduje się pętla, która przejeżdża po wszystkich elementach kolekcji i rysuje je.
Jednak, każdy rodzaj figury rysuje się w inny sposób: inaczej kwadraty, inaczej linie, a jeszcze inaczej koła.
Teraz mam zaimplementowaną obsługę tylko dwóch figur: kwadraty i linie proste. Implementację rozwiązałem w taki sposób, że w pętli znajduje się if, który sprawdza z jaką figurą mamy do czynienia i odpowiednimi funkcjami ją rysuje.
Jednak w przyszłości drzewko z if'ów bardzo by się rozrosło, dlatego chciałbym w każdej z klas reprezentujących daną figurę utworzyć metodę, której wywołanie rysowałoby odpowiednią rzecz.
I tu pojawiają się pytania: jak to zrobić? Jak przemieszczać dane graficzne między obiektami?
Pozdrawiam :)