gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
Lavirint, objedinjeno resenje, doterane praznine i formatiranja
[spa2-materijali.git] / PretrazivanjeSaVracanjem / Lavirint / SuperKomplikovanoResenje / Put.java
index 9ecf9a1..c6bdda8 100644 (file)
@@ -9,91 +9,91 @@ import javafx.scene.paint.Color;
  */\r
 public class Put {\r
 \r
-       // Pamtimo sva polja na putu\r
-       private ArrayList<Polje> polja;\r
-\r
-       // Dodato da se omoguci pristup poljima puta "od spolja" (za proveru kvaliteta puta na primer),\r
-       // ali tako da ne moze da se utice na sam sadrzaj te liste\r
-       private List<Polje> nepromenljivaListaPolja;\r
-\r
-       // Potrebno za graficki prikaz\r
-       private String naziv;\r
-\r
-       // Potrebno za graficki prikaz\r
-       private Put(String naziv, Color boja) {\r
-               polja = new ArrayList<Polje>();\r
-               nepromenljivaListaPolja = Collections.unmodifiableList(polja);\r
-               this.naziv = naziv;\r
-               Prikaz.put(naziv, polja, Polje::getX, Polje::getY, this::toString, boja);\r
-       }\r
-\r
-       // Kreira novo prazno resenje\r
-       public Put() {\r
-               this("Trenutni", Prikaz.TIRKIZNA);\r
-       }\r
-\r
-       // Kreira novo resenje sa istim sadrzajem kao original\r
-       public Put(Put original) {\r
-               this("Optimalan", Prikaz.LJUBICASTA);\r
-               polja.addAll(original.polja);\r
-       }\r
-\r
-       // Dodaje polje u resenje\r
-       public void dodaj(int x, int y, int v) {\r
-               polja.add(new Polje(x, y, v));\r
-               Prikaz.osveziPut(naziv);\r
-       }\r
-\r
-       // Izbacuje poslednje polje iz puta\r
-       public void izbaciKraj() {\r
-               if (getLength() > 0) {\r
-                       polja.remove(getLength() - 1);\r
-                       Prikaz.osveziPut(naziv);\r
-               } else {\r
-                       throw new IllegalStateException("Resenje je vec prazno");\r
-               }\r
-       }\r
-\r
-       // Stampa put\r
-       public void stampaj() {\r
-               System.out.println();\r
-               System.out.println("Put duzine " + getLength() + " i vrednosti " + getVrednost());\r
-               for (int i = 0; i < getLength(); i++) {\r
-                       System.out.println(polja.get(i));\r
-               }\r
-               Prikaz.put("Trenutni", null, null, null);\r
-               Prikaz.put("Optimalan", null, null, null);\r
-               Prikaz.put("Najbolji", polja, Polje::getX, Polje::getY, this::toString, Prikaz.LJUBICASTA);\r
-       }\r
-\r
-       public String toString() {\r
-               return getVrednost() + "\u20ac " + getLength() + "m";\r
-       }\r
-\r
-       // Vraca duzinu puta\r
-       public int getLength() {\r
-               return polja.size();\r
-       }\r
-\r
-       // Vraca i-to polje na putu\r
-       // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja\r
-       public Polje getPolje(int i) {\r
-               return polja.get(i);\r
-       }\r
-\r
-       // Vraca sva polja na putu\r
-       // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja\r
-       public List<Polje> getPolja() {\r
-               return nepromenljivaListaPolja;\r
-       }\r
-\r
-       // Vraca vrednost puta\r
-       // Vrednost se definise kao zbir svih vrednosti polja na putu\r
-       public int getVrednost() {\r
-               int rez = 0;\r
-               for (Polje p : polja) {\r
-                       rez = rez + p.getV();\r
-               }\r
-               return rez;\r
-       }\r
+    // Pamtimo sva polja na putu\r
+    private ArrayList<Polje> polja;\r
+\r
+    // Dodato da se omoguci pristup poljima puta "od spolja" (za proveru kvaliteta puta na primer),\r
+    // ali tako da ne moze da se utice na sam sadrzaj te liste\r
+    private List<Polje> nepromenljivaListaPolja;\r
+\r
+    // Potrebno za graficki prikaz\r
+    private String naziv;\r
+\r
+    // Potrebno za graficki prikaz\r
+    private Put(String naziv, Color boja) {\r
+        polja = new ArrayList<Polje>();\r
+        nepromenljivaListaPolja = Collections.unmodifiableList(polja);\r
+        this.naziv = naziv;\r
+        Prikaz.put(naziv, polja, Polje::getX, Polje::getY, this::toString, boja);\r
+    }\r
+\r
+    // Kreira novo prazno resenje\r
+    public Put() {\r
+        this("Trenutni", Prikaz.TIRKIZNA);\r
+    }\r
+\r
+    // Kreira novo resenje sa istim sadrzajem kao original\r
+    public Put(Put original) {\r
+        this("Optimalan", Prikaz.LJUBICASTA);\r
+        polja.addAll(original.polja);\r
+    }\r
+\r
+    // Dodaje polje u resenje\r
+    public void dodaj(int x, int y, int v) {\r
+        polja.add(new Polje(x, y, v));\r
+        Prikaz.osveziPut(naziv);\r
+    }\r
+\r
+    // Izbacuje poslednje polje iz puta\r
+    public void izbaciKraj() {\r
+        if (getLength() > 0) {\r
+            polja.remove(getLength() - 1);\r
+            Prikaz.osveziPut(naziv);\r
+        } else {\r
+            throw new IllegalStateException("Resenje je vec prazno");\r
+        }\r
+    }\r
+\r
+    // Stampa put\r
+    public void stampaj() {\r
+        System.out.println();\r
+        System.out.println("Put duzine " + getLength() + " i vrednosti " + getVrednost());\r
+        for (int i = 0; i < getLength(); i++) {\r
+            System.out.println(polja.get(i));\r
+        }\r
+        Prikaz.put("Trenutni", null, null, null);\r
+        Prikaz.put("Optimalan", null, null, null);\r
+        Prikaz.put("Najbolji", polja, Polje::getX, Polje::getY, this::toString, Prikaz.LJUBICASTA);\r
+    }\r
+\r
+    public String toString() {\r
+        return getVrednost() + "\u20ac " + getLength() + "m";\r
+    }\r
+\r
+    // Vraca duzinu puta\r
+    public int getLength() {\r
+        return polja.size();\r
+    }\r
+\r
+    // Vraca i-to polje na putu\r
+    // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja\r
+    public Polje getPolje(int i) {\r
+        return polja.get(i);\r
+    }\r
+\r
+    // Vraca sva polja na putu\r
+    // Ne koristi se u ovoj verziji zadatka. Moze se koristiti za proveru kvaliteta resenja\r
+    public List<Polje> getPolja() {\r
+        return nepromenljivaListaPolja;\r
+    }\r
+\r
+    // Vraca vrednost puta\r
+    // Vrednost se definise kao zbir svih vrednosti polja na putu\r
+    public int getVrednost() {\r
+        int rez = 0;\r
+        for (Polje p : polja) {\r
+            rez = rez + p.getV();\r
+        }\r
+        return rez;\r
+    }\r
 }\r
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner