OSM Composer V0.8rc1 verfügbar

Nach längerer Stille gibt es eine neue Version 0.8 von Composer, die einiges an Neuerungen bringt. Nachdem ein großer Teil der Engine von grundauf umgeschrieben wurde und einige neue Funktionen hinzugekommen sind, nenne ich diese Version erst mal Release Candidate 1. Sie funktioniert zwar hier bei mir einwandfrei, aber es würde mich wundern, wenn sich da nicht noch ein ungeplantes Feature findet.

Die wesentlichen Änderungen sind:

  • Intelligente Aufteilung der Karte in Kacheln (unter Berücksichtigung der Höhenlinien)
  • Kurze Wegstücke auf einer Route werden zusammengefaßt und ebenfalls mit Wandermarkierungen versehen
  • Verbesserte Höhenlinien (korrekt positioniert, weniger Artefakte, mit Splines abgerundet)
  • Speicherbedarf bei Kartenerstellung deutlich geringer
  • Höhere Geschwindigkeit und Ausnutzung von Doppelkernen durch Multithreading
  • Unterstützung für MapSource auf 64bit Windows
  • Verarbeitung kann pausiert werden

Mehr Infos und den Download findet Ihr unter http://wiki.openstreetmap.org/wiki/DE:OSM_Composer#OSM_Composer_installieren

Die Tools im Starthilfeset wurden ebenfalls aufgefrischt. Über Euer Feedback zur 0.8rc1 würde ich mich natürlich freuen.

bye
Nop

Hallo,
zu Beginn möchte ich dir erstmal meinen Dank aussprechen. Ich hab zwar noch keine Karte mit der neuen Version gerechnet, aber dennoch verdient deine Arbeit meinen Respekt!!!

Ein paar Verbesserungen zur “Usability” hätte ich aber schon:
Die Vorschau-Icons bei den Wegen sind super. Einziges Manko: Sie werden nicht aktualisiert, wenn ich die Farben oder die Dicke der Linien ändere.

In den Einstellungen der Jobs unter Parameter finde ich die Angabe der maximalen Elemente pro Kachel in k merkwürdig. Hier würden sicher die 3 Nullen besser verständlich sein.

Ein Feedback zur Kartenerstellung und zu den Höhenlinien gibts dann morgen…

Edit:
Wenn man nicht die Automatik wählt zum Berechnen der Kachelgröße, wie wird diese dann festgelegt. Das bisherige Eingabefenster dafür kann ich nicht mehr finden…

Edit2:
Wenn srtm2osm einmal einen Fehler ausgibt, bricht die Berechnung komplett ab. Hier wäre eine Nachfrage Wiederholen|Abbrechen|Ignorieren evtl. hilfreich.
Auszug aus dem Log:

srtm2osm call failed!
Error creating density map

Stimmt, da haben wir schon das erste ungeplante Feature. :slight_smile:

Geht immer automatisch - habe die Anleitung jetzt auch mal ein wenig ergänzt in diesem Punkt.

Naja, wenn das abbricht können die Daten korrupt sein und es macht wenig Sinn weiterzufahren solange das Problem nicht behoben ist.
Zur Not kann man das übergehen indem man die Höhenlinien ganz abschaltet.

bye
Nop

Ich hab das mit dem Fehler mal weiter verfolgt.
Die *hgt-Dateien sind alle lokal bereits vorhanden und sollten auch fehlerfei sein (haben zumindest bisher immer funktioniert).
Der Fehler tritt im Abschnitt “Analyse Konturdichte …” auf.
Höhenlinien und Karte erstellen ist auf “Bei Bedarf” gestellt, Abrunden ist aktiviert.

Schau doch mal in die commands.log, dort müßte die Originalrückmeldung von srtm2osm zu finden sein.
Hast Du srtm2osm auf die neuste Version aktualisiert?

Edit: Eigentlich sollte Composer gar keine Analyse vornehmen, er hat die Konturdaten für D/Ö/CH bereits mit dabei. Kopier’ doch mal die Density.tbl in Dein lokales Verzeichnis. Das generelle Problem müssen wir aber trotzdem lösen. :slight_smile:

Ich habe erstmal nur die jar-Dateien kopiert. :wink:

Zum Problem: Der Fehler trat beim Erstellen meiner Karte Ostdeutschland auf. Diese umfasst MecPom, Berlin, Brandenburg, Sachsen, Sachsen Anhalt und Thüringen.


[...]
D:\OpenStreetMap\map_composer\Tools\srtm2osm\Srtm2Osm.exe -o D:\OpenStreetMap\map_composer\tmp\contour_sample.osm -large -corrxy 0.0005 0.0005 -step 20 -cat 400 200 -bounds1 52.9 11.9 53.0 12.0 

D:\OpenStreetMap\map_composer\Tools\srtm2osm\Srtm2Osm.exe -o D:\OpenStreetMap\map_composer\tmp\contour_sample.osm -large -corrxy 0.0005 0.0005 -step 20 -cat 400 200 -bounds1 53.0 11.9 53.1 12.0 


ERROR: Die Methode oder der Vorgang sind nicht implementiert.

Bei einer anderen Karte (Norddeutschland mit Niedersachsen, Bremen, Hamburg und Schleswig Holstein) hat es eben problemlos funktioniert.

smrt2osm ist auf dem Stand vom 14.08.

Edit:
Ich hab jetzt mal einen Ausschnitt um das Gebiet erstellt und direkt über die API heruntergeladen. Zusätzlich hab ich die gecache’ten *hgt-Files verschoben. Neue wurde keine heruntergeladen. Auch nicht bei den Funktionierenden Aufrufen von srtm2osm. Fehlerlog ist genauso wie der obere.

Wenn ich noch irgendwas tun kann, was dir hilft den Fehler aufzuspüren, lass es mich wissen.

Hallo Nop,

evtl. hab ich gerade noch einen Fehler entdeckt.

java.io.EOFException OSM file truncated D:\OpenStreetMap\map_composer\input\ostdeutschland_input.osm

Bekomme ich im Log angezeigt, wenn Schneiden auf “Bei Bedarf” steht, aber noch keine solche Datei im Input-Verzeichnis vorhanden ist. Als ich es dann mit “Immer” aufgerufen hab, ging es.

Btw: Gibt es eigtl. irgendwo eine Vorlage für die Polygon-Dateien?
Ich hab mir vor einiger Zeit (hat also nichts mit dem 0.8 rc1 zutun) eigene erstellt und seit dem bekomme ich immer am Anfang eine java.lang.NumberFormatException: empty String.


none
1
   1.050659E+001   5.338450E+001
   1.057504E+001   5.338638E+001
   1.071077E+001   5.339107E+001
...
   1.060584E+001   5.336646E+001
END
END

Ich habe diese Fehlermeldung noch nie gesehen, da muß ich auch erst mal rückfragen.
Welche Version zeigt Dir srtm2osm an, wenn Du es einfach direkt aufrufst?

Die Version ist 1.8.14.10. Sollte die aktuelle sein, die man von deiner Website herunterladen kann.

Das ist kein Fehler, sondern ein neues Feature. :slight_smile: Das Schneiden mit Osmosis ist schief gegangen und ostdeutschland_input.osm wurde nur unvollständig geschrieben. Das kann alle möglichen Folgefehler produzieren. Seit 0.8 macht Composer eine Schnellprüfung und erkennt diese Probleme. Bei “Immer” ignoriert er vorhandene Dateien und korrigiert solche Fehler.

Behebt das auch den Fehler bei srtm2osm?

Die Polygon-Dateien sind im Wiki von Osmosis näher beschrieben: http://wiki.openstreetmap.org/wiki/Osmosis/Polygon_Filter_File_Format. Beispiele gibt’s an verschiedenen Stellen z.B. auf der Geofabrik - oder laß’ Dir von Composer ein Beispiel erzeugen.

Auf den ersten Blick würde ich vermuten, daß die dreistelligen Exponenten nicht gültig sind.

Hallo!

Nein… aber mit deiner Density.tbl funktioniert es erstmal.

Hallo

zunächst mal vielen Dank für den Composer und meinen Respekt für dieses Tool. Ich habe mal die Standard-Installation getestet. Die eingebauten karten (Karte bauen) funtioniert bei mir ohne Probleme. Ich habe es jedoch nicht geschafft eine eigen Karte zu erstellen Region 8.5 - 8.9 / 48.5 - 48.9. Da kam beim API download zunächst mal ein härtnäckiger Fehler. Ich habe dann die Region auf die obige Region abgeändert,dann war das weg. Dann kam ein Fehler beim Srtm2Osm Aufruf. Ich habe dann die Höhenlinien abgewählt (Input Dir/Data Dir gelöscht). Das läuft dann ohne Fehler im Logfenster durch, aber die Größe der GMAPSUPP.IMG ist nur 38 KB.
Wie ist das eigentlich wenn man ne neue Karte generiert, muß man die GMAPSUPP bzw das Data Dir vorher löschen?

Ich möchte nur ne GMASUPP.IMG erzeugen, da ich diese in GLOPUS nutzen möchte?

Was mache ich eventuell falsch, was soll ich näher beschreiben?

MfG
Achim

Ps: Schön wäre es, wenn man die Kartenregion durch Aufziehen eines Rechtecks auf ne Karte markieren könnte. Das ist aber wohl keine Zielsetzung vom Composer.

Löschen musst du im Data und Input-Verzeichnis eigentlich nicht. Wenn du mehrere Karten erstellen willst musst du aber die GMAPSUPP.img aus dem data-Verzeichnis sichern. Diese wird immer überschrieben. Eine einfacherer Lösung daüf wäre die Option “Karte zippen” oder so ähnlich. Dann beommst du eine gezippte MapSource Version und eine gezippte GMAPSUPP-Version im public-Ordner. Dann entfällt das manuelle sichern.

Die Bereichmarkierung ala jOSM mit Karte hatte ich auch schonmal vorgeschlagen, aber wie häufig erstellt man so einen Bereich und wieviel Programmieraufwand steckt dahinter. Da passt Aufwand/Nutzen nicht. Du kannst aber einen PermaLink parsen lassen, wenn dir das hilft.

Du müßtest uns die genauen Fehlermeldungen mitteilen, damit wir Dir helfen können.

Ansonsten hat aighes die Fragen schon sehr treffend beantwortet.

Hallo

Das dachte ich, ist mir klar. Ich hatte das in den Vorgängerversionen auch nich explzit gelöscht. Aber wenn was nicht geht zweifelt man an den selbstverständlichen Sachen

Ich habe es eben “sinngemäß” mit der 0.77 versucht da kommt zwischendrin folgende Fehlermeldung. Hatte ich bisher nicht, da ich immer die Planetfiles verwendet habe di ich explizit runtergeladen hab.

Downloading http://api.openstreetmap.org/api/0.6/map?bbox=8.700001,48.899994,8.800001,48.9
Downloading http://api.openstreetmap.org/api/0.6/map?bbox=8.800001,48.899994,8.9,48.9
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[217,35]
Message: XML document structures must start and end within the same entity.

Läuft aber durch und es wird eine GMAPSUPP mit 2.357 MB erzeugt die auch breuchbar ist (teilweise eigen Renderregeln)

Neue Version 080rc1

-entpacken in ein eigenes Dir
-osmc_starthilfe in gleiches Dir entpacken (Größe 4.563KB)
-starten
-Neue Region Anlegen
-Neuen Eintrag erstellen Daten holen anhaken Garmin anhaken Karte zippen anhaken sonst ALLES Bei bedarf (standard) Region auswählen ==> anlegen
-Eintrag selektieren dann generieren

… Daten lesen für test Sektion x/20

Download Fehlermeldung am Schluß…sonst normale Meldungen


Downloading http://api.openstreetmap.org/api/0.6/map?bbox=8.899999999999999,48.800000000000004,8.9,48.9
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[5026,128]
Message: XML document structures must start and end within the same entity.
Newer input file detected

Seltsamerweise kommt jetzt beim srtm2osm kein Fehler wie heute Nachmittag (gleiche vorgehensweise!)

Karte ist etwa 2 MB und ok…

Jetzt eingebaute “Karte bauen”

Downloading http://api.openstreetmap.org/api/0.6/map?bbox=11.599999999999998,49.800000000000004,11.6,49.9
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[3659,18]
Message: XML document structures must start and end within the same entity.
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[6924,94]
Message: XML document structures must start and end within the same entity.
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[4000,61]
Message: XML document structures must start and end within the same entity.
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[3734,63]
Message: XML document structures must start and end within the same entity.
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[3840,38]
Message: XML document structures must start and end within the same entity.
Newer input file detected

Trotz Fehlermeldung sind Karten ok.

Aber jetzt taucht folgender Effekt auf. Ich generiere wieder meine Testkarte ohne etwas zu löschen, dann wird immer die “Karte bauen” Karte generiert!!

Ich lösche das DATA Dir
-erzeuge meine Testkarte…Konturen werden Neu geladen MEINE TESTKARTE OK
-erzeuge eingebaute Karte …Konturen werden geladen Katze bauen ist ok

!!! Ich lösche jetztz nichts

Erzeuge meine Testkarte aber IMG ist die eingebaute Karte IMG wird aber Neu generiert (Datum wird aktualisiert)…

Dieser Effekt ist reproduzierbar, aber dur Löschen des DATA DIR behebbar!!

Sehr seltsam…deshalb meine obige Frage ob das DATA Dir bei einem Kartenwechsel gelöscht werden muß.
aighes…dass die GMAPSUPP vorher gesichert werden sollte ist klar…

Viele Grüße
Achim

Das passiert, wenn der Download einer Datensektion von der API unvollständig ist. Kommt öfters mal vor, wenn der Server lagt oder die Verbindung schlecht ist.
Auch wenn die Karte auf den ersten Blick gut aussieht, fehlen einige Daten, die nicht mehr übertragen wurden.

Hm, so eine Verwechslung habe ich hier noch nicht beobachtet.
Wie heißt Deine Testkarte? Welche KartenID hast du ihr zugewiesen? Die gleiche wie die Standarkarte oder eine andere?
Wenn Du “karte zippen” aktivierst, erzeugt er dann die richtigen Versionen oder auch zwei gleiche?

bye
Nop

Hallo Nop

mmmh ne blöde Frage: Wo weist man eine Karten ID zu? Der Name im Hauptfenster heißt hugo (nehme ich zum test) und die Region heißt Test. Sonst habe ich nichts an den Standard-Einstellungen verändert…
Ich kann damit leben. Aber du hast ja zum Testen aufgefordert, was ich gerne mache.

Ich wechsle vor dem Generieren nur zwische “Karte Bauen” und “hugo”. Selektieren dann generieren, oder muß man noch was wechseln?

Ich verfolge das weiter. Das Problem der Stile bleibt aber noch offen.

MfG
Achim

Ps. Denn Effekt von heute Nachmittag kann ich nicht mehr nachstellen (IMG hatte nur 38KB) ,aber das lag wohl am Download. Normalerweise lade ich einen Planetfile runter und nehme diesen. Eventuell sollte da, bei einem mißlungenen download übers API ein Abbruch erfolgen?

In der Einstellungsseite der Jobs unter Parameter hast du Eingabefelder für Karten-ID und Dateiname. Diese sollten bei jeder Karte verschieden sein, sonst gibts logischerweise bei gleichen Dateinamen Komplikationen. Der Composer sieht dann die vorhandenen Dateien und rechnet nicht neu, wenn du ihn auf “Bei Bedarf” stehen hast.

@nop: Hab gerade in deiner ToDo-Liste gelesen, dass du die Koordinaten runden möchtest. Kannst du dann bitte die VON-Koordinaten immer abrunden und die BIS-Koordinaten immer aufrunden. Bei negativen Werten natürlich andersrum.
Was erhoffst du dir vom Runden?

Hallo

…mmmhhh vielen Dank aighes für diese Erkläreung. In meiner StandardiInstallation habe ich das Alles auf “Immer” gesetzt, deshalb ist mir das wohl nicht aufgefallen. Um solche Patzer auszuschließen (bei Unwissenheit),wäre es da nicht sinvoll, dass der JobName auch der Kartenname ist. Durch solche kleinen, aber auswirkungsvollen Patzer wird mancher abgehalten OsmComposer zu nutzen. Im Geo24 Forum sagen viele, dass er komplziert zum Einstellen ist…

Vielen Dank für Euere Hilfe, so langsam lerne ich sämliche Einstellungen und deren Bedeutung kennen.

Vielen Dank
Achim

Hallo…
der Kartenname ist wie der name schon sagt nur der Name der Karte und hat nichts mit dem Dateinamen zutun. Der Dateiname der img-Dateien ist von Garmin auf die 4 Ziffern beschränkt (gefolgt von weiteren 4 Zahlen).

Einfach zu bedienen ist immer so eine Sache. Entweder es ist ein One-Click-Programm, dass alles automatisch macht, oder man gibt dem User freiräume. Im Ersten Fall ist man stark eingeschränkt und der Nutzen ist beim Composer fragwürdig. Im zweiten Fall bleibt es nicht aus, dass man als unerfahrener User etwas die Anleitung liest. @nop. evtl. wäre es sinnvoll dem Composer ein pdf mit der Anleitung beizulegen. Die Anleitung im wiki ist da mMn recht hilfreich.