OSM Composer V0.8 verfügbar

Hallo!

Das Tool OSM Composer steht jetzt in der Version V0.8 zum Download bereit. Diese Version stellt einen größeren Sprung als üblich dar - es wurden einige Teile der Engine neu geschrieben - und hat daher ein wenig auf sich warten lassen.

Wesentliche Neuerungen in V0.8:

* Intelligente Aufteilung der Karte in Kacheln unter Berücksichtigung der Höhenlinien
* Größenabhängige Renderregeln für Weglängen und Polygongrößen
* Kurze Wegstücke auf einer Route werden zusammengefaßt und mit Wandermarkierungen versehen
* Verbesserte Höhenlinien: korrekt positioniert, mit Splines abgerundet, Ausblenden von Artefakten 
* Beimischung von festen, zusätzlichen Daten wie z.B. Seepolygone möglich
* Eigene Parameter für mkgmap möglich - für die Experimentierfreudigen
* Vorschauicons für farbige Linien und Flächen
* Verarbeitung kann pausiert werden
* Deutlich höhere Geschwindigkeit bei geringerem Speicherbedarf

Die vollständige Liste der Änderungen und den Download findet Ihr im Wiki:
http://wiki.openstreetmap.org/wiki/DE:OSM_Composer#Download

bye
Nop

Hallo Nop,

erstmal ein dickes fettes DANKE!

Könntest du noch erklären, wie die Angabe der mkgmap-Parameter auszusehen hat?

Bei den Renderregeln für die Flächen ist mir ein kleiner Fehler aufgefallen.
map_background hat ja kein Layer. Wenn ich Änderungen daran machen kommt die Meldung, dass kein Layer gesetzt ist.

Muß die Tage die Anleitung noch anpassen - oder vielleicht könnt Ihr mir ja auch beim Ergänzen helfen.

Eigene Optionen für mkgmap: Hier könnt Ihr eine Datei mit zusätzlichen oder veränderten Einstellungen für mkgmap angeben. Composer liest seine Standardeinstellung aus default_options. Wenn Ihr das ändern wollt, kopiert die Datei und tragt Eure Version mit Pfad hier ein. Die Parameter werden direkt an die Optionsdatei für mkgmap angehängt, Format siehe mkgmap-Doku.

Was genau hast Du denn geändert?

bye
Nop

Ok…werde dann mal ausprobieren…
Hier mal ein Bsp:

--latin1 --transparent --tdbfile --preserve-element-order --no-sorted-roads -c

Dies würde ich in eine txt-Datei schreiben und den Pfad in dem Feld in den Optionen angeben. Hab ich das richtig verstanden?

Wie sieht es mit den Kacheln aus? Müssen die auch angegeben werden?
Am einfachsten wäre es wohl, wenn du eine Bsp-Text-Datei veröffentlichen könntest.

Ich wollte die Regel aktivieren, weil sie nach dem Update der jar-Dateien deaktiviert war. Habe dies aber mittlerweile per Massenaktivierung aller Regeln lösen können.

Die default_options ist die Beispieldatei. :slight_smile:

Ach ja: Du findest die Einstellung beim Job, 2. Reiter Parameter.

Hmmm…um die Datei zusehen war es dann wohl doch schon etwas spät;-) Eben gerade sprang sie mir direkt ins Gesicht…

Das hatte ich schon gefunden. Finde ich im übrigen Super, dass man das für jeden Job extra einstellen kann!

Naja, wenn ich schon ein Feature für Bastler einbaue, dann aber auch richtig für Bastler. :slight_smile:

Hallo Nop,

gibt es eigentlich schon Neuigkeiten bzgl. dem Problem beim Kartensegment-Erstellen und dem Fehler von srtm2osm?

Bomm hat sich’s mal angesehen, aber bisher rätseln wir noch über die genaue Ursache. Ist ein Problem entweder in den Daten oder in srtm2osm.

So der erste Test verlief leider ernüchternd:
Ich bekomme folgende Fehlermeldung beim Erstellen der Karte und zwar beim 1. Durchlauf deines Splitters bei den Wegen.


16.12.09 20:53 java.lang.NullPointerException
16.12.09 20:53 Exception writing xml data
java.lang.NullPointerException
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeXMLContent(Unknown Source)
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeAttribute(Unknown Source)
    at nop.osm.OSMElement.writeTags(OSMElement.java:224)
    at nop.osm.OSMWay.write(OSMWay.java:95)
    at nop.osm.OSMOutputFile.commit(OSMOutputFile.java:111)
    at nop.osmc.generator.OSMMapper.process(OSMMapper.java:146)
    at nop.osmc.generator.ParallelWorker.run(ParallelWorker.java:187)
    at java.lang.Thread.run(Unknown Source)
16.12.09 20:53 java.lang.NullPointerException
16.12.09 20:53 Exception closing output files
java.lang.NullPointerException
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeXMLContent(Unknown Source)
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeAttribute(Unknown Source)
    at nop.osm.OSMElement.writeTags(OSMElement.java:224)
    at nop.osm.OSMWay.write(OSMWay.java:95)
    at nop.osm.OSMOutputFile.commit(OSMOutputFile.java:111)
    at nop.osm.OSMOutputFile.close(OSMOutputFile.java:124)
    at nop.osm.OSMOutputFile.close(OSMOutputFile.java:119)
    at nop.osmc.generator.OSMMapper.process(OSMMapper.java:88)
    at nop.osmc.generator.RegionMapper.readMapData(RegionMapper.java:186)
    at nop.osmc.generator.Mapper.generate(Mapper.java:192)
    at nop.osmc.MapComposer$11.act(MapComposer.java:335)
    at nop.gui.MenuThreadAction.run(MenuThreadAction.java:27)
    at java.lang.Thread.run(Unknown Source)

Außer dem aktivieren aller Einträge habe ich im Bezug auf den RC1 nichts an der Konfiguration geändert.

Hallo Nop,

ich bekomme bei der neuen Version ebenfalls eine Exception

errorLog.txt


18.12.09 10:04 java.lang.NullPointerException
18.12.09 10:04 Exception writing xml data
java.lang.NullPointerException
    at nop.osmc.edit.ConvertAction.execute(ConvertAction.java:129)
    at nop.osmc.edit.Conversion.executeActions(Conversion.java:170)
    at nop.osmc.generator.OSMMapper.processConversions(OSMMapper.java:212)
    at nop.osmc.generator.OSMMapper.process(OSMMapper.java:137)
    at nop.osmc.generator.ParallelWorker.run(ParallelWorker.java:187)
    at java.lang.Thread.run(Unknown Source)

Meine Aktionen beim Update von 0.80rc1:

kopieren von map_composer.jar, ndsc15.jar, nop.jar, Density.tbl, default_options
löschen von lang_de.txt, lang_de_ndsc.txt, land_de_nop.txt und der 3 lang_en files
nicht kopiert habe ich: MapItem.tbl, Profile.tbl
aktivieren aller Renderregeln mit rechter Maustaste

Beim Vergleich mit dem neuen Beispiel-Profile habe ich gesehen, dass Maximale Objekte/Kachel jetzt auf 2000 steht (statt 600).
Ist das eine neue empfohlene Einstellung?

Walter

Bin momentan ein wenig im Weihnachtsstreß. Ich werde mir die beiden Exceptions am Wochenende mal ansehen.

Ihr habt wahrscheinlich Recht daß es Updateprobleme sind - ich habe mit der Composerversion zuerst reibungslos die Karte D/A/CH gebaut, bevor ich sie hochgeladen habe.

bye

        Nop

Beide Exceptions werden von Tags ohne Wert verursacht. Könnte evtl. was mit abgeschalteten Regeln zu tun haben, aber ich komme so nicht drauf.

Kannst Du mir Deine *.tbl Files zusammenzippen und zuschicken?

Die Exception sieht danach aus, als ob Du eine Ersetzungsregel hast, die ein Overlay für einen Weg erzeugen will, aber die verknüpfte Renderregel gibt es nicht mehr.

Ich habe eine zusätzliche Prüfung eingebaut - bitte lade den OSMC nochmal neu, Du solltest dann eine hoffentlich hilfreiche Fehlermeldung bekommen.

Ja, die empfohlene Einstellung ist jetzt 2000. 600 war ein seeeeehr konservativer Wert für die ersten Tests. Ich selber baue meine Karte derzeit mit 2400, es sollte also bei mir zuerst krachen. :slight_smile:

Klar. Kannst du dir unter http://aighes.bplaced.net/data/map_composer.zip herunterladen.

Ok, bei welchem von den vielen Jobs trat das Problem auf? Falls es einer von denen mit den Polys war, bräuchte ich die Polys auch noch.

Probiert hab ich bisher Dänemark (ohne Polygon) und Norddeutschland (mit Polygon). Weitere hab ich noch nicht probiert.

Ich hab meine Polygon-Dateien und die Icons der obigen Datei hinzugefügt.

Schonmal vielen Dank für die Hilfe!

Hallo Nop,

vielen Dank für den Einbau der Fehlermeldung, ich habe die fehlerhaften Ersetzungen disabled und jetzt läuft es.
Was mit den Ersetzungen passiert ist, muss ich mir noch ansehen.
Und dann bin ich auch schon gespannt, was ich mit den neuen Features alles machen kann.

Edit:
Ich habe z.B. bei der Ersetzung “Brücken anzeigen” als Aktion “Kopie/Overlay erzeugen” und in der Spalte “Regel” steht kein Eintrag.
Nach Doppelklick sehe ich jedoch als Objekt “bridge”.
Ich werde mal die bestehenden Datensätze löschen und neu anlegen, hoffentlich klappt es dann.

Walter

Bei mir tritt der Fehler in der Form nicht auf. Composer beschwert sich über eine fehlende Layer ID, aber läuft ohne Exception durch.

Ich habe an der betreffenden Stelle mal etwas mehr Fehlerausgaben eingebaut, bitte lade ihn nochmal neu runter und probier’s nochmal.

danke
Nop

Hallo,
ich bin mittlerweile weiter gekommen. Irgendwas mysteriöses geht da vor sich.
Bei den Ersetzungen wurden alle “Kopie/Overlay erstellen” und die beiden “Icon erzeugen” Aktionen geleert. Nach dem wiederherstellen und neustarten des Composers lief es bis zum 2. Durchlauf (nach dem erstellen der Konturdateien und Kartensegmenten). Dort hat er dann abgebrochen.
Als ich den Composer dann nach dem Abbruch neugestartet hab, waren die Aktionen wieder verhunzt.

Edit: Nach einem erneuten korrigieren und versuchen blieb er wieder im 2. Durchlauf hängen.

Ich hab dir mal den ErrorLog mit den ganzen Einstellungen nochmal hochgeladen. http://aighes.bplaced.net/data/map_composer.rar

Der letzte Fehler führte wohl zum Abbruch. Ich hab alle Renderregeln und Ersetzungen durchgeschaut. Es gibt kein Element “v”