Programm zum Erstellen großformatiger Karten

Ich habe mir ein Programm geschrieben, das die OSM-Karte in einem Browserfenster mit simulierten Mausklicks verschiebt, nach jeder Verschiebung einen Screenshot anfertigt und all diese Screenshots automatisch nahtlos zusammenklebt. Das Endprodukt aus 4 bis 400 Screenshots kann man als PNG abspeichern und z.B. ausdrucken.

Inzwischen habe ich gesehen, dass es bereits etliche Lösungen gibt, wie man OSM zu Papier bringt. Bevor ich mir die alle anschaue, möchte ich einfach mal in die Runde fragen, ob Interesse an meinem Programm besteht. Eine Testversion gibt es hier: http://www.lenz-online.de/osm/osmgrabber.zip

Hi,

dein Tool funktioniert bei mir nur sehr eingeschränkt. Die GUI skaliert nicht mit dem Fenster mit, sodass man quasi nix von dem Programm sieht und die Bedienelemente alle rechts oben zusammen gefercht sind.

Ja sorry, kleiner Bug in den Startabmessungen. Vergrößere bitte die GUI, indem du den unteren Rand runter ziehst, dann sollten brauchbare Mindestabmessungen erscheinen.

Dein Programm ist Windows-only richtig ?

Gruß Klaus

Das Programm ist in Visual Basic 2010 geschrieben. Keine Ahnung, ob man das auch auf anderen Plattformen verwenden kann.

Interesse meinerseits ist vorhanden.

Hi,

ok, habs jetzt mal maximiert gestartet, da ging es. Hat ein wenig gedauert, bis ich verstanden hab, wies geht, aber ich finds generell gut.

Aktuell arbeite ich dafür immer mit BigMap: http://openstreetmap.gryph.de/bigmap.html
Das “Problem” bei BigMap ist, dass man sehr genau die Tiles lädt, die man braucht, die resultierende Karte aber nicht direkt als PNG abspeicherbar ist, sondern dann nur wieder per externem Skriptaufruf (oder habe ich was übersehen?)

Daher mag ich dein Tool im Prinzip. Aber auch hier sehe ich ein sehr gravierendes Problem: Das der Positionierung. Will man einen größeren Bereich runterladen, muss man dennoch sehr genau schauen, wo man starten muss und auch vorher wissen, wie viele Screens denn nun nötig sind. Das weiß ein normaler Nutzer aber nicht. So habe ich für meinen Probelauf eben mehrere Versuche unternommen und musste immer wieder neu starten und nachjustieren. Danach war mein gewählter Bereich deutlich zu groß, ich musste nach langem Download wieder neu anfangen. (Klar hätte ich da auch aus dem fertigen PNG den Ausschnitt schneiden können, aber es geht ums Prinzip.) Das ist letztlich nicht nur nervig für den User, sondern auch sehr belastend für den Tile-Server (je nachdem wie viel der Browser cached und wie stark die Änderungen des Ausschnitts sind)

Was also wünschenswert wäre, wäre eine Kombination aus deinem Tool und BigMap-Handling. Bei Bigmap wähle ich grob einen Bereich und kann dann sehr genau sagen: OK, ich brauche doch noch ein Stückchen weiter links und dafür weniger rechts und unten. Oder: Oh, ich brauche doch nur eine Zoomstufe weniger. Vielleicht kannst du dein Tool also so umbauen, dass dem User mehr Möglichkeiten der Justierung gegegeben werden. Beispielsweise einen Button “Füge noch eine Zeile an” oder “Lösche eine Spalte”. Gut wäre auch, wenn es nicht nur mit ganzen Screens gehen würde, sondern auch mit der Hälfte oder dem Viertel: Angenommen, man braucht nur noch ein klitzekleines Stückchen merh am rechten Rand, da wird gleich so eine Widescreen-Größe mehr angehängt. Unschön :slight_smile:

Du siehts, Bedarf ist da, aber ich denke auch noch viel Usability-Bedarf.

Warum Screenshots? Nimm doch einfach die Original-Tiles her und klebe die zusammen (OK, das könnte um ein paar Pixel an allen Seiten überstehen, aber die Screenshots geben auch nen ausgefransten Rand, oder?).

  1. Historische Gründe. Dieses Programm ist eine Abspaltung von einem Programm, das ich mir mal für meine Segeltouren in finnischen Schärengebiet geschrieben habe, weil die käuflich erwerbbaren Seekarten so sündhaft teuer sind. Und an die Kacheln des finnischen Landvermessungsamtes kommt man nicht so einfach :wink:
  2. Es gibt OSM-Karten, auf denen mehr drauf ist als nur Kacheln. Wobei ich in aller Bescheidenheit auf zwei meiner Werke verweisen darf:
    OSM for Wikipedia mit eingeblendeten Koordinaten aus Wikipedia-Artikeln
    OSM POI Viewer OSM-Karte mit wählbaren POI-Symbolen

Die Screenshots haben natürlich KEINEN ausgefransten Rand, da die Karte immer streng senkrecht und waagerecht verschoben wird.

Was gab es zu verstehen? Was sollte ich in einer Doku besonders erklären?

Ist klar. Hat historische Gründe: bei dem Kartendienst, für den ich mein Programm ursprünglich geschrieben hatte, gibt es Buttons zum Anklicken, um die Karte zu verschieben. Man kann dort die Karte sehr präzise um soundso viele Kachel hin und zurück verschieben und kommt haargenau wieder zur Ausgangskachel.

Bei meinem Programm sehe ich die Gefahr, zu viele Features einzubauen, die die Benutzung umständlicher machen. Es dürfte auch kaum machbar sein, ein externes Browserfenster so zu steuern, dass eine gezoomt Übersichtskarte entsteht.

Ich könnte aber zwei Schnelldurchgänge anbieten: einmal nur ringsum die äußersten Kacheln und einmal nur die 4 Eckkacheln.

bzgl Doku:
Ich hatte erst das Problem, dass das Tool erst reagierte, als ich das Browserfenster auf Vollbild gestellt hatte (F11). Dann hat dein Tool auch gearbeitet. Eine reine Maximierung brachte nix - außer bei einem Testlauf, da funktionierte auch das eigenartiger Weise. War also irgendwie für mich ein nicht konsistentes Verhalten. Zwischendrin kamen dann seltsame - für mich als User nicht verständliche - Systemfehlermeldungen (mind. 2 verschiedene, die ich mir leider nicht gemerkt habe). Aber irgendwas war falsch. Nach einem Neustart gings dann… Alles noch hier und da allgemein hakelig. Aber als ich dann verstanden habe, dass der Browser wirklich Vollbild sein muss, hatte ich keine Probleme mehr - außer eben denen der Positionierung.

Dsa mit dem Zoom verstehe ich. Das wird wohl nicht machbar sein mit deiner Herangehensweise. BigMap arbeitet ja mit Kacheln und weiß ja, welche da gezoomt werden müssen. Aber Buttons einzubauen für eine Zeile oben anfügen/löschen und Spalte rechts anfügen wäre ja für dich nicht wirklich ein Mehraufwand und versteht jeder Benutzer. Der Ansatz mit den 4 Eckkacheln ist hingegen schon sehr gut.

Früher oder später würde ich aber auch zu Bernhard Hillers Lösung gehen. Um dann das “mehr” an Infos anzubieten, musst du dann eben mit Layern arbeiten. Ich habe selbst sowas schon geschrieben (kann es leider nicht zur Verfügung stellen, da das für den Arbeitgeber war). Ist im Grunde aber fix geschrieben. Da könnte man deutlich mehr rausholen bei letztlich.

Sorry, das mit dem Anfügen sehe ich wirklich als problematisch an. Du meinst, das Programm hat eine Karte erstellt, und wenn sie fertig ist, soll man die Karte nachträglich noch erweitern können? Das würde nur funktionieren, wenn der Benutzer die Karte im Browser nicht zwischendurch händisch verschiebt… und der Programmieraufwand wäre auch erheblich. Die Sache mit den Rahmen-/Eckkacheln war schon aufwändig genug…

Ich habe das Programm ein wenig erweitert, es beendet sich auch nicht mehr so einfach, sondern bietet an, eine Karte im Standardbrowser zu öffnen.

Außerdem habe ich eine “offizielle” Seite mit Download-Link und ein bisschen Doku eingerichtet: User:Plenz/OSMgrabber

Der Server ist (derzeit?) nicht mehr erreichbar. Ist BigMap womöglich umgezogen?

Gruß Klaus

Ich will jetzt nicht den Zeigefinder schwingen, sondern nur kurz informieren: Man soll/kann nicht mehr massenhaft Tiles automatisiert grabben… Ich weiß nicht, wie der aktuelle Stand ist, aber ich glaube, man wird zunächst etwas “gebremst” und nachher werden Spezial- oder Leerkacheln ausgeworfen, die über das Grabbing-Verbot informieren.

Also von Massendownload kann keine Rede sein. Ich benötige einen Ausdruck von einem weniger als einen Quadratkilometer großen Gebietes für eine Qualitätssicherungsmaßname (BTW: das Gebiet hat ca. 1 Mio Besucher pro Jahr). Der OSM-Server quittiert meine PNG-Downloadversuche beharrlich mit “The load average on the server is too high at the moment. Please wait a few minutes before trying again.”. Andere Tile-Downloader (z.B. Mobac) scheinen grundsätzlich blockiert zu werden. Bei Massendownloads habe ich dafür volles Verständnis, aber für so eine begrenzte Anzahl an Tiles?

Gruß Klaus

Siehe dazu auch http://wiki.openstreetmap.org/wiki/Tile_usage_policy - aber ob die hier greift?

Für die von mir benötige Karte zur Qualitätssicherung habe ich jetzt ein entsprechendes Programm erstellt. Das plattformunabhängige Perl-Programm basiert auf einem vormals von “openstreetmap.gryph.de/bigmap.cgi” generierten Skript.

Sollten auch andere Mapper hin und wieder Bedarf für eine etwas größere Karte haben (Qualitätssicherung, Präsentation, …) haben, stelle ich das Programm gerne per PM zur Verfügung. Präfentiv weise ich schon mal auf die “Tile usage policy” hin (http://wiki.openstreetmap.org/wiki/Tile_usage_policy), die es natürlich einzuhalten gilt.

Gruß Klaus

PS: Mit dem vom User Plenz erstellten Programm (s.o.) bin ich nicht weitergekommen, da es “nur” unter Windows läuft.