Karten-Updates…

Karten-Updates…
5 (100%) 1 Stimme(n)

Seit dem letzten Blogbeitrag hat sich bei Flopps Karte einiges getan. Unter anderem:

  • Es gibt jetzt rumänische und polnische Übersetzungen
  • Es können die Kartenkacheln der OpenTopoMap verwendet werden
  • Es gibt einen Freifunk-Modus
  • Ein URL-Parameter zum (De)Aktivieren bestimmter Features wurde hinzugefügt
  • Ein URL-Parameter zum Highlighten bestimmter Geocaches wurde hinzugefügt

Im Detail:

Rumänische und Polnische Übersetzungen:

andrixnet, ein rumänischer Nutzer der Karte, hat dankenswerter Weise eine rumänische Übersetzung angefertigt und mir über einen Pull-Request bei Github zukommen lassen.

Michał Żyłowski, ein Entwickler von Opencaching.pl, hat die Karte um eine polnische Übersetzung erweitert. Das ist besonders deshalb wertvoll, weil die Karte inzwischen prominent von Opencaching.pl verlinkt wird und von dort täglich ein guter Teil der Nutzer zur Karte findet.

Die Karte gibt es jetzt also in Deutsch, Englisch, Niederländisch, Rumänisch und Polnisch! Weitere Übersetzungen füge ich gerne hinzu (eine Anleitung zum Anfertigen von Übersetzungen gibt es noch nicht, daher verweise ich auf die existierenden Übersetzungs-Dateien, die eigentlich selbsterklärend sein sollten).

OpenTopoMap:

Mit dem Karten-Stil „TOPO“ zeigt die Karte Kacheln der sehr schicken OpenTopoMap an. Hightlights dieser Kartendarstellung sind vor allem die schöne Geländeschattierung und die anzeige von Höhenlinien.

Freifunk-Modus:

Ebenfalls prominent verlinkt ist die Karte im Meshviewer des Freifunk-Projekts. Wer’s nicht kennt: Freifunk ist ein Gemeinschaftsprojekt zur Schaffung eines freien Datennetzes auf WLAN-Basis. Dazu stellen Teilnehmer WLAN-Router zum Datenaustausch mit anderen zur Verfügung – es entsteht ein sogenanntes Mesh-Netzwerk aus WLAN-Knotenpunkten.
Zur geografischen Visualisierung dieses Netzwerkes sind in allen teilnehmenden WLAN-Routern ihre geografischen Koordinaten hinterlegt – diese werden allerdings über diverse Shell-Kommandos in der jeweiligen Router-Konsole gesetzt; und genau hier kommt der neue Freifunk-Modus der Karte ins Spiel: Aktiviert man den Freifunk-Modus in der Sidebar und klickt danach in die Karte, poppt ein Infofenster auf, das Shell-Kommandos enthält um die Koordinaten eines Freifunk-WLAN-Routers zu setzen.
Womöglich wird der Freifunk-Modus in Zukunft noch erweitert, z.B. um eine Anzeige aller Freifunk-Router. Aber zu viel mag ich hier nicht versprechen 😉

Freifunk-Popup

URL-Parameter für Features:

Mit dem neuen URL-Parameter f=FLAGS können direkt bestimmte Karten-Features (de)aktiviert werden.

Kommt in der Karten-URL der f=FLAGS-Parameter vor, bewirken einige Zeichen im FLAGS-Teil des Parameters Folgendes:

  • h oder H aktiviert Hillshading
  • f oder F aktiviert den Freifunk-Modus
  • g oder G aktiviert den Geocaching-Modus
  • n oder N aktiviert die Anzeige von Naturschutzgebieten
  • b oder B aktiviert die Anzeige von Verwaltungsgrenzen („Boundaries“)

http://flopp.net/?f=gn öffnet beispielsweise eine Karte, in der Geocaches und Naturschutzgebiete angezeigt werden.

URL-Parameter für Geocaches:

Mit dem URL-Parameter g=CODE wird in der Karte der Geocaching-Modus aktiviert (Anzeige der Geocaches aller teilnehmenden Opencaching-Sites), die Karte wird auch dem Geocache mit der ID CODE zentriert und das Info-Fenster für diesen Geocache geöffnet, als hätte man diesen angeklickt. Mit diesem Feature ist es (z.B. aus einem Cache-Listing heraus) möglich, direkt einen Geocache zu verlinken.

http://flopp.net/?g=OCA3FE öffnet beispielsweise eine Karte, in der der Geocache OCA3FE: Borderline zentriert ist und das zugehörige Info-Fenster geöffnet ist.

Geocaching-Popup

Aufgabenstellung: Schnittpunkt von Kreis und Peilung

Aufgabenstellung: Schnittpunkt von Kreis und Peilung
5 (100%) 2 Stimme(n)

Folgende Anfrage kam gerade per Mail rein (natürlich verfremdet!):

Kann man folgenden Geocache-Aufgabe mit „Flopp’s Karte“ lösen?

Der Schatz befindet sich 500 Meter von der Wegkreuzung (N 47 59.523 E 007 52.940) entfernt. Vom Baum (N 47 59.532 E 007 53.169) aus gesehen, liegt der Schatz auf 308.6°. […]

Nichts leichter als das 😉

1. Die Koordinaten der beiden Bezugspunkte nacheinander ins Suchfeld der Seitenleiste eingeben, auf den Lupen-Button klicken und jeweils einen neuen Marker mit „Neu“ anlegen. Die Karte sollte dann zwei Marker „A“ und „B“ mit passenden Koordinaten enthalten:

kreis-peilung-1

2. Marker „A“ bearbeiten (gelbes Stift-Symbol in der Seitenleiste bei Marker „A“), im unteren Editierfeld (Umkreis) 500 eingeben und mit „OK“ bestätigen.

kreis-peilung-2

In der Karte wird jetzt um Marker „A“ ein Kreis mit 500 Metern Radius angezeigt:

kreis-peilung-3

3. Von Marker „B“ aus eine Peilung ausführen (grünes Pfeil-Symbol in der Seitenleiste bei Marker „B“). Einen Winkel von 308.6° und eine großzügige Entfernung von vielleicht 1000 Metern eingeben. Mit „OK“ bestätigen.

kreis-peilung-4

Dadurch wird ein neuer Marker „C“ angelegt, der von „B“ aus 1000 Meter in Richtung 308.6° entfernt liegt:

kreis-peilung-5

4. Linie von „B“ nach „C“ anlegen durch Klick auf „Neu“ im Linien-Abschnitt der Seitenleiste. Als Anfangs- und Endpunkte der Linie „B“ und „C“ wählen.
Die Karte enthält nun eine Linie von Marker „B“ zu „C“:

kreis-peilung-6

5. Einen neuen Marker anlegen und mit der Maus auf den Schnittpunkt von Linie und Kreis ziehen.

kreis-peilung-7

Marker „D“ (bei etwa „N 47 59.759 E 007 52.745“) erfüllt genau die Aufgabenstellung! Er ist 500 Meter von „A“ entfernt und liegt von „B“ aus auf einem Winkel von 308.6°.

Ich hoffe diese Anleitung ist hilfreich.

Wer weitere Fragen zur Bedienung hat oder Hilfe bei einer Aufgabenstellung benötigt, bitte melden (z.B. per Mail an mail@flopp-caching.de oder als Kommentar hier im Blog)!

Garmin Forerunner unter Linux

Garmin Forerunner unter Linux
4 (80%) 2 Stimme(n)

Wer einen ANT+-fähigen Garmin Forerunner (bei mir: Forerunner 610) und den zugehörigen ANT+-Stick sein Eigen nennt und unter Linux unterwegs ist (bei mir: Ubuntu 14.10), kann seine GPS-Uhr mit dem Rechner über das Kommandozeilentool antfs-cli synchronisieren.

antfs-cli ist ein Python-Programm, das auf den Python-Libraries openant und pyusb aufbaut. Unterstützte Geräte sind auf der Projektseite von antfs-cli aufgelistet.

Da die beiden Bibliotheken und das Programm typischerweise nicht im Lieferumfang der gängigen Linux-Distributionen vorhanden sind, bietet sich eine direkte Installation über github an:


# create a directory where we can put all the source code
mkdir ~/forerunner
cd ~/forerunner

# download and install pyusb
git clone https://github.com/walac/pyusb.git
sudo python pyusb/setup.py install

# download and install openant
git clone https://github.com/Tigge/openant.git
sudo python openant/setup.py install

# download and install antfs-cli
git clone https://github.com/Tigge/antfs-cli.git
sudo python antfs-cli/setup.py install

# install udev rules
sudo cp openant/resources/ant-usb-sticks.rules /etc/udev/rules.d
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=usb --attr-match=idVendor=0fcf --action=add

Nach der Installation der Tools kann das Verzeichnis ~/forerunner im Prinzip wieder entfernt werden.

Ruft man nun im Terminal das Kommando

antfs-cli

auf, wird eine drahtlose Verbindung vom Rechner zum Forerunner über das ANT+-Protokoll hergestellt.

ANT+-Stick

Beim ersten Aufruf wird das sogenannte Pairing durchgeführt, bei dem am Forerunner die Verbindungsanfrage von antfs-cli bestätigt werden muss.

Forerunner Pairing

Anschließend werden auf dem Gerät vorhandene aufgezeichnete Aktivitäten in das Verzeichnis ~/.config/antfs-cli/XXXXX/activities/ heruntergeladen – wobei XXXXX die numerische Id des Forerunners ist (in meinem Fall ist das eine 10-stellige Zahl). Bei weiteren Aufrufen von antfs-cli werden nur die neuen Aktivitäten heruntergeladen.

Forerunner Transfer

Die heruntergeladenen Daten (im Garmin eigenen FIT-Format) können nun z.B. manuell zu Garmin Connect hochgeladen werden oder mit den Kommandozeilentool gpsbabel in andere Formate konvertiert und weiterverarbeitet werden.

Upload zu Garmin Connect

Naturschutzgebiete neu aufgelegt

Bewerte diesen Beitrag

Seit der Schließung des NSG-Atlas werden aus Mangel an öffentlichen Datenquellen auf der Karte keine Informationen zu Naturschutzgebieten mehr dargestellt. Diese Informationen sind aber für Geocacher interessant und insbesondere für Cacheowner essentiell, um bereits in der Planungsphase eines neuen Geocaches ungeeignete Gebiete auszuschließen.

Vor einiger Zeit bin ich auf eine Kartenanwendung des Bundesamtes für Naturschutz gestoßen, die diverse Natur- und andere Schutzgebiete in Deutschland anzeigt.
Im Hintergrund der BfN-Seite arbeitet ein WMS-Server (Web Map Service), der Kartenkacheln rendert und an das Webseitenfrontend ausliefert, von dem sie dann dargestellt werden. Dieser Server ist prinzipbedingt öffentlich zugänglich und könnte auch als Datenquelle für die Karte dienen.

Zeitgleich mit der Anfrage an OpenMapSurfer (wegen der Benutzung von Hillshading-Kacheln) habe ich also auch eine Anfrage an die zuständige Person beim Bundesamt geschickt, die jetzt nach einigen Wochen endlich positiv beantwortet wurde – die Mühlen der Bürokratie mahlen langsam 😉

Eigentlich war diese Anfrage komplett überflüssig, denn die relativ neue Verordnung zur Festlegung der Nutzungsbestimmungen für die Bereitstellung von Geodaten des Bundes (GeoNutzV) sagt folgendes:

[…] Geodaten und Geodatendienste, einschließlich zugehöriger Metadaten, werden für alle derzeit bekannten sowie für alle zukünftig bekannten Zwecke kommerzieller und nicht kommerzieller Nutzung geldleistungsfrei zur Verfügung gestellt […] Die bereitgestellten Geodatendienste dürfen insbesondere mit eigenen Diensten und Diensten Anderer zusammengeführt werden; […]

Also grünes Licht für eine Integration von Naturschutzgebieten in die Karte!

Technischer Hintergrund

Dafür benutzen wir zwei WMS-Funktionen des WMS-Servers:

1. GetMap liefert eine Kartenkachel in einem gewünschten Bildformat für ein definiertes Gebiet.
Die Anfrage für das rechteckige Gebiet mit den Eckpunkten N 47.931066347509784 E 7.7783203125 und N 47.96050238891509 E 7.822265625 sieht dann beispielsweise so aus

http://geodienste.bfn.de/ogc/wms/schutzgebiet?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.3.0&LAYERS=Naturschutzgebiete&FORMAT=image/png&BGCOLOR=0xFFFFFF&STYLES=default&TRANSPARENT=TRUE&CRS=CRS:84&BBOX=7.7783203125,47.931066347509784,7.822265625,47.96050238891509&WIDTH=256&HEIGHT=256

Sie veranlasst den WMS-Server zum Versenden folgender halbtransparenter Kartenkachel im PNG-Format:

nsg-tile

Diese Kartenkacheln können mittels eines Karten-Layers von Typ ImageMapType über eine Google-Maps-Karte gelegt werden.

2. GetFeatureInfo liefert Informationen über die Objekte, die an bestimmten Koordinaten innerhalb einer Kartenkachel dargestellt werden. So erhält man mit der Anfrage

http://geodienste.bfn.de/ogc/wms/schutzgebiet?REQUEST=GetFeatureInfo&SERVICE=WMS&VERSION=1.3.0&CRS=CRS:84&BBOX=7.7783203125,47.931066347509784,7.822265625,47.96050238891509&WIDTH=256&HEIGHT=256&INFO_FORMAT=text/plain&FEATURE_COUNT=30&QUERY_LAYERS=Naturschutzgebiete&X=100&Y=150

Informationen zum Naturschutzbegiet, das sich an den Pixel-Koordinaten 100/150 in obiger Kartenkachel befindet:

{
"type": "FeatureCollection",
"features": [
  {
    "type": "Feature",
    "geometry": null,
    "properties": {
      "OBJECTID": "1180",
      "Shape": "Polygon",
      "NAME": "Berghauser Matten",
      "ID": "bw_3225",
      "FLAECHE": "151,292",
      "JAHR": "1996",
      "IUCN_KAT": "IV",
      "CDDA_CODE": "162382",
      "BL": "BW",
      "BL_LANG": "Baden-Württemberg",
      "BfN_ID": "31170",
      "Shape_Length": "9136,663785",
      "Shape_Area": "1512920,202602"
    },
    "layerName": "Naturschutzgebiete"	
  }
]
}

Diese Informationen können z.B. nach einem Klick in die Karte in einem Info-Fenster angezeigt werden.

Und so sieht’s dann aus

Mit einem Setzen des Häkchens bei „Naturschutzgebiete“ aktiviert man die Naturschutzgebiete-Kartenebene:

NSG-Layer aktivieren

Naturschutzgebiete werden als halbtransparente grüne Flächen in der Karte angezeigt:

nsg2

Durch einen Klick auf den Button „Zeige NSG-Info beim nächsten Klick“ der Sidebar und einen anschließenden Klick auf eines der hervorgehobenen Gebiete in der Karte öffnet sich ein Infofenster mit einigen Informationen zum jeweiligen Naturschutzgebiet:

nsg3

Viel Spaß damit und Happy Caching!

Hillshading und Verwaltungsgrenzen

Hillshading und Verwaltungsgrenzen
5 (100%) 1 Stimme(n)

Vor etwa zwei Jahren habe ich auf der Kartenwebsite die Möglichkeit geschaffen, Kreisgrenzen anzuzeigen, d.h. die Grenzen der Gebiete der deutschen Landkreise. Was mich dabei immer gestört hat ist die Beschränkung auf Deutschland, sowie die fehlende Beschriftung. Damit ist jetzt Schluss!

Vor kurzem bin ich nämlich durch Zufall auf das Projekt „OpenMapSurfer“ der Universität Heidelberg gestoßen. OpenMapSurfer ist eine Kartenwebsite, die nicht nur Kreisgrenzen anzeigt, sondern allgemeine Verwaltungsgrenzen – und das nicht auf Deutschland beschränkt. Je nach Zoomstufe der Karte werden dort unterschiedliche Verwaltungsgrenzen angezeigt – von Stadtteilen bis zu Staatsgrenzen. Die verschiedenen Typen der Verwaltungsgrenzen sind farblich kodiert, außerdem wird der jeweilige Name in der Karte angezeigt. Also genau das, was ich gesucht habe.
Kurzerhand habe ich das Team von OpenMapSurfer kontaktiert und um Erlaubnis gefragt, deren Karten-Kacheln verwenden zu dürfen, was mir freundlicherweise erlaubt wurde.

Aktivieren kann man die Anzeige der Verwaltungsgrenzen mit einem Klick auf ‚Verwaltungsgrenzen‘ in der Sidebar. So sieht das dann aus:

Verwaltungsgrenzen

Bei dieser Aktion habe ich mir außerdem die Erlaubnis eingeholt, die Hillshading-Kacheln von OpenMapSurfer benutzen zu dürfen. Hillshading (zu Deutsch: Schummerung) ist eine Technik aus der Kartografie, mit der der räumliche Eindruck des Höhenprofils des Geländes erzeugt wird. Die Hillshading-Kartenkacheln werden dabei halbtransparent über die eigentliche Karte gelegt; Bergflanken heben sich dadurch plastisch hervor, als ob sie von der Seite beleuchtet worden wären.
Hillshading lässt sich durch einen Klick auf ‚Hillshading‘ in der Sidebar aktivieren:

Hillshading