logo separator

[mkgmap-dev] Commit: r1621: Add --min-line-size and --min-polygon-size options.

From Mark Burton markb at ordern.com on Tue Mar 23 20:56:35 GMT 2010

Felix,

> Or that the patch was not enacted on resolution 24??

Yes, that's true and looking at the code, I think that for polygons it
probably should always be done and, furthermore, should be done after
the polygon splitting so that any tiny polygons produced by the
splitting get removed. i.e. it should look like this, perhaps:

diff --git a/src/uk/me/parabola/mkgmap/build/MapBuilder.java b/src/uk/me/parabola/mkgmap/build/MapBuilder.java
index c2593c6..28098ee 100644
--- a/src/uk/me/parabola/mkgmap/build/MapBuilder.java
+++ b/src/uk/me/parabola/mkgmap/build/MapBuilder.java
@@ -930,13 +930,13 @@ public class MapBuilder implements Configurable {
                if (enableLineCleanFilters && (res < 24)) {
                        filters.addFilter(new PreserveHorizontalAndVerticalLinesFilter());
                        filters.addFilter(new RoundCoordsFilter());
-                       filters.addFilter(new SizeFilter(minPolygonSize));
                        //DouglasPeucker behaves at the moment not really optimal at low zooms, but acceptable.
                        //Is there an similar algorithm for polygons?
                        if(reducePointError > 0)
                                filters.addFilter(new DouglasPeuckerFilter(reducePointError));
                }
                filters.addFilter(new PolygonSplitterFilter());
+               filters.addFilter(new SizeFilter(minPolygonSize));
                filters.addFilter(new RemoveEmpty());
                filters.addFilter(new ShapeAddFilter(div, map));



More information about the mkgmap-dev mailing list