1244 | 1244 |
|
1245 | 1245 |
LayerFilterChain normalFilters = new LayerFilterChain(config);
|
1246 | 1246 |
LayerFilterChain keepParallelFilters = new LayerFilterChain(config);
|
|
1247 |
DouglasPeuckerFilter dp = null;
|
1247 | 1248 |
if (enableLineCleanFilters && (res < 24)) {
|
1248 | 1249 |
MapFilter rounder = new RoundCoordsFilter();
|
1249 | 1250 |
MapFilter sizeFilter = new SizeFilter(MIN_SIZE_LINE);
|
|
1251 | 1252 |
normalFilters.addFilter(sizeFilter);
|
1252 | 1253 |
double errorForRes = dpFilterLineResMap.ceilingEntry(res).getValue();
|
1253 | 1254 |
if(errorForRes > 0) {
|
1254 | |
DouglasPeuckerFilter dp = new DouglasPeuckerFilter(errorForRes);
|
1255 | |
normalFilters.addFilter(dp);
|
|
1255 |
dp = new DouglasPeuckerFilter(errorForRes);
|
1256 | 1256 |
keepParallelFilters.addFilter(dp);
|
1257 | 1257 |
}
|
1258 | 1258 |
keepParallelFilters.addFilter(rounder);
|
1259 | 1259 |
keepParallelFilters.addFilter(sizeFilter);
|
1260 | 1260 |
}
|
|
1261 |
RemoveObsoletePointsFilter removeObsolete = new RemoveObsoletePointsFilter();
|
|
1262 |
normalFilters.addFilter(removeObsolete);
|
|
1263 |
keepParallelFilters.addFilter(removeObsolete);
|
|
1264 |
if (dp != null)
|
|
1265 |
normalFilters.addFilter(dp);
|
1261 | 1266 |
for (MapFilter filter : Arrays.asList(
|
|
1267 |
new RemoveEmpty(),
|
1262 | 1268 |
new LineSplitterFilter(),
|
1263 | |
new RemoveEmpty(),
|
1264 | |
new RemoveObsoletePointsFilter(),
|
1265 | 1269 |
new LinePreparerFilter(div),
|
1266 | 1270 |
new LineAddFilter(div, map))) {
|
1267 | 1271 |
normalFilters.addFilter(filter);
|
|
1309 | 1313 |
filters.addFilter(new PolygonSplitterFilter());
|
1310 | 1314 |
if (enableLineCleanFilters && (res < 24)) {
|
1311 | 1315 |
filters.addFilter(new RoundCoordsFilter());
|
|
1316 |
}
|
|
1317 |
filters.addFilter(new RemoveObsoletePointsFilter());
|
|
1318 |
if (enableLineCleanFilters && (res < 24)) {
|
1312 | 1319 |
int sizefilterVal = getMinSizePolygonForResolution(res);
|
1313 | 1320 |
if (sizefilterVal > 0)
|
1314 | 1321 |
filters.addFilter(new SizeFilter(sizefilterVal));
|
|
1318 | 1325 |
if(errorForRes > 0)
|
1319 | 1326 |
filters.addFilter(new DouglasPeuckerFilter(errorForRes));
|
1320 | 1327 |
}
|
1321 | |
filters.addFilter(new RemoveObsoletePointsFilter());
|
1322 | 1328 |
filters.addFilter(new RemoveEmpty());
|
1323 | 1329 |
filters.addFilter(new LinePreparerFilter(div));
|
1324 | 1330 |
filters.addFilter(new ShapeAddFilter(div, map));
|