Skip to content

freemapper v0.22.0

Latest

Choose a tag to compare

@github-actions github-actions released this 15 Nov 14:39
· 60 commits to main since this release

Added

  • Tree cadastres of Köln, Dortmund and Frankfurt am Main (ADR 0065). A WFS answer that names no CRS and gives metres is read in the CRS asked, and field names may hold spaces.
  • The training map (ADR 0140): --training on run and export (on select the page default), training: true on the MCP tools start_pipeline and open_area_selector, and a box on the area page write <name>-training.omap and <name>-training.pdf, with --ocad also ocad/<name>-training.ocd. It is for printing and running on as it is, and holds the map and the visible candidates together. So that no symbol lies on another, freemapper joins lines that meet end to end, takes street furniture off streets and squares, draws a park yellow only where the nDSM shows no trees, keeps only buildings, water, contours and the ways a runner can cross inside olive green areas (520; of a dead end a beginning of 1 mm stays when no fence or wall stands in front of it), moves trees, monuments and other point symbols up to 1.5 mm off ways, buildings, water and other points (never into olive green), cuts out what keeps less than the norm's gap (the lower-ranked object gives way; walls and impassable fences are only cut there, never left out whole), and leaves out what is below the norm's minimum size. Where a project has an nDSM but no tree cover yet, the training map keeps its parks whole and a warning says to run freemapper derive again. Carriageways, tracks and paths running side by side still stand side by side there; merging them comes next. A run keeps an existing training map and says so, export --training stops on one; --force replaces it and the base map (the old ones stay as .bak). freemapper builds the training map from the stored data and the content settings, so corrections in OOM do not reach it; to renew only the training map, delete <name>-training.omap (with --ocad also ocad/<name>-training.ocd) and run again without --force. The base map and the candidates stay the working material for mapping.
  • Tree cadastres of Leipzig, Frankfurt (Oder), Kiel and Norderstedt (ADR 0065). A tree cadastre can now be a WFS that answers GeoJSON ([[extra.trees]] format = "wfs-geojson" with type_name and output_format), and fields.gone names a field that leaves felled trees out.
  • Schleswig-Holstein: the tree cadastre of the Hansestadt Lübeck (ADR 0065). A tree cadastre can now be one CSV file of the whole city ([[extra.trees]] format = "csv" with x_field, y_field and separator); freemapper downloads it whole and cuts it to the area. In the old town of Lübeck 384 trees go onto the map and 43 to the candidates, in place of the OpenStreetMap trees at the same places. The example is rebuilt.
  • Hamburg: the street tree cadastre with genus, species and crown diameter (ADR 0065). A tree cadastre can now be an OGC API collection ([[extra.trees]] format = "ogc-api", paged by next links), and its survey date is optional. In Blankenese 13 street trees go onto the map and 4 to the candidates, in place of the OpenStreetMap trees at the same places. The example is rebuilt.
  • Permit notes: natural monuments and protected landscape features from Schleswig-Holstein, from the INSPIRE service of the protected sites (CC BY 4.0, ADR 0146, addendum). The service has gaps: the natural monuments come almost only from the Kreis Schleswig-Flensburg, the landscape features from Kiel, Lübeck and the Kreise Plön, Schleswig-Flensburg and Stormarn. The notes say so and send the reader to the lower nature authority for the others. The two examples have new notes.
  • Permit notes: natural monuments and protected landscape features from Rhineland-Palatinate, from the nature conservation service of the Landesamt für Umwelt (Open Database License, ADR 0146, addendum).
  • Rhineland-Palatinate: the landscape model of the LVermGeo RP (ATKIS Basis-DLM, ADR 0147). It is served there only in the AdV Shape schema; freemapper now reads that too ([[extra.nas]] schema = "shape"). Its objects stay candidates: in Cochem 19 monuments and wayside crosses, 2 watercourses and a well, near Dahn a rock, 3 watercourses and 6 paths. The two examples are rebuilt.
  • Permit notes: natural monuments and protected landscape features from Lower Saxony, from the NLWKN's map service (ADR 0148). It has no WFS, only ArcGIS REST; freemapper now reads such services as a table too. In Lower Saxony the Landkreise keep the protected biotopes; the notes say so.
  • Mecklenburg-Vorpommern: the full ALKIS and the landscape model (ADR 0062, ADR 0135). The full ALKIS puts stairs, walls and bridges straight onto the map: in the old town of Wismar 630 stairs, most of them short steps in front of house doors, and 138 walls; OpenStreetMap walls they double go. The landscape model adds candidates (trees, watercourses, paths). The two examples are rebuilt.
  • Permit notes: natural monuments, protected landscape features and legally protected biotopes from ten states (ADR 0146): natural monuments from Brandenburg, Hamburg, Saarland, Saxony, Saxony-Anhalt, Bavaria and Baden-Württemberg, landscape features from Brandenburg, Saxony-Anhalt and Bavaria, protected biotopes from Brandenburg, Berlin, Hamburg, Saarland, Saxony, Hesse and North Rhine-Westphalia. When protected biotopes lie in the area, a hint says that whatever can destroy them or harm them considerably is forbidden and names their types; another names the lower nature authority with the Kreis. Biotopes of one type are one line with their share. The examples of these states have new notes.
  • North Rhine-Westphalia and Lower Saxony: the full ALKIS (ADR 0062). In North Rhine-Westphalia it puts walls, retaining walls, stairs, embankment tops, bridges and single trees straight onto the map: 112 more map objects in the old town of Monschau, 113 in the Siebengebirge; OpenStreetMap objects they double go. Lower Saxony records less (bridges, a fountain, walls). The four examples are rebuilt.
  • Schleswig-Holstein: objects from the landscape model of the LVermGeo SH (ATKIS Basis-DLM, ADR 0135) as candidates. In the Hüttener Berge that is 48 earth walls, a watercourse and 4 tracks; in Lübeck a watercourse. Both examples are rebuilt.
  • Hesse: the full ALKIS and the landscape model of the HVBG (ADR 0135). The full ALKIS adds surveyed stairs to the map, 54 in the old town of Marburg; the landscape model adds candidates as in Bavaria (named trees, small watercourses, a dam and a wall in Marburg, a rock, a spring and a watercourse on the Feldberg). Both examples are rebuilt. For adapters: a manifest may now name one NAS service per model, so a state can serve its cadastre and its landscape model.

Changed

  • The 30 examples are rebuilt with the state after ADR 0140: contours run across ways and paved areas (82 instead of 272 contour pieces in Viktoriapark), they are cut out at stairs (460 instead of 332 pieces in Blankenese), fence ticks point away from ways, and doubled OSM water and stairs are gone (7 instead of 12 water areas in the Bürgerpark, 41 instead of 67 OSM stairs in the old town of Bremen). The PDF of each example is now called the check print; the permit notes are unchanged.
  • Contours run through ways and paved areas on every map, as ISSprOM 2019-2 (101) asks; this takes back the cut at ways of ADR 0097. They stop at stairs and at the small landform symbols 105, 109 to 112 and 115, on forest maps not at earth walls (105, which ISOM lets contours cross), and still below cliffs. North lines still stop at ways (ADR 0140).
  • The ticks of a fence point inside when the fence is closed, otherwise to the olive green area beside it, away from a way along the fence, and to the park. With the same area on both sides they take the side where they overdraw nothing (ADR 0140, amends ADR 0097).
  • --pdf-candidates is now called the check print: the base map with every visible candidate, true to position, for checking in the terrain. The file name <name>-candidates.pdf stays. The stronger generalization of cliffs of ADR 0126 and ADR 0134 no longer runs there but on the training map (ADR 0140).
  • Where there is an nDSM, derive writes the tree cover to data/tree-cover.tif: for each 1 m cell the share of ground under at least 3 m of nDSM height. The training map reads it (ADR 0140).
  • An OSM water area with islands that lies half on water from the cadastre is now dropped as a duplicate, like one without islands; before, freemapper read only its outer ring and kept it. In the Bremen Bürgerpark four such lakes lay 91 to 99 % on ALKIS water. An OSM stair that lies half on a cadastre stair is now dropped too, and the cadastre stair names it in freemapper:also; in the Bürgerpark that was 6 of 23 (ADR 0140).
  • The examples overview, the README, the comparison and the manual show small WebP thumbnails; only a click loads the image at full resolution. The examples overview loads 1.6 MB instead of 6.6 MB. The PDF of each example is a link of its own below the image. scripts/thumbnails.sh makes the thumbnails again after an example or a manual image is rebuilt.
  • The README links the examples overview at the top, next to the changes. In the examples overview the preview is now the first column.

Download the archive for your system, unpack it and start freemapper
(Windows: freemapper.exe) from a terminal or register it with your AI assistant.
Installation and first steps: see README.md (Deutsch) / README.en.md (English) in the
archive or https://github.com/HenryJobst/freemapper#readme

  • Windows: freemapper-v0.22.0-windows-x86_64.zip
  • macOS Apple Silicon (M1 and newer): freemapper-v0.22.0-macos-arm64.tar.gz
  • macOS Intel: freemapper-v0.22.0-macos-x86_64.tar.gz
  • Linux: freemapper-v0.22.0-linux-x86_64.tar.gz (ARM: linux-arm64)

The .gz files and freemapper-update.json with its signature are for freemapper update.

What's Changed

  • Hesse: the full ALKIS and the ATKIS Basis-DLM, one NAS service per model (ADR 0135) by @HenryJobst in #127
  • Schleswig-Holstein: objects from the ATKIS Basis-DLM (ADR 0135) by @HenryJobst in #128
  • README links the examples overview; preview first in its tables by @HenryJobst in #129
  • Small WebP thumbnails in the docs, full image on click by @HenryJobst in #130
  • North Rhine-Westphalia and Lower Saxony: the full ALKIS (ADR 0062) by @HenryJobst in #131
  • Mecklenburg-Vorpommern: the full ALKIS and the landscape model of the LAiV by @HenryJobst in #133
  • Natural monuments and protected biotopes of ten states (ADR 0146) by @HenryJobst in #132
  • Natural monuments of Lower Saxony through ArcGIS REST (ADR 0148) by @HenryJobst in #134
  • Rhineland-Palatinate: the landscape model in the AdV Shape schema (ADR 0147) by @HenryJobst in #135
  • Natural monuments and landscape parts of Rhineland-Palatinate (ADR 0146 addendum) by @HenryJobst in #136
  • Hamburg: the street tree cadastre through an OGC API tree format (ADR 0065) by @HenryJobst in #137
  • Schleswig-Holstein: the tree cadastre of Lübeck through a CSV tree format (ADR 0065) by @HenryJobst in #138
  • Tree cadastres of Leipzig, Frankfurt (Oder), Kiel and Norderstedt from a WFS (ADR 0065) by @HenryJobst in #140
  • The training map is a product of its own (ADR 0140) by @HenryJobst in #139
  • Tree cadastres of Köln, Dortmund and Frankfurt am Main (ADR 0065) by @HenryJobst in #141
  • Natural monuments and landscape parts of Schleswig-Holstein (ADR 0146 addendum) by @HenryJobst in #143
  • docs(examples): the 30 examples rebuilt after the training map by @HenryJobst in #144
  • Schleswig-Holstein examples: permit notes with the INSPIRE protected objects by @HenryJobst in #145

Full Changelog: v0.21.0...v0.22.0