diff --git a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricher.java b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricher.java index 9ddcda468a754aceaca4af742fb25b553e1e5a39..c22e04c803f5289eddae0aeb28f8e7784c9fbd68 100644 --- a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricher.java +++ b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricher.java @@ -91,7 +91,7 @@ public class AlkisGreenEnricher { String inputString = inFile.getFileName().toString(); String inputPathWithoutFileEnding = inputString.substring(0, inputString.lastIndexOf('.')); - Path outputPath = Paths.get("data", inputPathWithoutFileEnding + "_with_alkis_greens.gml"); + Path outputPath = Paths.get("data", inputPathWithoutFileEnding + "_with_alkis_greens_realistic.gml"); System.out.println("Writing output file."); GreenEnricher.writeCityGML(cityModel, outputPath); System.out.println("Done"); diff --git a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeKatasterData.java b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeKatasterData.java index 355da9aec5cdfb54475d904d54e3ae981015ac01..7d4706c8d27900ddd188a7b131a39093f7bfc58e 100644 --- a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeKatasterData.java +++ b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeKatasterData.java @@ -65,8 +65,11 @@ public class TreeKatasterData { if (trunkCirc == null) { continue; } - tree.setTrunkRadius(Integer.parseInt(trunkCirc.toString()) / (2 * Math.PI) / 100); - + int circInCm = Integer.parseInt(trunkCirc.toString()); + if (circInCm == 0) { + circInCm = 89; + } + tree.setTrunkRadius(circInCm / (2 * Math.PI) / 100); result.getTrees().add(tree); } } diff --git a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeUtils.java b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeUtils.java index 970d52e784ad0029f7b77bd67a80ed5b2de745fe..105ca738b360c4a21e3bec423cf1f2f46d6178bb 100644 --- a/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeUtils.java +++ b/enrich-citygml-with-greenarea/src/main/java/de/hft/stuttgart/citygml/green/osm/TreeUtils.java @@ -16,11 +16,15 @@ import org.xmlobjects.gml.model.geometry.aggregates.MultiSurfaceProperty; public class TreeUtils { public static void insertTrees(CityModel cityModel, OsmData osmData) throws IOException { - TreeKatasterData katasterData = TreeKatasterData.parseTreeKatasterData(Paths.get("data", "Baum.shp")); + TreeKatasterData katasterData = TreeKatasterData.parseTreeKatasterData(Paths.get("data", "Trees_realisticScenario_20240201.shp")); generateTreesFromKataster(cityModel, katasterData); +// TreeKatasterData katasterData2 = TreeKatasterData.parseTreeKatasterData(Paths.get("data", "Trees_realistic_20240201.shp")); +// generateTreesFromKataster(cityModel, katasterData2); + // All kataster trees are taken, osm trees are removed filterDuplicateTreesFromOSM(osmData, katasterData); +// filterDuplicateTreesFromOSM(osmData, katasterData2); generateTreesFromOSM(cityModel, osmData); @@ -52,7 +56,7 @@ public class TreeUtils { MultiSurface generatedTree = TreeGenerator.generateTree(coordinate, trunkRadius, trunkHeight, crownRadius, crownRadius, crownHeight); SolitaryVegetationObject cover = new SolitaryVegetationObject(); - cover.setSpecies(new Code("Acer campestre")); + cover.setSpecies(new Code("Acer platanoides")); cover.setId(UUID.randomUUID().toString()); cover.setLod2MultiSurface(new MultiSurfaceProperty(generatedTree)); cityModel.getCityObjectMembers().add(new AbstractCityObjectProperty(cover)); diff --git a/enrich-citygml-with-greenarea/src/test/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricherTest.java b/enrich-citygml-with-greenarea/src/test/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricherTest.java index 4ed60d453a5ff7222eaad33debc7b1a84a64c7ea..b128b5d3bc07739f9c597a88754628178052c1bf 100644 --- a/enrich-citygml-with-greenarea/src/test/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricherTest.java +++ b/enrich-citygml-with-greenarea/src/test/java/de/hft/stuttgart/citygml/green/alkis/AlkisGreenEnricherTest.java @@ -13,7 +13,7 @@ class AlkisGreenEnricherTest { @Test void testAlkisGreen() throws IOException, CityGMLContextException, CityGMLReadException, JAXBException, CityGMLWriteException { - String[] args = new String[] {"data/Grombühl_v3.gml"}; + String[] args = new String[] {"data/Grombühl_v4_case_study.gml"}; AlkisGreenEnricher.main(args); }