Skip to content
Snippets Groups Projects
Commit 16760293 authored by Lahtinen Konsta Aleksi's avatar Lahtinen Konsta Aleksi
Browse files

ainii ja nollaus kans toimii

parent 02b52ba4
No related branches found
No related tags found
No related merge requests found
......@@ -77,7 +77,9 @@ public class HeatMapTestiGUIController implements Initializable {
System.out.println(answer);
String paikka = answer.toLowerCase().replace(' ', '+').replace('ä','a').replace('ö','o');
System.out.println(paikka);
//Valmistellaan paikka poistamalla skandit ja laittamalla se pieniin kirjaimiin
String urlJono = "https://nominatim.openstreetmap.org/search?q=" +paikka +"+Suomi" +"&format=json";
//Lisätään vielä suomi jokaiseen api kutsuun, jotta vältytään tilanteelta, missä saadaan kaksi eri maasta olevaa paikkaa
URI uri = new URI(urlJono);
URL url = uri.toURL();
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
......@@ -89,6 +91,7 @@ public class HeatMapTestiGUIController implements Initializable {
content.append(inputLine);
}
in.close();
//Luetaan palautettu viesti
System.out.println(content);
String[] split = content.toString().split(",");
String[] coords = new String[2];
......@@ -102,17 +105,21 @@ public class HeatMapTestiGUIController implements Initializable {
coords[1] = s;
}
//haetaan koordinaatit viestistä "," merkki jakoi jonon parhaiten
}
String[] lat = coords[0].split(":");
String[] lon = coords[1].split(":");
//Koordinaatissa oli vielä lon:62 joten täytyy saada vain numero
double lng = Double.parseDouble(lon[1].replace("\"",""));
double la = Double.parseDouble(lat[1].replace("\"",""));
double tunlat = 61;
double tunlon = 25.7;
double liikex = 32.15;
double liikey = 71.45;
//Yllä tunnetut koordinaatit sekä yhden lat/lon yksikön liike kartalla
int x = (int) (300 + (lng - tunlon) * liikex);
int y = (int) (670 - (la - tunlat) * liikey);
//300 ja 670 olivat tunnetun koordinaattien pikseli kartalla
if(piirraKuvaan(x,y)){
Dialogs.showMessageDialog("Kuva päivitettiin käynnistä sovellus uudestaan, jotta näet päivitykset");
}
......@@ -124,17 +131,19 @@ public class HeatMapTestiGUIController implements Initializable {
}
private boolean piirraKuvaan(int x, int y) {
try{
kuva.setImage(null);
//Poistetaan kuva käytöst hetkeksi, jotta voimme piirtää siihen
File file = new File(System.getProperty("user.dir") +"/src/media/UusiKarttakopio.png");
BufferedImage kartta = ImageIO.read(file);
Graphics2D sivellin = kartta.createGraphics();
sivellin.setColor(Color.BLACK);
sivellin.fillOval(x - 10, y - 10, 20, 20);
sivellin.dispose();
//Piirretään kuvaan koordinaatteihin piste, -10, jotta säde saadaan oikein
File uusi = new File(System.getProperty("user.dir")+"/src/media/UusiKarttakopio.png");
if(uusi.exists()){
System.out.println("tiedosto luotu");
......@@ -143,6 +152,7 @@ public class HeatMapTestiGUIController implements Initializable {
kuva.setImage(i);
return true;
}
//tallennetaan uusi versio kuvasta vanhan päälle ja asetetaan kuva takaisin (toisaalta javafx ei taida lukea kuin kerran kuvan joten ei ehkä tarvitsisi tehdä)
return false;
} catch (IOException e) {
......@@ -154,5 +164,6 @@ public class HeatMapTestiGUIController implements Initializable {
public void initialize(URL url, ResourceBundle resourceBundle) {
Image kuva = new Image("/media/UusiKarttakopio.png");
this.kuva.setImage(kuva);
//Asetetaan kuva
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment