Strona główna forum Kategoria forum
klapaucius 2012-02-05 22:21
  • 2010-10-24 15:13
  • 2012-05-20 15:05
Próbuję napisać w javie prosty program, rysujący wykres funkcji. Mam wyznaczony panel do rysowania o wymiarach powiedzmy 400x400px. Jak wiemy jednak, współrzędne na tym panelu idą z lewego górnego rogu (zupełnie odwrotnie jak na klasycznym układzie współrzędnych, który znamy ze szkoły).
Czy mógłby mi ktoś przedstawić mniej więcej schemat rysowania wykresu funkcji?
Mam napisane powiedzmy coś takiego:
 
        for(int x=0; x<=400; x++){
            int y = 2 * x + 1; //przykładowy wzór funkcji
            rysuj_kropke(x, y); //rysuje kropke o wskazanych wspolrzednych
        }
 

No jak wiadomo program nie działa poprawnie...
Wydaje mi się, że muszę najpierw wyznaczyć środek mojego układu współrzędnych, inaczej mówiąc miejsce zerowe (czyli będzie to dla x = 200 i y = 200). Ale jak się do tego potem odwołać..? Jak zrobić, aby poprawnie rysowało mi wykres funkcji? A co z wartościami ujemnymi..? Pomóżcie...
Edytowany 2 razy: 2012-02-05 22:41 przez madmike
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj

Tagi:

java
2 odpowiedzi
ElevenEleven 2012-02-05 23:03
  • 2011-03-12 20:07
  • wczoraj, 14:14
  • 96
rysuj_kropkę(x+Tx, -y + Ty), gdzie Tx,Ty to środek układu współrzędnych na obrazie.

"Robienie w Javie moge porównac do spuszczania wody w kiblu za pomoca wiadra z wodą przyniesioną ze studni zza 7 gór, którą się dodatkowo samemu wykopało łyżeczką do słodzenia herbaty."
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
kalar 2012-02-06 08:40
  • 2011-05-21 13:46
  • wczoraj, 22:25
  • 22
 
           int width=nazwaPanelu.getWidth()/2;//Pobieranie szerokości panelu. Dzielimy to przez 2 w celu uzyskania środka układu współrzędnych
           int height=nazwaPanelu.getHeight()/2;//pobieranie wysokości panelu rysowania
           for(int x=0; x<=400; x++){
           rysuj_kropke(width+x, height+  ( 2 * x + 1)); //rysuje kropke o wskazanych wspolrzednych, rysowanie krpoki dla x>0
           rysuj_kropke(width-x, height+  ( -2 * x + 1));//rysowanie krpoki dla x<0
        }
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
atom

Ilość odpowiedzi na stronę

1 użytkownik(ów) przegląda ten temat (1 gości)

4programmers.net