gitweb on Svarog
projekti pod git sistemom za održavanje verzija -- projects under the git version control systemdiff --git a/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java b/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java
import java.util.Collections;\r
import java.util.List;\r
\r
import java.util.Collections;\r
import java.util.List;\r
\r
+import javafx.scene.paint.Color;\r
+\r
/**\r
* Klasa Resenje koristi se za pamcenje puta kroz mapu.\r
*/\r
/**\r
* Klasa Resenje koristi se za pamcenje puta kroz mapu.\r
*/\r
// ali tako da ne moze da se utice na sam sadrzaj te liste\r
private List<Polje> nepromenljivaListaPolja;\r
\r
// ali tako da ne moze da se utice na sam sadrzaj te liste\r
private List<Polje> nepromenljivaListaPolja;\r
\r
- // Kreira novo prazno resenje\r
- public Resenje() {\r
+ // Potrebno za graficki prikaz\r
+ private String naziv;\r
+\r
+ // Potrebno za graficki prikaz\r
+ private Resenje(String naziv, Color boja) {\r
polja = new ArrayList<Polje>();\r
nepromenljivaListaPolja = Collections.unmodifiableList(polja);\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 Resenje() {\r
+ this("Trenutni put", Prikaz.TIRKIZNA);\r
}\r
\r
// Kreira novo resenje sa istim sadrzajem kao original\r
public Resenje(Resenje original) {\r
}\r
\r
// Kreira novo resenje sa istim sadrzajem kao original\r
public Resenje(Resenje original) {\r
- this();\r
+ this("Najbolji put", 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
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 resenja\r
public void izbaciKraj() {\r
if (getLength() > 0) {\r
polja.remove(getLength() - 1);\r
}\r
\r
// Izbacuje poslednje polje iz resenja\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
} else {\r
throw new IllegalStateException("Resenje je vec prazno");\r
}\r