From 1a9c238e65042a164bae2c2b559241c23f9122fb Mon Sep 17 00:00:00 2001 From: Ivan Pribela Date: Mon, 27 Nov 2017 15:07:50 +0100 Subject: [PATCH] Lavirint, objedinjeno resenje, ubacen prikaz puteva --- .../Lavirint/ObjedinjenoResenje/Resenje.java | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java b/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java index 9b92c19..84c1af5 100644 --- a/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java +++ b/PretrazivanjeSaVracanjem/Lavirint/ObjedinjenoResenje/Resenje.java @@ -2,6 +2,8 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +import javafx.scene.paint.Color; + /** * Klasa Resenje koristi se za pamcenje puta kroz mapu. */ @@ -14,27 +16,39 @@ public class Resenje { // ali tako da ne moze da se utice na sam sadrzaj te liste private List nepromenljivaListaPolja; - // Kreira novo prazno resenje - public Resenje() { + // Potrebno za graficki prikaz + private String naziv; + + // Potrebno za graficki prikaz + private Resenje(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 Resenje() { + this("Trenutni put", Prikaz.TIRKIZNA); } // Kreira novo resenje sa istim sadrzajem kao original public Resenje(Resenje original) { - this(); + this("Najbolji put", 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 resenja public void izbaciKraj() { if (getLength() > 0) { polja.remove(getLength() - 1); + Prikaz.osveziPut(naziv); } else { throw new IllegalStateException("Resenje je vec prazno"); } -- 2.17.1