Outdoor maps as found on any mobile phone nowadays aren't really useful for finding your way in large buildings such as major train stations or airports, as those maps don't represent vertical layers very well. How do we get indoor maps for those cases onto Plasma Mobile and into our apps?
Finding your way through a complex multi-floor building you are not familiar with can be challenging, even more so when you have heavy luggage or a stroller with you, or are relying on a wheelchair, which can turn even a few stairs into a hard to overcome obstacle. Naturally you'd want your mobile phone to help you navigate, in the same way it does outdoors.
In this talk we'll look at the OpenStreetMap (OSM) based indoor mapping library which has been developed for KDE's digital travel assistant Itinerary. While having a special focus on train stations and airports, it works equally well for any other building with the necessary indoor mapping data available in OSM, such as for example university buildings[*], museums or shopping malls.
We will see how its use of a declarative client-side renderer based on MapCSS allows to customize the map display to app-specific use cases and deal with the increasing level of detail in OSM. The use of Marble's vector tile server on the other side allows efficient access to current OSM data.
Besides showing a static OSM map, live data from other sources can be integrated as well. A particular important example are the realtime status information of elevators and escalators. Knowing beforehand whether one of those is out of order is convenient in any case, but for wheelchair users can be absolutely crucial.
Finally, we will look at the challenges around indoor localization and routing. Outdoors we can often rely on multiple GNSS systems, indoors reception of those is typically very poor if available at all, while we at the same time have a higher demands on correct vertical positioning.
[*] Not the Akademy 2019 one though, this is all limited to Euclidean space.
Volker joined KDE in 2002, and has since then contributed to for example KDE PIM and Akonadi, the KF5 syntax highlighting engine, ELF Dissector, the telemetry and survey framework KUserFeedback and the digital travel assistance app KDE Itinerary.