Anfängerfrage: OsmAnd offline mit OpenCycleMap Vektordaten betreiben?

Hallo zusammen,

gibts in dieser Sache was Neues? Ich hab mal an der default.renderer.xml rumgeschraubt und die Radwege etwas fetter gemacht. Leider haben die Daten in den OSMAND Dateien nix mit dein OpenCycleMap-Daten zu tun. Keine Ahnung warum, aber die OpenCycle Wege sind a) viel mehr und b) anders. Hab mich sehr gewundert.

Mein Wunsch wäre für Android eine OpenCycleMap-ähnliche Vektor Karte zu haben.

/EDIT:

Ich hab nochmal geschaut: Die Infos, die auf der normalen OSM Karte sind, sind nicht mal im Ansatz mit OCM vergleichbar. Z.B. sind die Radwege in der OCM Karte ja mit Namen beschrieben. Und diese dicken roten und hellblauen Routen verlaufen mal auf Wegen, mal auf Straßen. Die OSM Daten liegen als Underlay drunter und da sieht man den ständigen Wechsel der Straßen- bzw. Wegart. Wenn die OCM wirklich alle in den OSM Daten enthalten sind und da nicht noch ein spezielle Overlay von OCM drüber liebt, würde ich mich wundern. Aber ich habe von der technischen Seite auch leider 0 Ahnung.

/EDIT2:

Beispiel hier: http://www.opencyclemap.org/?zoom=15&lat=48.01576&lon=11.71067&layers=B00

Da sieht man mal den blau gestrichelten Radweg und mal Straße. Der D11-Route ist das egal, weil die eben da, wo kein Radweg ist, einfach auf der Straße verläuft.

Willkommen im Forum!

Beide verwenden ausschließlich die OSM-Daten.

Ja, das wäre schön.

Es werden immer nur die Daten aus der OSM-Datenbank verwendet, wie und was eine Karte darstellt, ist dann deren Entscheidung.

Das ist so in der OSM-Datenbank:
http://www.openstreetmap.org/browse/way/19618474
Beachte die Relation 544296 mit dem Namen “[D11] Ostsee-Oberbayern Teilstück Bayern”.

Gruß,
Mondschein

Das ist ganz einfach.

  • Die ‘normalen’ Karten stellen die Objekte (Straßen, Wege, Gebäude, Flächen,
    POIs, …) so dar, wie sie aus der Datenbank kommen. Dabei gibt es immer
    eine Auswahl, je nach Geschmack/ Zielrichtung des Kartenerstellers.
  • Die OpenCycleMap macht das im Grunde auch so, lässt aber vieles weg,
    was nicht Fahrrad-relevant ist. Zusätzlich stellt sie Routen-Relationen dar.
    Das macht dann den Unterschied zu ‘normalen’ Karten. Und das macht
    nur Sinn bei Themenkarten wie Strom-Netz, ÖPNV, Wandern, Reiten usw.

Von daher kannst du so etwas nicht in Standard-Karten erwarten. Dafür ist übrigens ein nicht unerheblicher zusätzlicher Aufwand nötig. Von daher baut das keiner mal so nebenbei als einblendbaren Layer in eine Karte ein.
Trotzdem kommt das - wie Mondschein schon schrieb - alles aus einer einzigen Datenbank. Nur muss halt jeder Kartenersteller eine Auswahl treffen, was er/sie darstellen will und was nicht.

PS: Herzlich willkommen im Forum

Edbert (EvanE)

Hallo zusammen,

vielen Dank für die hilfreichen und neten Worte :).

Mir ist aber noch nicht klar, ob es überhaupt möglich ist, in OSMand oder auch OruxMaps (über MapsForge) Vektorkarten von OpenCycleMap zu haben. Geht das über Rendering überhaupt?

Machbar ist fast alles. Aber ob das mit den Tools für OSMand resp. OruxMaps so ohne weiteres geht, ist eine andere Frage. Und diese Frage können dir wahrscheinlich nur die Entwickler der beiden Produkte wirklich beantworten.

Ich hoffe, dass du durch die bisherige Diskussion genug Informationen gewonnen hast, um eine Anfrage gezielt stellen zu können.

Edbert (EvanE)

OruxMaps bietet seit der Version vom 31.3.2012 die Möglichkeit, Vektorkarten von mapsforge anzuzeigen:
http://oruxmaps.foroactivo.net/t2050-mapsforge-030-opencyclemap

Deutschland ist auf ca. 700 MB zu haben, Hessen auf ca. 50 MB. Das klappt. Dazu wird offenbar einfach nur Code eingebunden, der von mapsforge zu Verfügung gestellt wird. Der Entwickler von OruxMaps ist recht aktiv und hat das sowohl bei Version 0.2.4 als auch bei 0.3.0 relativ flott realisiert.

Wenn ich das richtig verstehe, kann dieser Code auch externe XML-Dateien einbinden, um die Darstellung der schon vorhandenen Daten zu steuern. Im Forum von Oruxmaps wird dieses Thema auch schon angesprochen:
http://oruxmaps.foroactivo.net/t2194-custom-render-styles-for-mapsforge-vector-maps?highlight=mapsforge
Auch in der Mailingliste von mapsforge findet sich ein Hinweis dazu:
https://groups.google.com/forum/?fromgroups#!topic/mapsforge-dev/COUKUZcK04E

Wenn ich das richtig verstehe, müsste man für Versuche …

  • herausbekommen, wo und evtl. mit welchem Namen man eine XML-Datei unterbringen muss, damit der in Oruxmaps eingebunden Code diese Render-Datei liest.
  • ausprobieren, welche XML-Tags was bewirken. Als Erstes würde es ja reichen, wenn die Radwege in einer sichtbaren Farbe über die vorhandene Karte gezeichnet würden, die Darstellung der Namen wäre dann ein zweiter Schritt.

Christian (chilobo)

Eigentlich wollte ich mal OruxMaps ausprobieren, habe aber keine Karten gefunden. Gibt es irgendwo eine downloadbare OruxMaps-Vektorkarte der Schweiz?

http://download.mapsforge.org/maps/europe/

Zum renderfile: original beschaffen, und mit namen .map.xml neben die karte plazieren. Orux wird diese dan benutzen zum renderen.
XML-tags sind ganz einfach zu verstehen, farbe und breite aenderen geht leicht. Ausserdem die ‘cycleway’ ganz unten in die ‘ways’-section plazieren und sie wird ueber alle andere wege angezeicht.

Die map-datei enthalt nicht alle informationen fuehr radfahrer. Wenn man die unbedingt moechte muss man die map datei selber erstellen.
<land.pbf> —> osmosis, mapwriter, eigene xml fuehr mapwriter —> <eigenes_land>.map + <eigenes_land>.map.xml —> eigene radkarte

So siehts dan aus, radwege rot, etwas breiter und obenauf.

( das xml hat auch eine eingabe um place=hamlet zu zeichen. Die map-datei habe ich noch selbst erstellen muessen, da in die originale map-datei hamlets nich aufgenommen waren. Auf meine anfrage hat Thilo von mapsforge jetzt in die neuversionen auch hamlet aufgenommen. Kann aber dauern bis das in Orux angezeigt wird, denn da muss erst die neue api ( mit angepassten osmarender theme ) eingebaut werden. )

Okay.

Woher soll ich das "original " beschaffen? Ich habe mal das "world.map.xml genommen und darin “world” mit “switzerland” ersetzt und auf switzerland.map.xml umbenannt. In der Kartenliste wird “switzerland” jetzt angezeigt, aber die Karte selber nicht. Was ist falsch?

Das original:

https://code.google.com/p/mapsforge/source/browse/trunk/mapsforge-map/src/main/resources/org/mapsforge/android/maps/rendertheme/osmarender/

Isst ausserdem im ‘mapsforge-map-0.3.0-jar-with-dependencies.jar’ enthalten.

mann braucht also nicht unbedingt eine xml-datei. Die osmarender.xml ist immer im api eingebaut. Nur wenn man ein eigenes render-theme moechte wird auch ein eigenes xml-datei benoetigt.

Die karte soll im verzeichnis ‘mapsforge’ unter die verzeichnis ‘mapfiles’ sein: /oruxmaps/mapfiles/mapsforge/switzerland.map.
/oruxmaps/mapfiles/mapsforge/switzerland/switzerland.map darf auch.

Wenn nur ‘switzerland’ angedeutet wird aber nichts oeffnet, is offenbar die aeltere version von Orux vorhanden. Der kann keine version 0.3.0 karten oeffnen.
Android market sollte aber jetzt version 4.8.25 haben.
Der neuste version ( beta ) : http://www.oruxmaps.com/OruxMaps4.8.27beta.apk
Die installiert sich neben der normale version als seperates programm. Aber benuetzt dieselbe dateien.

Wenn die karte zum ersten mahl geoefnet wird in Orux ist die zoomstufe 0. Mann sieht dan keine karte. Einfach einzoomen und schieben und die karte sollte erscheinen. Was auch geht: zuerst eine bitmap karte oeffnen, platz anzeigen die auch auf die vector-karte existiert, und dan ‘neue karte hier’ und die vectorkarte waehlen.

Hoffentlich gelingt’s jetzt!

So geht es.

So geht es nicht!

Kann jemand das in den Manuals so ergänzen, sowie den Hinweis auf Verzeichnis der herunterladbaren Karten bei Mapsforge ebenfalls?

Also erster Eindruck, es daeuert “ewig” bis die Karte bei einem Zoomwechsel angezeigt wird. Es wird ganz am Anfang der Hinweis “Karte wird geladen: Switzerland” für sehr kurze Zeit angezeigt. Dieser Hinweis sollte stehen bleiben, bis die Karte vollständig ist. Auch beim erstmaligen Wechsel zu einem neuen Zoomlevel dauert es, auch da wäre der Hinweis wertvoll. Später gehts dann schneller, im ertragbaren Rahmen. Immerhin der Detailierungsgrad ist fantastisch, das ist mal wirklich professionell. Dafür lohnt sich sogar die lange Wartezeit.

Bei mir schon. Vielleicht weil ich manuel die kartendatabase erneue?

Ich glaube das ganze ist noch mehr oder weniger experimentel. Orux hat die unterstuetzung erst letster monat programmiert, auf anfrage einer benuetzer, and hat das ganz schnell gemacht: innerhal 2 wochen !!
Mich hat das ganze etwa drei tagen gekostet weil ich jeder schritt im web auffundig machen musste.

Dazu etwas hintergrund. Die map-datei ist zusammengesteld aus ‘tiles’ mit vector daten die eine bestimmte flaeche ubereinstimmen. Die API zeichnet fuehr jeder zoomwechsel erneut richtige tiles, also png-tiles, im speicher. Bleibt mann auf ein zoomlevel sind die tiles im cache. Wechselt man, muss erneut gezeichnet werden. Dabei dauert es weil die api jedes object vergleicht mit die im render-xml festgelegte regel. Gerade bei niedrigen stufen dauert dass lange: die zu dursuchen menge daten ist gross. Bei hoeheren stufen gibt es zwar mehr detail, aber weniger zu dursuchen.

Es gibt zwei wege die zeit zu drucken:
ersten: alle objecte den mann nicht braucht aus dem render-xml weglassen. Geht etwas schneller aber nicht spectaculair.
zweitens: bei das erstellen eine map-datei kan mann angeben das bei niedrige zoomlevel objecte nicht gespeichert muessen. Die herunter geladene karte hat alle objecte auf fast jeder level. Beim selbst basteln koennte man zb sich beschrenken auf objecte fuehr een zoomlevel die tatsaechlich gezeigt werden sollen. Also auf zoom 9 nur wichtige wegen und nicht unclassified uzw… Und zb radwege erst auf stufe 11.
Die map-datei wird dabei leider groesser, weil es mehrere vector-tiles fuehr eine bestimmte flaeche gibt. Aber verzichtet mann auf gebaude und aenliches wird sie wieder kleiner und schneller.

Genaueres findet mann im forum bei mapsforge. Uebrigens: das erstellen eine volstaendige karte der niederlaende dauert auf meinen alten laptop etwa 9,5 stunden … 'ne 1.8 GHz pentium mit 2G arbeitsspeicher. Am anfang also besser einen kleinen abschnitt der karte benuetzen.

Auf art und weise der renderung der karte hat Orux kein einfluss. Er hat ledentlich der api von mapsforge integriert.
Ich nehme die traegheit hin, die karte hat immerhin ein grosser mehrwert.

Ich jetzt auch, herumzoomen macht man ja nur wenn man einen Ort sucht. OruxMaps schein ein vielversprechendes Projekt zu sein, ich behalte es jedenfalls im Auge.

Und vergesse nicht das OruxMaps auch sehr gut mit bitmap karten arbeitet. Und auch online. Uzw. Ich benutze es schon lange beim wanderen und mit mehreren karten.

Hmm, ich checks noch nicht. Welche XML muss ich jetzt nehmen? Und dann habe ich die Karten im OpenCycleMap Style in OruxMaps? Der ScreenShot sieht nicht nach OCM aus :(. Aber trotzdem Danke für Eure Beiträge hier.

Nah, ich mag den OCM nicht. Also mach ich meine eigene wiedergabe.
Dass prinzip ist dieselbe: vectordaten zeigen, nur kan mann selbst mit eine xml-datei angeben wie mann dass zeigen will.
Den OCM nachmachen geht auch damit, aber da muessen sie selber an die arbeit. Oder hoffen dass jemand eine passende OCM-xml-datei zum download frei gebt.
OSM-datei und mapsforge zusammen sind nur werkzeuge, kein fertige loesung. Dass hilft ihnen nicht leider:/

Kann man denn Ihre Datei runterladen?

Schaden wirds woll nicht also: http://server.mijneigen.net/foto/radwege.map.xml

Dazu:
-radwege rot und oben
-track grade 1/2 : rote linie am rand
-track grade 3 : unterbrochene rote linien
-cycleway=* wird nicht angezeigt, nur seperate radwege
-nur supermaerkte food/restaurant uzw ( tankstelle fuehr radfahrer … ) :slight_smile:
-nur cycleshop
-kein landuse=grass

Der zweck war eine einfache karte mit kontrast bei sonne auf die handy, und deutlich erkennbare radwege.
Ich arbeite noch daran.
Route, radfahrknoten und aenliche neuheiten wirden nicht angezeigt. Mann soll sich sein weg selbst finden …

Und wo stellt man ein, welche Theme-Datei verwendet werden soll, falls man mehrere hat?

Kann man irgenwo die gesamten Einstellungen wieder zurücksetzen?

Habe ich jetzt so auf die Schnelle nicht gesehen. Kannst ja mal bei Developer ein feature request einkippen.
In der Zwischenzeit als Notbehelf:

  • xml-Datei mit Dateimanager haendisch wieder umbennen
  • oder Kopie(n) Deiner swiss.map anlegen mit jeweils anderen Namen (und entsprechender xml), dann kannst Du via der Erdkugel-Symbol zwischen den einzelen Karten “umschalten”.