Rysowanie/pokazanie fragmentu narysowanego panela

0

Witam,

Mam narysowany obrazek na JPanel metoda paint powiedzmy 100x100

Potrzebuje w drugim mniejszym panelu odrysowac/pokazac tylko jego fragment np. od x= 20 do x = 50 i y = 20 do y = 50.

Czy mozecie podpowiedziec jak taki kod napisac, skoro w Panelu zawsze metoda Paint odrysowuje od 0,0 a nie chce zmieniac kordynatow obiektu rysowanego

1

metoda repaint może przyjmować jako argument współrzędne które ma odrysować. Natomiast jeżeli przeciążyłeś metodę paint to odrysowanie kawałka możesz w innym panelu spróbować wyciągnąć obiekt typu Graphics i przekopiować go do innego panelu

0

Dziękuję bardzo, moja głupota, że nie spojrzałem w dokumentację, a przecież metoda repaint pasuje idealnie. Jak przeciąże painta i użyje obiektu z getGraphics kopiując to dodatkowa robota jak zmieni się dziedziczony obiekt, a zmiany w malowanym obiekcie będą wykonywane na bieżąco, tak chyba będzie prościej, muszę przetestować

0

Ok juz znalazlem odpowiedz.

Najprosciej zrobic to przekopiowujac zawartosc panela do BufferedImage :

BufferedImage bi;

Graphics2D g = bi.createGraphics();

panel.paint(g);

A nastepnie na drugim panelu rysujemy BufferedImage wedlug ustalonych z gory kordynatow.

Gdyby ktos chcial wiedziec wiecej prosze o info, do zamkniecia

1 użytkowników online, w tym zalogowanych: 0, gości: 1