From 652df34d19ef0c716007b94e5eee0d91ddd8f3ae Mon Sep 17 00:00:00 2001 From: Eric Duminil <eric.duminil@gmail.com> Date: Wed, 19 Oct 2022 10:43:24 +0200 Subject: [PATCH] Show how many buildings have been extracted. --- .../simstadt/regionchooser/RegionChooserBrowser.java | 2 +- .../eu/simstadt/regionchooser/RegionExtractor.java | 2 +- .../website/script/simstadt_openlayers.js | 11 ++++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java b/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java index cce0985..8e59d50 100644 --- a/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java +++ b/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java @@ -98,7 +98,7 @@ public Integer call() throws IOException, XPathParseException, NavException, Par downloadTask.setOnRunning(e -> jsApp.call("downloadStart")); - downloadTask.setOnSucceeded(e -> jsApp.call("downloadFinished")); + downloadTask.setOnSucceeded(e -> jsApp.call("downloadFinished", e.getSource().getValue())); new Thread(downloadTask).start(); } diff --git a/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java b/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java index 665c32d..c9c460f 100644 --- a/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java +++ b/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java @@ -88,7 +88,7 @@ static int selectRegionDirectlyFromCityGML(String wktPolygon, String srsName, Wr LOGGER.warning("No building found in the selected region."); } - LOGGER.info("Buildings found in selected region " + foundBuildingsCount); + LOGGER.info("Buildings found in selected region : " + foundBuildingsCount); //NOTE: This could be a problem if header starts with <core:CityModel> and footer ends with </CityModel> sb.append(citygml.getFooter()); return foundBuildingsCount; diff --git a/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js b/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js index 7ce789a..99f3b8e 100644 --- a/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js +++ b/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js @@ -246,13 +246,17 @@ const regionChooser = (function(){ publicScope.downloadStart = function(){ document.getElementById("download_region_button").disabled = true; document.documentElement.className = 'wait'; - dataPanel.prepend("<h2 id='download_start' class='ok'>Starting to extract region.</h2><br/>\n"); + dataPanel.prepend("<h2 id='download_start' class='ok'>Starting to extract region...</h2><br/>\n"); } - publicScope.downloadFinished = function(){ + publicScope.downloadFinished = function(count){ document.documentElement.className = ''; // Stop waiting document.getElementById("download_start").remove(); - dataPanel.prepend("<h2 class='ok'>Region has been extracted</h2><br/>\n"); + if (count > 0){ + dataPanel.prepend("<h2 class='ok'>Done! (" + count + " buildings found) </h2><br/>\n"); + } else { + dataPanel.prepend("<h2 class='error'>No building has been found in this region</h2><br/>\n"); + } var button = document.getElementById("download_region_button"); if (button){ // Region might have been modified since download start button.disabled = false; @@ -325,6 +329,7 @@ const regionChooser = (function(){ } finally { displayHelp(); document.documentElement.className = ''; // Stop waiting + kml_source.getFeatures().forEach(f => refreshStyle(f, "original")); draw.setActive(true); drawnLayer.getFeatures().clear(); intersections.clear(); -- GitLab