Archiv für März, 2008

Papierloses Cachen 2: Cachemate

Dirk am 27. März 2008

Im Artikel über papierloses Cachen habe ich bereits ein paar Worte über Cachemate verloren, ein (kommerzielles) Tool wie etwa auch GpxView oder GPXSonar. Es importiert GPX-Dateien oder LOC Dateien z.B. von opencaching.de oder geocaching.com oder von einem der diversen Tools wie Cachewolf, die die o.a. Seiten spidern und zeigt die Informationen über die in den GPX-Dateien an. Erstehen kann man das Tool hier, ich habe gute 5 EUR bezahlt, der Dollar steht für solche Käufe zur Zeit ziemlich gut.

Cachemate ÜbersichtDer nebenstehende Screenshot zeigt die Übersicht des Programms, so siehts nach dem starten aus (zumindest wenn man denn schon ein paar Caches auf den PDA geladen hat). Man sieht eine Liste der Caches. Diese ist eventuell gefiltert, filtern kann man nach Namen oder nach Entfernung zu einem bestimmten Punkt (wenn ein GPS am PDA angeschlossen ist, auch zu der aktuellen Position).

Der Cachemate interpretiert auch spezielle geocaching.com Tags im GPX-Format, z.B. sieht man hier in der ersten Spalte angezeigt, welche Caches Travelbugs enthalten. Der grüne Pfeil zeigt an, dass ich den Cache von der Reihe Kölnopoly Göthestraße bereits gefunden habe.

Unten in der Leiste sieht man einige Logos, unter anderem zwei mit rotem Pfeil. Diese beiden sind zum exportieren und importieren von GPX-Dateien. Den Import möchte ich hier noch etwas genauer beschreiben:

Import von GPX-Dateien

Nach dem Klick auf das Importicon klickt man nochmal auf Start, um den Import von GPX bzw. LOC-Dateien zu bestätigen, und wählt dann eine entsprechende Datei aus (wie im nebenstehenden Bild. Nachdem man die angeklickt hat, erledigt Cachemate den Rest, die in der Datei enthaltenen Waypoints werden importiert und in der internen Datenbank abgelegt.

In der Übersichtsliste erscheinen ab sofort alle in dem Track enthaltenen Caches.

Weiterhin bietet Cachemate die Möglichkeit, die Liste nach der Entfernung zur aktuellen Position zu filtern. Hat man am PDA kein GPS-Gerät angeschlossen, kann man die aktuelle Position auch manuell angeben, es werden dann nur die Caches im Umkreis um die dort angegebene Position angezeigt. Weiterhin kann das Tool natürlich auch nach Namen suchen oder nach bestimmten Kriterien sortieren.

Die verschlüsselten Hints werden auch verschlüsselt angezeigt, können bei Bedarf aber auch entschlüsselt werden.

Google Maps Karte einbinden (Teil 2)

Dirk am 21. März 2008

Im letzten Artikel habe ich beschrieben, wie man eine einfach Google Maps Karte in seine eigene Webseite integriert. Aufbauend auf dem Artikel werden wir nun eine erweiterte Karte generieren, diesmal wird eine Linie mit mehreren Punkte erzeugt.

In dem Artikel erwähnte ich ja bereits, dass man eine Polyline zwischen beliebig vielen Punkten einzeichnen kann. Folgende Methode nutzten wir, um eine Polylines zwischen zwei Punkten einzuzeichnen:

var polyline = new GPolyline([
    new GLatLng(50.864803, 7.003784),
    new GLatLng(50.936255, 6.959152)
], "#ff0000", 10);

Auf ähnliche Weise wollen wir nun eine Tour aus einer GPX-Datei in der Karte anzeigen. Zunächst sehen wir uns dazu einen Ausschnitt aus einer GPX-Datei ein. GPX ist ein XML-basiertes Format, und damit auch menschenlesbar:

  <trk>
    <name>ACTIVE LOG</name>
    <trkseg>
      <trkpt lat="50.8832728" lon="6.9834976">
        <ele>44.3580322</ele>
        <time>2008-03-18T13:13:50Z</time>
      </trkpt>
      <trkpt lat="50.8832509" lon="6.9833117">
        <ele>44.8386230</ele>
        <time>2008-03-18T13:13:59Z</time>
      </trkpt>
      <trkpt lat="50.8832505" lon="6.9832326">
        <ele>44.3580322</ele>
        <time>2008-03-18T13:14:03Z</time>
      </trkpt>
      <trkpt lat="50.8832217" lon="6.9831215">
        <ele>43.3966064</ele>
        <time>2008-03-18T13:14:08Z</time>
      </trkpt>
      [...]
    </trkseg>
  </trk>

Ich habe den Anfang der GPX-Datei weggelassen, wir steigen direkt in das XML-Tag <trk> ein. Dieses Element enthält einen vom GPS aufgezeichneten Track. Innerhalb des <trkseg> Knotens sieht man alle <trkpt> Knoten, dieses sind die einzelnen vom GPS aufgezeichneten Position, inklusive Uhrzeit (diese kann zum Beispiel genutzt werden, um Fotos mit den Koordinaten zu verknüpfen, beim sogenannten Geotagging). Hat man das GPS-Gerät also so konfiguriert, dass solche Tracks aufgezeichnet werden, könnte man sich die Datei in einem Texteditor öffnen, die Koordinaten rauskopieren und dann in Liste von GLatLng Objekte kopieren, etwa so:

var polyline = new GPolyline([
    new GLatLng(50.8832728, 6.9834976),
    new GLatLng(50.8832509, 6.9833117),
    new GLatLng(50.8832505, 6.9832326),
    new GLatLng(50.8832217, 6.9831215)
], "#ff0000", 10);

Das ist natürlich bei langen Tracks recht langwierig, außerdem wird das Skript dadurch sehr lang. Daher bietet Google die Möglichkeit, Polylines über eine andere Methode zu erzeugen. Die Punkte werden dazu nach einem bestimmten Algorithmus enkodiert. Der Algorithmus wird hier erklärt. Das muss man aber nicht unbedingt verstehen, denn hier gibt es ein Tool zum Erzeugen der enkodierten Version. Das Erzeugen der Polyline sieht dann so aus:

var encodedPolyline = new GPolyline.fromEncoded({
    color: "#ff0000",
    weight: 10,
    points: "mcquHy}ri@Bb@?NDT",
    levels: "BBBB",
    zoomFactor: 32,
    numLevels: 4
});

Der fett markierte Teil stellt nun die vier oben definierten Punkte dar. Die Beispieldatei zu diesem Teil gibts hier.

Mit diesem Rüstzeug kann man dann die Umwandlung der GPX-Datei angehen. Manuell ginge das jetzt schon, automatisieren sollte man das jetzt noch irgendwie. Dazu gibt es ziemlich viele Wege. Möglich wäre zum Beispiel eine XSL-Transformation, die die GPX-Datei in eine Reihe von Punkte umwandelt (also quasi alle unnötigen XML-Tags entfernen). Oder man liest die GPX-Datei direkt per Javascript ein und erzeugt damit on the fly die Polyline, ein Beispiel wie man das machen kann findet sich hier. Oder man schreibt sich ein Programm in einer beliebigen Programmiersprache, welches die Umwandlung vornimmt.

Das habe ich gemacht: Mit den Informationen, die ich bereits bei der Recherche für den Artikel über Geotagging gesammelt hatte, ging das Recht schnell. GPX-Datei mit XML-Beans einlesen, eine Klasse zur Encodierung der Polyline ergoogeln und einbinden, ein kleines Webmodul stricken, welches genau die Umwandlung durchführt und in XML aufbereitet, diese XML-Information über JQuery (mit AJAX) einlesen, fertig. Dazu später mehr…

New York - Geocachen im Big Apple

Dirk am 20. März 2008

Ich flieg demnächst nach New York, um genau zu sein, am 31.3. - Und ich möchte natürlich sehr gerne auch in New York den ein oder anderen Cache finden, vielleicht einen Coin mitbringen oder auch da lassen. Am liebsten hätte ich einen Geocoin von Köln, aber soweit ich das gesehen habe, gibt es sowas nicht, dabei wär ich auch bereit ordentlich dafür zu zahlen ;). Es wurde da wohl mal ne Initiative gestartet, und zwar im Forum geoclub, dort habe ich den “Da simmer dabei” - Geocoin gefunden. So einen hätte ich auch sehr gerne, hab aber keine Stelle gefunden, wo man den kaufen konnte. Und selber designen kann sowas nicht, blöd.

Michi hat sich ja schon einen Coin zugelegt, ich besitze bis jetzt noch gar keinen, und konnte mich auch noch nicht so richtig entscheiden, welcher es sein soll. Naja, ne Woche hab ich ja noch Zeit zum überlegen, diese Woche versendet der Geocoinshop ohnehin nichts.

Und wenn ich mich denn dann entschieden habe, muss ich ja auch noch eine schönen Cache in New York aussuchen, den dann finden, und denn Coin dann da aussetzen. Ich hab schonmal ein bisschen geschaut, und mir einen Haufen Caches in New York auf mein GPS geladen (dabei festgestellt, dass man auf das eTrex Vista nur 500 Wegpunkte speichern kann, wie doof ist denn das), welche ich dann davon aufsuchen werde, weiß ich noch nicht, werde ich aber auch hier im geoCologning Blog berichten.

Aber so wie es aussieht, ist die Szene in Amerika ebenfalls hoch aktiv, wobei es da wohl auch strenge Regeln gibt :-), es gibt eine eigene Organisation, und sicher noch vieles mehr interessantes, was ich dann später mal berichte. Leider habe ich noch kein Blog über New Yorker Geocacher gefunden, mal sehen, was sich da noch so findet. Wie auch immer, ich halte Euch über auf dem Laufenden.

locr - Geotagging Foto Community

Dirk am 19. März 2008

Nach Flickr folgten viele Web 2.0 Ideen auf r, nun gibts auch locr, eine Community zur Sammlung von geokodierten Fotos. Die Beschreibung, wie man Fotos geotaggen kann, gabs hier schon, alles was man braucht ist ein Fotoapparat und ein GPS-Gerät. Das GPS-Gerät sollten Leute, die dem Hobby Geocaching anhängen, wohl haben, ne Digicam hat inzwischen auch jeder. Und jetzt kann man die so entstandenen Fotos in einer neuen Community mit anderen teilen. Idee ist natürlich nicht neu, Panoramio ist sicher der bekannteste Kandidat, inzwischen ja auch im Google-Imperium aufgenommen, und direkt in Google-Earth integriert.

Naja, mal sehen, wie sich diese neue Community etabliert, ich habe auf jeden Fall mal einen Account für geoCologning angelegt und ein paar Bilder hochgeladen.

Gefunden hab ich das übrigens hier bei photoscala.

Google Maps Karte einbinden (Teil 1)

Dirk am 19. März 2008

Ich wollte meine Beiträge zu den Geocaching - Touren, die wir so machen, mit eine Grafik der gelaufenen Wege anhübschen. Google Maps bietet dazu gute Möglichkeiten, man braucht nicht viel, nur einen Google-Maps-API Key, und eine Seite, auf der die Tracks aufgebaut werden. Diese Seite integriert man dann einfach in den Beitrag per IFrame oder verlinkt sie, fertig.

Als Referenz für diese Artikelreihe sollen folgende Quellen dienen:

Zunächst braucht man also eine einfache HTML-Seite, die die Karte ausliefert. Der grobe Rahmen sieht so aus:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html 	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:v="urn:schemas-microsoft-com:vml">
<head>
	<title>Google Maps</title>
	<script src="jquery.js"></script>
	<script src="jquery.xpath.js"></script>
	<script src=".../maps?file=api&v=2&key=xxx">
	</script>
	<script type="text/javascript">
		var map;
		function initialize() {
 		if (GBrowserIsCompatible()) {
 			//hier gehts weiter
 		}
 	}
	</script>
</head>
<body onload="initialize()" onunload="GUnload()">
	<div id="map" style="width:500px;height:500px;">
	</div>
</body>
</html>

Eingebunden werden die Hauptbibliothek von JQuery, das XPath Plugin (werden später benötigt) und die Google Maps API.

Dieser Artikel zeigt zunächst einige kurze Beispiele für Google Maps (siehe dazu auch die Developer Guide, dort sind Beispiele für die einzelnen Funktionen angegeben). Der Code kann einfach oben an die Stelle “hier gehts weiter” reinkopiert werden - die Datei kann man lokal einfach abspeichern und öffnen, dafür wird noch kein Google API Code benötigt:

Map anlegen, bei Köln zentrieren und Maßstab festlegen (Zoom gibt quasi den Maßstab an, hohe Zahlen ist weiter weg, kleine Zahlen nah dran)

map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(50.889391,6.977005));
map.setZoom(13);

Karte auf Satellitenansicht umstellen und einige Controller hinzufügen

map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setMapType(G_SATELLITE_MAP);

Marker hinzufügen

marker=new GMarker(new GLatLng(50.892802,6.96722))
map.addOverlay(marker);

Linie zwischen zwei Punkten (Luftlinie von mir zuhause bis in die Innenstadt)

var polyline = new GPolyline([
    new GLatLng(50.864803, 7.003784),
    new GLatLng(50.936255, 6.959152)
], "#ff0000", 10);
map.addOverlay(polyline);

Mit dem Werkzeug an der Hand ist es eigentlich schon fast fertig. Jetzt könnte man für jede Tour eine solche Seite anlegen, und alle Wegpunkte in eine GPolyline (dem Konstruktur wird ein Array von Punkten übergeben, es kann also eine beliebig lange Linie erzeugt werden) hinzufügen.

Einfacher wäre natürlich, wenn man die GPX-Datei, die von den meisten Navis erzeugt werden, irgendwie direkt einbinden könnte. Dafür braucht man aber etwas Anwendungslogik: Die GPX-Datei muss eingelesen werden und in ein Google-Maps lesbares Format umgewandelt werden (also zum Beispiel in eine Reihe von GLatLng Punkten, oder in eine enkodierte Version dieser Punktmenge). Wie man das machen kann (mithilfe einer kleinen Java-Applikation und JQuery) zeige ich in dem nächsten Artikel.

Hier die oben aufgebaute Beispielseite, eingebunden im IFrame:

Diese Seite könnt ihr auch hier aufrufen, und Euch dort den Source ansehen. Dort ist der API Key von geocologning.de eingebunden, dieser funktioniert natürlich nur unter meiner Domain.

Kölner Süden Geocaching-Kurz-Tour

Dirk am 19. März 2008

Auf dem Weg nach Marienburg bin ich nochmal im Forstbotanischen Garten abgesprungen, weil da ja noch ein Cache schlummerte, den wir noch nicht entdecken konnten, weil wir dort rausgeschmissen wurden. Das ist mir diesmal nicht passiert. Ich bin direkt zum letzten Wegpunkt, den kannte ich ja schon. Etwas oberhalb ist eine Bank, dort saß doch tatsächlich jemand rum und starrte genau auf das Areal, das ich jetzt eigentlich durchsuchen wollte. Der ganze Forstbotanische Garten war leer, nur da saß jemand. Naja, habe dann eine kleine Runde gedreht, dann war der Cache aber nicht mehr vor mir sicher. Hab ihn nach einigem Suchen gefunden, war gar nicht so einfach. Konnte dann ungestört loggen und die Kiste wieder verstecken. Naja, gestört hat mich schon etwas, und zwar das ich meinen Stift im Auto vergessen hatte, und der Stift im Cache eigentlich nicht geschrieben hat. Hab also weniger geloggt als vielmehr geritzt :-).

Dann nochmal am Zwischenwerk-Cache vorbei, weil wir die Nummer vergessen hatten. Diesmal hab ich sie aufgeschrieben, sind noch vier und der Final von dieser Reihe übrig.

Am Schluss bin ich dann noch ein bisschen weiter bis nach Marienburg rein und habe da einen der Kölnopoly-Serie mitgenommen, die Göthestraße, war (dank des Hints) gut zu finden.

Wollte dann schon weitermachen, das Wetter war eigentlich auch noch gut (hat zwar zwischendurch mal ein paar Tropfen geregnet, die Sonne ist aber schon wieder rausgekommen), aber eigentlich schreibe ich grade meine Diplomarbeit, und ich habe dann beschlossen, dass ich der mal wieder den Vorzug geben sollte. Habe ich dann auch kurzzeitig, zumindest in der Zeit, wo ich mich nicht dem Geocologning Blog gewidmet habe :-).

Hier gings lang (unten der Forstbotanische Garten, mitte Rechts das Zwischenwerk, oben links Göthestraße).

Wie die Einbrecher

Dirk am 18. März 2008

So langsam weiß ich, wie es ist, ein Haus zu überwachen, welches man überfallen möchte. Man schleicht umher, guckt sich ständig um, ob nicht doch einer kommt und einen sieht - gleichzeitig versucht man verzweifelt die Information zu finden, die man braucht. Man läuft das zigste mal den gleichen Weg entlang, irgendwo muss der doofe Cache doch sein. Oder das Loch im Zaun, welches für den Zugriff geeignet ist :-).

Wenns ein schwerer Cache ist, fragt man sich, ist das GPS so ungenau? Oder war das GPS des Cache-Owners nur zu ungenau? Man weiß es nicht, hat auch keine Zeit mehr weiter zu suchen, weil schon wieder Leute kommen. Man geht ‘ne Runde, in der Hoffnung, dass man gleich wieder seine Ruhe hat, um den Cache zu suchen.

Dann irgendwann ist das gute Stück gefunden und geborgen, der Stress ist noch nicht vorbei. Nun möglichst unauffällig das Kleinod im Cache durchschauen und loggen. Wenn nun jemand vorbeikommt, und man hat ne riesen Kiste auf dem Schoß, ist sinnvolles tarnen nicht möglich, also so tun, als wär alles ganz normal, als ob man die Kiste halt immer dabei hat, vielleicht noch nett grüßen. Dann warten, bis keiner in der Nähe ist, und, während man sich immer wieder umguckt, die Box wieder so verstecken, dass niemand drüber stolpert.

Endlich ist sie weg! :-)

Unterwegs in Wesseling Urfeld

Dirk am 16. März 2008

Gestern war nochmal etwas schöneres Wetter, da sind Michi und ich nochmal losgezogen und haben ein paar Caches erbeutet, und zwar in einem Stadtteil von Wesseling, nämlich Urfeld. Dort hat gismogizmo so einige Caches verborgen, vermute mal schwer das er aus der Ecke kommt ;). Das Geocachen da war ganz interessant, direkter Blick auf die Wesselinger Industrie, nicht umsonst heißen die Caches Shell 1 - 3. Shell 1 war schnell gefunden, Shell 2 hatte die Michaela schonmal versucht, ist aber irgendwie gescheitert, müssen wir später nochmal schauen. Shell 3 haben wir dann auch noch gestartet, sind zu Fuß noch zu dem Schild, an dem die Infos stehen, haben die Zielkoordinaten ins Navi getippt und dann in die Zielrichtung. Hatten dann leider keine Zeit mehr, noch im Wald rumzukrabbeln und den Cache zu finden, muss man also auch nochmal hin. Wobei es da dermaßen gestunken hat, dass man sich das doch genau überlegen sollte, ob das sein muss.

Auch von gismogizmo ist der Vorsicht Hochwasser - Cache, da der auch direkt in der Nähe war, haben wir den auch gesucht und gefunden. Ein Multi, wobei die Entfernung von der ersten zur zweiten Station knappe 3m sind, da hätte man sich eventuell auch eine sparen können.

Trotzdem danke an gismogizmo fürs fleißige verstecken! Hier unser Track, los gings am Wesselinger Bahnhof (oben links), dann mit dem Auto zum Parkplatz (etwa unten rechts). Dann zu Fuß rumgelaufen und gesucht, auf dem Rückweg noch bei der Sparkasse vorbei und noch zu Meckes: Track ansehen. Die Karte habe ich mithilfe von Google Maps erzeugt, dort gibt es eine API, mithilfe derer man alle möglichen Karten erzeugen kann, ich beschreibe später mal, wie man das machen kann. Einen Key dafür gibts bei Google kostenlos. Den eingezeichneten Track habe ich aus der GPX-Datei erzeugt, den mein GPS eTrex Vista HCx aufgezeichnet hat. Ich habe nun auch eine Karte bei dem Beitrag zur Wahner Heide eingestellt, die zugehörige GPX-Datei hat noch das Gerät von Michi aufgezeichnet, da hatte ich noch keins.

Strommast im Urfelder Feld:

Strommast

Papierloses Cachen mit dem IPAQ PDA

Dirk am 11. März 2008

Wo ich nun schon so ein hochmodernes Navi besitze, hätte ich eigentlich gedacht, dass man auf dem Vista HCx auch Cachebeschreibungen ablegen kann, damit man zum Geocachen keine Zettel mehr mitnehmen muss. Weit gefehlt, wenn ich das richtig sehe, geht das nicht. Es gibt zwar eine eigene Kategorie für Geocaches, doch das sind auch nur Waypoints, mit nem Namen und ner Position.

Also bin ich alleine mit diesem Gerät doch noch weit entfernt vom papierlosen Cachen, ich bräuchte noch immer die Ausdrücke (oder heißt es im Plural auch Ausdrucke? naja, egal ;) ) der Caches. So hab ich mir das aber nicht vorgestellt, als technikaffiner Cacher möchte ich das natürlich vermeiden. Also muss ein Programm her für meinen PDA, ein IPAQ 3970 (schon etwas betagt, ähnlich wie der 3950, nur mit Bluetooth, noch von Compaq, wurde inzwischen von HP übernommen).

Zwei kostenfreie Programme konnte ich finden, einmal GpxView und GPXSonar (dessen eigentliche Seite wohl schon länger offline ist). Beides eigentlich genau Programme, die die Funktion, die ich haben wollte, unterstützen. Nämlich die GPX-Dateien, die man sich z.B. bei opencaching.de aus Suchanfragen generieren kann (und auf geocaching.com auch, nur braucht man da ne Premiummitgliedschaft, die ich noch nicht habe), auslesen und auf dem PDA anzeigen, mit Beschreibung und Logs und allem. GpxView ist auf meinem PDA leider gar nicht gestartet, GPXSonar zwar schon, das Tool konnte dann aber offenbar weder Cachebeschreibung noch Logs ausgeben.

Ein kommerzieller Anbieter, nämlich smittyware.com , bietet auch eine alternative, nämlich den Cachemate. Das Programm wird für diverse Plattformen angeboten, unter anderem auch für Windows Pocket PC, und das läuft auf meinem PDA (um genau zu sein Windows Mobile 2003). Mit der kostenlosen Variante kann man maximal 10 Caches importieren, dann ist Schluss. Da der Preis des Tools aber grade noch so zu stemmen war (5,49 EUR), habe ich mich zum Kauf hinreißen lassen. Wenige Minuten später besaß ich den Key, und ich konnte die 500-Cache große Datei von opencaching.de importieren (dabei ist GPXSonar übrigens abgeschmiert).

Das ganze sieht dann etwa so aus:

PDA 3970 mit Cachemate

Ich habs getan!

Dirk am 10. März 2008

Ich bin jetzt stolzer Besitzer eines GPS-Navigationsgerätes von Garmin:

meins…

Es ist ein Vista HCx, sehr sehr schick.

Ich habe das zusammen mit der Michi erstanden, und dann direkt damit auch noch einen Cache gefunden, im Volksgarten in Köln. War zwar schon fast dunkel, ging aber noch grad so, vor allem mit so ‘nem coolen Navi.