From af8031da15dc675518aa29e2823df9971d6fca8b Mon Sep 17 00:00:00 2001 From: Eric Duminil <eric.duminil@gmail.com> Date: Mon, 10 Oct 2022 10:28:22 +0200 Subject: [PATCH] Notes. --- .../regionchooser/RegionChooserCommandLineInterface.java | 9 ++++++--- .../regionchooser/fast_xml_parser/BuildingXmlNode.java | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/eu/simstadt/regionchooser/RegionChooserCommandLineInterface.java b/src/main/java/eu/simstadt/regionchooser/RegionChooserCommandLineInterface.java index 0059074..7b01e1d 100644 --- a/src/main/java/eu/simstadt/regionchooser/RegionChooserCommandLineInterface.java +++ b/src/main/java/eu/simstadt/regionchooser/RegionChooserCommandLineInterface.java @@ -6,6 +6,7 @@ import java.nio.file.Paths; import java.util.Scanner; import java.util.concurrent.Callable; +import java.util.logging.Logger; import org.locationtech.jts.geom.Polygon; import org.locationtech.jts.io.WKTReader; import org.locationtech.jts.io.WKTWriter; @@ -23,6 +24,9 @@ @Command(name = "region_chooser", mixinStandardHelpOptions = true, version = "regionChooser x.x", description = "Extracts a region from one or more citygmls.", sortOptions = false) class RegionChooserCommandLineInterface implements Callable<Integer> { + + private static final Logger LOGGER = Logger.getLogger(RegionChooserCommandLineInterface.class.getName()); + @Option(names = { "-i", "--input" }, required = true, split = ",", description = "Citygml files to extract from", paramLabel = "input.gml") //TODO: Allow folders too? @@ -47,7 +51,6 @@ class RegionChooserCommandLineInterface implements Callable<Integer> public Integer call() throws Exception { //TODO: Move as much logic to utils as possible //TODO: Test - //TODO: Use logger CoordinateReferenceSystem localCRS; if (espgId == null) { @@ -55,7 +58,7 @@ public Integer call() throws Exception { } else { localCRS = RegionChooserUtils.crsFromSrsName("EPSG:" + espgId); } - System.out.println("Coordinate system is " + localCRS); + LOGGER.info("Coordinate system: " + localCRS); String wktPolygon; @@ -81,7 +84,7 @@ public Integer call() throws Exception { .write(RegionChooserUtils.changePolygonCRS(wgs84Polygon, RegionChooserUtils.WGS84, localCRS)); } - System.out.println("WKT Polygon : " + wktPolygon); + LOGGER.info("WKT Polygon expressed in local coordinates: " + wktPolygon); StringBuilder sb = RegionExtractor.selectRegionDirectlyFromCityGML(wktPolygon, localCRS.toString(), citygmls); diff --git a/src/main/java/eu/simstadt/regionchooser/fast_xml_parser/BuildingXmlNode.java b/src/main/java/eu/simstadt/regionchooser/fast_xml_parser/BuildingXmlNode.java index 8a752b0..1c20985 100644 --- a/src/main/java/eu/simstadt/regionchooser/fast_xml_parser/BuildingXmlNode.java +++ b/src/main/java/eu/simstadt/regionchooser/fast_xml_parser/BuildingXmlNode.java @@ -28,7 +28,8 @@ public BuildingXmlNode(VTDNav navigator, int buildingOffset, int buildingLength) this.coordinatesFinder = new AutoPilot(navigator); this.buildingLength = buildingLength; this.buildingOffset = buildingOffset; - extractCoordinates(); //NOTE: Should it be done lazily? Is there any reason to extract a BuildingXmlNode without coordinates? + extractCoordinates(); + //TODO: Get Building ID too, in order to avoid duplicates? } public boolean hasCoordinates() { -- GitLab