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 4344028d0cb645bec3972ac7bbada468434d68bd..b891e04764af9388caf091a2d19ec0a6de4a2d05 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
@@ -102,7 +102,7 @@ public class AlkisGreenEnricher
 		GreenEnricher.createTransformers(cityModel);
 
 		OsmData osmData = new OsmData();
-//		String boundingBoxString = GreenEnricher.extractAndConvertBoundingBox(cityModel, osmData);
+		String boundingBoxString = GreenEnricher.extractAndConvertBoundingBox(cityModel, osmData);
 //		String boundingBoxBasename = boundingBoxString.replace(",", "__").replace('.', '_');
 //		Path osmCache = Paths.get("data", "cache", "osm_response_" + boundingBoxBasename + ".xml");
 //		if (!Files.exists(osmCache)) {
@@ -144,8 +144,6 @@ public class AlkisGreenEnricher
 		System.out.println("Writing output file.");
 		GreenEnricher.writeCityGML(cityModel, outputPath);
 		System.out.println("Done");
-
-
 	}
 
 	private static void parseAlkisData(OsmData osmData, Path alkisDataPath) throws MalformedURLException, IOException {
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 7d4706c8d27900ddd188a7b131a39093f7bfc58e..c6007704c6f8c8b0783e5418c3d4f7a1ac25245a 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
@@ -50,7 +50,7 @@ public class TreeKatasterData {
 				if (treeHeightObject == null) {
 					continue;
 				}
-				int treeHeight = Integer.parseInt(treeHeightObject.toString());
+				double treeHeight = Double.parseDouble(treeHeightObject.toString());
 				double crownHeight = CROWN_PERCENTAGE * treeHeight;
 				double trunkHeight = TRUNK_PERCENTAGE * treeHeight;
 				tree.setCrownHeight(crownHeight);
@@ -65,8 +65,8 @@ public class TreeKatasterData {
 				if (trunkCirc == null) {
 					continue;
 				}
-				int circInCm = Integer.parseInt(trunkCirc.toString());
-				if (circInCm == 0) {
+				double circInCm = Double.parseDouble(trunkCirc.toString());
+				if (circInCm <= 0.1) {
 					circInCm = 89;
 				}
 				tree.setTrunkRadius(circInCm / (2 * Math.PI) / 100);
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 f66b6400778b9cb2dad6cf474297d7641db31e76..ee549f92cce0e1e56797dddad54a62e20a2e2769 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
@@ -2,6 +2,7 @@ package de.hft.stuttgart.citygml.green.osm;
 
 import java.io.IOException;
 import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.Iterator;
 import java.util.UUID;
 import org.citygml4j.core.model.core.AbstractCityObjectProperty;
@@ -9,6 +10,7 @@ import org.citygml4j.core.model.core.CityModel;
 import org.citygml4j.core.model.vegetation.SolitaryVegetationObject;
 import org.locationtech.jts.geom.Coordinate;
 import org.locationtech.jts.geom.GeometryFactory;
+import org.locationtech.jts.geom.Point;
 import org.locationtech.jts.geom.Polygon;
 import org.xmlobjects.gml.model.basictypes.Code;
 import org.xmlobjects.gml.model.geometry.aggregates.MultiSurface;
@@ -23,6 +25,10 @@ public class TreeUtils {
 			throws IOException {
 		TreeKatasterData katasterData = TreeKatasterData.parseTreeKatasterData(baumKatasterPath);
 		generateTreesFromKataster(cityModel, katasterData, osmData, wktPolygon);
+		
+//		TreeKatasterData added = TreeKatasterData.parseTreeKatasterData(baumKatasterPath);
+//		filterDuplicateTrees(katasterData, added);
+//		generateTreesFromKataster(cityModel, added, osmData, wktPolygon);
 
 		// TreeKatasterData katasterData2 =
 		// TreeKatasterData.parseTreeKatasterData(Paths.get("data",
@@ -36,6 +42,19 @@ public class TreeUtils {
 //		generateTreesFromOSM(cityModel, osmData, wktPolygon);
 
 	}
+	
+	private static void filterDuplicateTrees(TreeKatasterData truth, TreeKatasterData added) {
+		for (Iterator<Tree> iterator = added.getTrees().iterator(); iterator.hasNext();) {
+			Tree tp = iterator.next();
+			// if another tree from kataster is within 1m ignore it
+			for (Tree tree : truth.getTrees()) {
+				if (tp.getPoint().distance(tree.getPoint()) < 1) {
+					iterator.remove();
+					break;
+				}
+			}
+		}
+	}
 
 	private static void filterDuplicateTreesFromOSM(OsmData osmData, TreeKatasterData katasterData) {
 		for (Iterator<TreePoint> iterator = osmData.getTreePoints().iterator(); iterator.hasNext();) {
@@ -80,8 +99,9 @@ public class TreeUtils {
 		for (Tree tree : katasterData.getTrees()) {
 			// check if tree is in area
 			Coordinate coordinate = tree.getPoint().getCoordinate();
-			if ((wktPolygon != null && !wktPolygon.contains(FACTORY.createPoint(coordinate)))
-					|| !osmData.getBoundingBox().contains(FACTORY.createPoint(coordinate))) {
+			Point point = FACTORY.createPoint(coordinate);
+			if ((wktPolygon != null && !wktPolygon.contains(point))
+					|| (wktPolygon == null && !osmData.getBoundingBox().contains(point))) {
 				continue;
 			}
 
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 adeb2c3e28ac0fcafc3ff5369840b99f40e6862b..a896e0d15bf86baf246a6b0a76969c139dded5a8 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
@@ -27,7 +27,7 @@ class AlkisGreenEnricherTest
 		AlkisGreenEnricher.main(args);
 		assertTrue(Files.exists(outputGML));
 	}
-
+	
 	@Test
 	void testGreen() throws Exception {
 		Path outputGML = Paths.get("data/Grombühl_v4_case_study_enrich_test.gml");