Frage an die Map_Composer-Gurus

Hallo,

mein kleines Kartenprojekt hängt derzeit ein wenig. Es gibt zwei Dinge, bei denen ich ohne Hilfe nicht weiterkomme. Habe zwar schonmal was zu den Problemchen in anderen Beiträgen gepostet, jedoch wusste wohl niemand Rat, bzw. ist meine Frage untergegangen.

Problem Nr. 1: Autorouting
Es scheint nicht zu reichen, in M_C das Garmin-Autorouting zu aktivieren. Jedenfalls bekomme ich so keine autoroutingfähige in Mapsource zum Laufen. Die Karte wird zwar generiert, doch ohne Routingfunktion.
Welche Informationen benötigt M_C, um eine routingfähige Karte zu generieren? War der Meinung, hier ist schon alles integriert.

Problem Nr. 2: Ersetzungen
Mein Versuch, Ersetzungen anzupassen oder eine neue Ersetzung zu erstellen, scheiterte jeweils. Ich kann keine neue Aktion erstellen. Bei Klick auf den Button “Aktionen” passiert absolut nichts, außer einem Ping-Ton.
Ist das nur bei mir so? Könnte das evtl. mal jemand bei sich testen?

Danke & Gruß

softcake

Du mußt an den routingfähigen Wegen noch entsprechend roadclass und speed setzen.

Klappt bei mir. Ist das immer oder nur bei grade frisch angelegten Ersetzungen?

bye
Nop

Ah, ok. Jetzt weiß ich wenigstens, wonach ich suchen muss. Hast Du zufällig irgendwo ein Beispiel parat?

Das ist immer der Fall. Es macht keinen Unterschied, ob ich eine neue Ersetzung anlege oder eine vorhandene bearbeite.

Ich rufe den Dialog Ersetzungen auf, doppelklicke auf einen Ersetzungseintrag. Anschließend klicke ich auf “Aktionen”. Es passiert nix.

Kann es evtl. an der Hardware liegen? Im Moment läuft M_C bei mir auf einem Netbook. Bislang hatte ich mit keiner Software Probleme. Zum Wochenende sollte ich mein neues Notebook bekommen. Vielleicht funktioniert’s dann.

Danke & Gruß

softcake

Kann es sein, dass sich das neue Fenster einfach auf einem ehemals angeschlossenen externen Monitor öffnen will und daher nicht in dem jetzigen Bildschirmbereich liegt?

Nein, kann nicht sein. Das Netbook läuft ganz normal ohne externe Geräte.

Oder war die Frage an Nop gerichtet?

softcake

Nö schon an dich :wink: Nop weiß ja nicht, ob du das Fenster irgendwann mal auf einem externen Monitor hattest :wink:

Nö, ich halte die aktuellen Routingmöglichkeiten für ziemlich untauglich (siehe http://www.wanderreitkarte.de/tool_faq_de.php)), das habe ich nur auf mehrfachen Nutzerwunsch eingebaut.

Normal bedeutet ein Ping daß das Fenster schon offen ist, das er aufmachen will. Ein unsichtbares Fenster außerhalb des Bildschirms würde das erklären.

  • Ganz sicher daß nicht irgendwo im Hintergrund noch ein Fenster mit einer Aktion rumeiert?
  • Pingt es auch beim allerersten Versuch nach dem Starten von Composer?

bye
Nop

Ja, schon klar. Hätte ja sein können, dass sich M_C eine bestimmte Konfiguration von Nop’s System während der Programmierung gemerkt hat. Ganz theoretisch. Man erlebt beim Programmieren ja die tollsten Sachen…

Gruß, softcake

Hallo softcake,

ich habe hier http://forum.openstreetmap.org/viewtopic.php?id=5847 mal beschrieben, wie man mit dem Composer in V 0.80 routingfähige Karten erstellen kann.
In der Zwischenzeit sind viele dieser Workarounds nicht mehr notwendig, da NOP die TAGs für Routingfähigkeit direkt im Composer eingebaut hat.

Vielen Dank an dieser Stelle an NOP für diese laufend verbesserte und noch dazu kostenlose SW, echt toll.

Für kleine Pläne verwende ich am liebsten den Composer, weil er unglaublich einfach zu bedienen ist.
Nur für größere Pläne, die nahtlos routingfähig sein sollen, weiche ich auf den direkten und wesentlich umständlicheren mkgmap Aufruf aus.

Eine Anleitung dafür gibt es auch: http://forum.openstreetmap.org/viewtopic.php?id=9472

Walter

  • Aufruf Map_Composer
  • Dialog Ersetzungen
  • “Aktionen” (kein Ping, kein weiteres Fenster öffnet sich)
  • Nochmal “Aktionen” (“Ping”)

Das “Ping” kommt also tatsächlich erst beim zweiten Versuch.

Habe nach dem ersten Versuch alle Fenster klein gezogen und verschoben. Dahinter war kein weiteres Fenster zu sehen. Möglicherweise liegt’s doch an meiner Netbook-Auflösung von 1024x600.

Was das Routing-Thema angeht muss ich mich erst mal reinfieseln. Momentan verstehe ich weitestgehend nur Bahnhof. Aber ich bleib dran…

Gruß, softcake

@softcake: Such mal in der Datei Settings.tbl die Zeile mit “Layout/Editor/Aktionen” und lösche sie.

bye
Nop

Hat funktioniert! Die Koordinaten lagen tatsächlich irgendwo außerhalb meines Mäusekinos :wink:

Danke!

Habe gerade mit der Routinggeschichte herumexperimentiert und die Datei “lines” modifiziert. Leider konnte ich noch keine Erfolge erzielen.

So ganz steige ich bei der Beschreibung in http://forum.openstreetmap.org/viewtopic.php?id=5847 noch nicht durch. Verstehe ich das richtig: mkgmap wird zweimal aufgerufen? Einmal von M_C im normalen Ablauf, dann nochmals im Batch-File?

Mein mkgmap-Aufruf aus commands.log sieht übrigens so aus:

*java -Xmx1100M -jar C:\works\Programme\MkGMap\mkgmap.jar --tdbfile --preserve-element-order --route --remove-short-arcs -c C:\works\Programme\Map_Composer\Data\osmc_options *

Ist das Erstellen der gmapsupp.img hierfür unbedingt nötig?

osmc_options enthält:

mapname=99990001
overview-mapname=99990000
family-name=OSM FICHTELMAP TEST
series-name=OSM FICHTELMAP TEST
description=MTB- und Wanderkarte TEST
family-id=109
product-id=1
style-file=C:\works\Programme\Map_Composer\Data\mapstyle
levels=0:24,1:23,2:22,3:21,4:20,5:18,6:16
country-abbr=DE
latin1
no-sorted-roads

input-file=C:\works\Programme\Map_Composer\Data\Region Fichtelmap TEST_00121_0501_1_1_garmin.osm

Gruß, softcake

Das mit dem doppelten Aufruf von mkgmap ist nicht mehr notwendig, da der Composer die Routinginfos bereits selbst erzeugen kann.
Es ist nur wichtig, das die richtigen routingfähigen Straßentypen verwendet werden, und das Flag --route auch an mkgmap übergeben wird.

Walter

no-sorted-routes sollte man nicht mehr nutzen.

Das bedeutet, ich modifiziere einfach nur die Datei “lines”, die Batch-Datei ist hinfällig? Oder muss ich nun gar nichts mehr modifizieren, da Map_Composer alles erledigt?

Ich habe an den Straßentypen in M_C nichts verändert (außer die Darstellung).

–route wird laut commands.log an mkgmap übergeben. Welche road_speed sollte man für path, track oder unclassified einsetzen?

Ok. Wo schalte ich das ab?

Danke & Grüße

softcake

Der Composer erstellt eine voll routingfähige lines Datei.
Die einzige Composer-Einschränkung ist die, dass man über eine durch den Splitter erzeugte Kachelgrenze nicht routen kann.
Bei mir waren das ca. 20 km und da ich meist nicht über längere Entfernungen route war das für mich daher meist ausreichend.

unclassified sollte eigentlich wie tertiary sein, wird aber defacto oft wie ein asphaltierter track verwendet,
eine sinnvolle und überall gültige Einordnung ist daher schwierig.

path ist nicht befahrbar und bei Fußgänger-Routing habe ich keine Erfahrung.

Für track habe ich roadclass 0 und roadspeed je nach track_type gewählt,
aber Achtung, viele tracks haben ein Fahrverbot, das aber leider in OSM oft nicht erfasst ist.
Häufiges Routing über Forststraßen ist das Ergebnis,
oder du erlaubst das routing nur dann, wenn der track explizit als befahrbar markiert ist.

Walter

Hallo,

das mit dem Routing haut jetzt zu 90% hin. Vielen Dank für Eure Hilfe! Ich hatte es irgendwie nicht geschnallt, dass man die Routingeigenschaften relativ einfach im Wizard einstellen kann. Manchmal ist die Lösung so einfach… :roll_eyes:

Da ich eine Wander- und MTB-Karte generieren möchte, habe ich die Routingeigenschaften von Autobahnen und ähnlichen highways einfach rausgeschmissen. Was noch nicht funktioniert, ist das Autorouting auf Radwegen, da dieser Way noch die ID 19 besitzt, die wohl nicht routingfähig ist.

Ich denke, ich werde den Radweg mit Klippe oder Einschnitt tauschen. Das sollte doch theoretisch funktionieren?

Grüße, Thomas

Ja, das Tauschen ist kein Problem. Bei Roadclass und Roadspeed muss man selber mal probieren und das Routing dann so einstellen, wie man es haben möchte.

Ok, Radweg funzt. Das mit road_class und road_speed bekomme ich - denke ich - noch besser hin.

Kann man von M_C aus die Einträge in der Datei “lines” irgendwie dynamisch setzen? Ich würde gerne bestimmte Straßen, z. B. Bundesstraßen, auf denen Radfahren verboten ist, aus dem Routing entfernen.

Oder anders herum:

Ich würde im Wizard jedem Weg von Path über Tracks bis Secondary eine Ersetzungsregel verpassen, welche auf bicycle=no überprüft. Wenn das nicht zutrifft, ist Radfahren erlaubt und es würden automatisch road_speed- und road_class-Eigenschaften gesetzt.

Meiner Meinung nach geben die möglichen “Aktionen” diese Funktion nicht her, oder?

Danke & Grüße

softcake

Das geht schon, ist aber im Composer meiner Meinung nach umständlicher als im eigentlichen mkgmap-Style.

Im Composer musst du eine Ersetzungsregel machen, die bspw. prüft, ob auf der Bundesstraße ein Radverbot besteht. Dann musst du ein Tag hinzufügen.

Beispiel: Wenn highway=primary & bicycle=no dann setze highway=primary_no_bicycle

Bei den Wegen musst du dann eine neue Regel für highway=primary_no_bicycle hinzufügen.