OpenStreetMap logo OpenStreetMap

Candid Dauth's Diary

Recent diary entries

OSM History Viewer and OSM Route Manager are two ancient tools that help visualising and analysing changesets and route relations. In particular, they provide the following features: * Show the geographic and tag changes that a specific changeset has caused * Render a route relation (with support for nested relations), detect gaps and inconsistencies, and export the route as GPX * Analyze the history of relation members and show who last edited (and is thus to blame for) which section of the relation.

I have not maintained these services in many years and they frequently crashed or got overloaded. The user experience was also far from great.

I have decided to rewrite the logic of these tools and integrate it into FacilMap. While the don’t particularly fit the use case of FacilMap, the infrastructure (in particularly the UI elements) is there, making it convenient to integrate it there.

So far I have implemented the first functionality, changeset analysis. You can analyze a changeset by typing changeset <id> (for example https://www.openstreetmap.org/changeset/6798641) into the search field, or by calling the URL https://facilmap.org/#q=changeset%20<id> (for example https://facilmap.org/#q=changeset%206798641) directly. As opposed to the legacy OSM History Viewer, the analysis and API requests are now entirely performed on the client side.

I will implement the other two features soon. Once done, the old services will be shut down and a redirect will be put in place.

Feel free to report any problems that you come across by writing to me or by creating an issue.

See full entry

Revival of Openptmap

Posted by Candid Dauth on 1 June 2024 in English.

I really missed Openptmap ever since the service stopped working a few years ago. It was an important feature of FacilMap that I had used frequently in my daily life. This is why I have decided to invest in a bigger server to be able to render and host the tiles myself.

I have set up a tile server with the original Openptmap styles on https://pt.facilmap.org/. You can browse the tiles through FacilMap.

For now, tiles are generated when first requested, so rendering the map will be very slow when a region is first accessed. Also, there are no automatic updates of the map yet, so for now the state of the map will be frozen in time. When I find the time, I want to bring the setup up to date to enable automatic updates. If you have the skills and want to contribute, what would be needed would be to rewrite the filter and style into an osm2pgsql flex output Lua script.

If you find this service useful, a financial contribution would be greatly appreciated.

FacilMap 3 has been released

Posted by Candid Dauth on 10 April 2021 in English.

FacilMap 3 is a complete rewrite of FacilMap, with a focus on an improved, more stable and smartphone-friendly UI.

FacilMap is a privacy-friendly, open-source versatile online map that combines different services based on OpenStreetMap and makes it easy to find places, plan routes and create custom maps full of markers, lines and routes. Features include:

  • Different map styles for roads, topography, cycling, hiking, public transportation, water navigation, …
  • Search for places and show their information (website, opening hours, …)
  • Calculate routes and adjust them by dragging. An elevation profile can be shown.
  • Smartphone-friendly interface.
  • Create and share custom maps with markers, lines and routes on them.
  • Open GPX/KML/OSM/GeoJSON files and save them on a custom map.
  • Define custom styles of markers, lines and routes and generate a legend automatically.
  • Define custom form fields for the details of markers, lines and routes.
  • API to embed custom maps into a website and to modify them programmatically.
  • Extensive documentation.

FacilMap 2 has been released

Posted by Candid Dauth on 20 October 2016 in English.

A new version of FacilMap has been released.

Everything has been rewritten from scratch. FacilMap is now based on Leaflet, AngularJS and Bootstrap.

FacilMap is an online map that aims to bring together many useful functions in a usable and pretty way onto an open-source map based on OpenStreetMap.

  • Different map styles: OpenMapSurfer, Mapnik, OpenCycleMap, Hike & Bike map, Public Transportation map, Hillshading overlay
  • Find places and calculate routes. Routes are fully draggable.
  • Show GPX/KML/OSM/GeoJSON files on the map (use Tools → Import File, type a URL into the search field, or simply drag and drop a file onto the map)
  • Show additional information about places (for example opening hours or a link to the website). Press the map for 1 second somewhere to show information about what is there. (Uses Nominatim.)
  • Zoom to the location of your device and follow it.
  • New: Create custom collaborative maps on https://facilmap.org/myMapName. Markers, lines, routes and even GPX/KML/OSM/GeoJSON files can be added to these maps by everyone who has the link to the editable version of the map (every map has a read-only and a read-write URL), and changes are displayed live to everyone who is looking at the map at the same time. Advanced features include the definition of custom marker/line types with custom form fields and styles and the automatic generation of a map key.
  • Can be easily run on your server or embedded into your website (see below).

I have finally had the time to build in a timeout for OSM Route Manager and History Viewer.

Previously, the only limit was the memory of the Java process, which caused some requests to take really really long. The queue got very long and the service became unusable. (And before that, there hadn’t even been a memory limit, the service would just dump cached items from the memory and re-fetch them from the API when needed.)

Now, I have set the timeout to 10 minutes. I know that this might not be enough for the “Relation blame” of medium to big relations, but at least it keeps the service usable.

OSM Route Manager and History Viewer

Posted by Candid Dauth on 4 February 2011 in English.

Since the introduction of the queue in Route Manager and History Viewer, there have been several down-times where the queue became very very long without anything being processed. The reason why nothing was processed was that someone tried to use the “Relation Blame” on very big relations, such as osm.org/browse/relation/107796. I have therefore disabled the Relation Blame function for now.

The reason why the queue got so long (sometimes several thousand requests) is probably caused by bots. Probably beacuse of the links that the Wiki automatically creates to the two tools. I suppose I will have to add a robots.txt, and if that does not help, a Captcha.

OpenLinkMap layer in FacilMap

Posted by Candid Dauth on 4 January 2011 in English.

With FacilMap (facilmap.org, Wiki), I try to create a map that has all the features of Google Maps but uses OpenStreetMap layers.

For a long time, I’ve wanted to implement something similar to the relatively new Google Maps feature where you can click on POIs (such as companies or restaurants) and a popup displaying details opens.

Now I’ve come accross OpenLinkMap (olm.openstreetmap.de, Wiki), which seems to do exactly this. So I’ve created an OpenLayers layer for it and added it to the Beta version of FacilMap available on beta.facilmap.org. On zoom levels >= 13, you’ll see these transparent dark-blue circles around some POIs. Click on them and a popup appears with some information about the POI.

At the moment, OpenLinkMap seems to only contain POIs that have either a telephone number, a website or a Wikipedia article. Hopefully, in the future other POIs will be included as well so that one can see their address and opening hours.

If you want to include the OpenLinkMap layer into your OpenLayers map, include the FacilMap API JavaScript into your website:
<script type="text/javascript" src="http://beta.facilmap.org/api/facilmap.js"></script>
(Once the OpenLinkMap layer is considered stable, it will be added to the stable FacilMap API on http://api.facilmap.org/facilmap.js.)

Then add the layer to your map using the following code:
map.addLayer(new FacilMap.Layer.Markers.OpenLinkMap("OpenLinkMap"));

This feature is documented on osm.wiki/FacilMap/API/POIs.