Sunday, May 31, 2009

Karte zeichnen mit Google Maps API, JavaScript, Internet Explorer

Ein Nutzer schrieb "Du hast mal geschrieben, dass Du die Anzahl der Wegpunkte reduzierst und prüfst "ob sie überhaupt im Kartenausschnitt liegen, dann per Douglas-Peucker-Algorithmus danach, ob sie relevant für den Routenverlauf sind und schließlich durch die Konfigurationsoption auf 40 Elemente."

Dieser Teil des Codes ist laufend im Fluß. Im Moment, d.h. bei RouteConverter 1.26, ist das so
  • Douglas-Peucker-Algorithmus mit Abstandsmaßen abhängig von der Größe des Kartenausschnitts
  • wenn das Maximum an Positionen für den Darstellungstyp (Route, Track, Wegpunkte) überschritten ist, filtere auf die 9-fache Fläche des derzeitigen Kartenausschnitts
  • wenn immer noch das Maximum an Positionen überschritten ist, filtere jede N-te Position, wobei N so gewählt ist, daß das Maximum unterschritten wird
Die Maxima sind standardmäßig
  • Route : maximal 500 Position in Teilabschnitten von maximal 24 Positionen
  • Track : maximal 1500 Position in Teilabschnitten von maximal 35 Positionen
  • Wegpunktliste : maximal 50 Position in Teilabschnitten von maximal 5 Positionen
Sie lassen sich über Registry-Einstellungen konfigurieren.

Das gesamte Verfahren ist ziemlich aufwändig und es steckt viel Empirie drin, da die Kartendarstellung erfahrungsgemäß sehr leicht kaputt geht.

Monday, May 25, 2009

Kontextmenüs in RouteConverter 1.25 und später

In der neuen 1.25 und 1.26 gibt es den Button "Verlängere Liste aus einer Datei" nicht mehr. Diese Funktionalität gibt es nun in einem Kontextmenü auf den Positionen der Tabelle und es heißt dort "Importiere Positionsliste aus einer Datei...".



Dort finden sich auch Funktionen zum
  • Teilen von Positionslisten
  • Zusammenfügen von Positionslisten
  • Anreichern von Positionen mit Informationen von geonames.org und Google Maps: Höhe, Postanschrift, besiedelte Orte
  • Anreichern von Positionen mit der Durchschnittsgeschwindigkeit zwischen Positionen in Tracks
Und auf dem Tabellenkopf gibt es auch ein Menü, das die Auswahl der anzuzeigenden Spalten erlaubt:



Ich hoffe, das klärt einige Fragen.

Thursday, May 21, 2009

MyBB email notification customized

A user of my RouteConverter forum which is based on MyBB suggested to change the format of the email notifications the forum sends when a user replies to a thread you've been involved in.

By default, the forum sends emails with a fragment that looks like this:

To view the thread, you can go to the following URL:
http://www.routeconverter.de/forum/showthread.php?tid=338&action=newpost

If a thread spans more than one page, this can become annoying since you always have to skip forward to the latest posting of the thread. Now URLs like this are created:

http://www.routeconverter.de/forum/thread-347-post-2232.html#pid2232

Upon following this URL, you jump directly to the posting at the correct position on the page for which you have received the notification email.

To achieve this, modify forum-base-directory/inc/datahandlers/post.php and replace

get_thread_link($thread['tid'], '0', "newpost"))

in line 917 with

get_post_link($this->pid, $thread['tid']), $this->pid))

Voila!

Sunday, May 17, 2009

Falk Navigator 8

Im Navifriends-Forum gab es eine interessante Diskussion über die Routenplanung mit RouteConverter und das Erzeugen von Dateien für den Falk Navigator 8. Mit dem Release 1.26 ist die Routenplanung m.E. etwas einfacher geworden.

Tuesday, May 12, 2009

Berechnung von Geschwindigkeit und Streckenlänge

Eine Frage aus dem Forum: Woher kommt die Berechnung der Geschwindigkeit und der Routenlänge. Bei mir steht da nichts. Rechnet sich RouteConverter selber irgendwie was aus, oder liest er aus der geladenen Datei?

Die Geschwindigkeit wird ebenso wie die Routenlänge beim Hochladen von Routen aus der Distanz der Wegpunkte auf der Erdkugel berechnet (und bei der Geschwindigkeitsberechnung auf die Zeit zwischen den Wegpunkten bezogen).

Friday, May 1, 2009

'Einfg' für neue Positionen

Ich habe gerade eine neue Vorabversion 1.25.9 bereitgestellt. Darin funktioniert 'Einfg' auch ohne selektierte Position, es wird dann die Mitte des derzeitigen Kartenausschnitts genommen. Ist jedoch eine Position selektiert, dann wird wie bislang eine Position südlich der selektierten Position eingefügt. Bitte testet mal und berichtet, ob das ein Fortschritt ist.

So richtig zufrieden bin ich damit ehrlich gesagt nicht:
  • immer die Mitte des Kartenausschnitts zu nehmen macht Probleme, wenn man in eine bestehende Route Punkte einfügen möchte - darauf war das Verhalten bislang ausgelegt
  • für eine komplett neue Route wäre es in der Tat sinnvoller, die Karte zu verschieben, einen neuen Wegpunkt in der Kartenmitte zu bekommen und an eine geeignete Position zu verschieben
  • eigentlich möchte man dann aber gleich auf der Karten den Punkt platzieren, wo er hinsoll, oder? Etwa so wie hier
Datenschutz