X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=spa2-materijali.git;a=blobdiff_plain;f=PretrazivanjeSaVracanjem%2FLavirint%2FObjedinjenoResenje%2FPut.java;fp=PretrazivanjeSaVracanjem%2FLavirint%2FObjedinjenoResenje%2FPut.java;h=0000000000000000000000000000000000000000;hp=e9428836ce434675ed87f755a031992dece8f320;hb=548ea5272576d592053c4e99f512b2fadc1053f7;hpb=1b832014e4d2d31b2502f4688623140d722005b1 diff --git a/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Put.java b/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Put.java deleted file mode 100644 index e942883..0000000 --- a/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Put.java +++ /dev/null @@ -1,98 +0,0 @@ -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import javafx.scene.paint.Color; - -/** - * Klasa Put koristi se za pamcenje puta kroz mapu. - */ -public class Put { - - // Pamtimo sva polja na putu - private ArrayList polja; - - // Dodato da se omoguci pristup poljima puta "od spolja" (za proveru kvaliteta puta na primer), - // ali tako da ne moze da se utice na sam sadrzaj te liste - private List nepromenljivaListaPolja; - - // Potrebno za graficki prikaz - private String naziv; - - // Potrebno za graficki prikaz - private Put(String naziv, Color boja) { - polja = new ArrayList(); - nepromenljivaListaPolja = Collections.unmodifiableList(polja); - this.naziv = naziv; - Prikaz.put(naziv, polja, Polje::getX, Polje::getY, this::toString, boja); - } - - // Kreira novo prazno resenje - public Put() { - this("Trenutni", Prikaz.TIRKIZNA); - } - - // Kreira novo resenje sa istim sadrzajem kao original - public Put(Put original) { - this("Optimalan", Prikaz.LJUBICASTA); - polja.addAll(original.polja); - } - - // Dodaje polje u resenje - public void dodaj(int x, int y, int v) { - polja.add(new Polje(x, y, v)); - Prikaz.osveziPut(naziv); - } - - // Izbacuje poslednje polje iz puta - public void izbaciKraj() { - if (getLength() > 0) { - polja.remove(getLength() - 1); - Prikaz.osveziPut(naziv); - } else { - throw new IllegalStateException("Resenje je vec prazno"); - } - } - - // Stampa put - public void stampaj() { - System.out.println(getLength()); - for (int i = 0; i < getLength(); i++) { - System.out.println(polja.get(i)); - } - Prikaz.put("Trenutni", null, null, null); - Prikaz.put("Optimalan", null, null, null); - Prikaz.put("Najbolji", polja, Polje::getX, Polje::getY, this::toString, Prikaz.LJUBICASTA); - } - - public String toString() { - return getVrednost() + "\u20ac " + getLength() + "m"; - } - - // Vraca duzinu puta - public int getLength() { - return polja.size(); - } - - // Vraca i-to polje na putu - // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja - public Polje getPolje(int i) { - return polja.get(i); - } - - // Vraca sva polja na putu - // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja - public List getPolja() { - return nepromenljivaListaPolja; - } - - // Vraca vrednost puta - // Vrednost se definise kao zbir svih vrednosti polja na putu - public int getVrednost() { - int rez = 0; - for (Polje p : polja) { - rez = rez + p.getV(); - } - return rez; - } -}