Robie aplikacje okienkowa ktora ma rysowac krzywe beziera na podstawie punktow wybranych przez uzytkownika. Tutaj wklejam dotychczasowy kod:
https://pastebin.com/0Hq4nz6A
Czy metoda dajKrzywa() dziala poprawnie i czy sa one poprawnie rysowane? Jak dodac opcje w menu czyszczaca dotychczasowa plansze i pozwalajaca na wstawiane punktow od nowa?
0
0
Będzie bump z mojej strony.
public ArrayList<Punkt> dajKrzywa(){
ArrayList<Punkt>P=new ArrayList();
ArrayList<Punkt> wynikowa =new ArrayList();
if(lista.size()>2){
ArrayList<Punkt> R=new ArrayList();
for(int i=0;i<lista.size();i++){
P.add(lista.get(i));
}
for(int t =0 ;t<100;t++){
int n=lista.size()-1;
for(int i=0;i<n;i++){
R.add(P.get(i)); }
int m=n;
while(m>0){
Punkt Q= null;
for(int j=0;j<m-1;j++){
Q = new Punkt (R.get(j).x + t*(R.get(j+1).x-R.get(j).x),R.get(j).y + t*(R.get(j+1).y-R.get(j).y)); }
m=m-1;
for(int k=0;k<m;k++){
R.set(k, Q);
}
}
wynikowa.add(R.get(m));
}
}
return wynikowa;
}
Formatowanie tragiczne, nazewnictwo tragiczne, czytelność tego zerowa. Plus nie wiem jak się wylicza krzywe, warto dorzucić tutaj troszeczkę teorii.
Czy metoda dajKrzywa() dziala poprawnie i czy sa one poprawnie rysowane?
I nie zapominaj, że pytasz o dwie kompletnie różne rzeczy. Obie można elegancko osobno przetestować (jak napiszesz dobrze kod)