1. Android-Hilfe.de ist morgen (Dienstag, 17.09.) nicht oder nur eingeschränkt erreichbar, mehr Informationen.
  1. Lenoid, 24.08.2019 #1
    Lenoid

    Lenoid Threadstarter Experte

    Da es in einem anderen Thread eine Anfrage dazu gab, die zu sehr OT gehen würde, eröffne ich hier einen separaten Thread für die Modifizierung der Kartendarstellung in OsmAnd.
    Vorweg: es sind zwingend Basiskenntnisse zur OpenStreetMap nötig und auch Textdateien mit Code sollten nicht abschrecken. Ohne diese Kenntnisse wird es schwer bis unmöglich etwas sinnvoll zu modifizieren. Wer z.B. bereits für Garmin sein eigenes Typefile erstellt hat, wird das sicher auch für OsmAnd hinbekommen.

    Grundsätzlich ist es so, dass OsmAnd XML-Dateien für das Kartenrendering nutzt. Diese kommen dann in den Ordner "rendering" und nach dem nächsten Start von OsmAnd kann man sie dann auswählen. Die Mitgelieferten findet man hier:
    osmandapp/OsmAnd-resources
    2 weitere ehemals mitgelieferte hänge ich an und ein weiteres sehr gutes bekommt ihr hier:
    Osmand - OpenFietsMap

    Meins ist auch nur ein etwas modifiziertes ehemaliges mitgeliefertes, bei dem ich ein paar Kleinigkeiten ganz speziell auf meine Bedürfnisse angepasst habe. Anderen wird es wahrscheinlich wenig nützen. Aber das ist ja die Stärke von OsmAnd, man kann es komplett auf die eigenen Bedürfnisse anpassen, anstatt den vorgegeben Einheitsbrei, der z.B. im Falle von Google Maps immer schlimmer wird (da werden z.B. Wälder ausgeblendet, wenn man nah ranzoomt und Kontraste kennt Google auch nicht mehr), nutzen zu müssen.

    Ich würde auch empfehlen ein mitgeliefertes Typefile zu modifizieren, anstatt selbst eins zu entwerfen, denn daran würdet ihr ewig sitzen. ;)
    Probiert daher erst einmal in OsmAnd aus welches eurem Zweck am nächsten kommt und nehmt das dann als Grundlage. Der default.render.xml (die standardmäßige Kartendarstellung von OsmAnd) ist höchstwahrscheinlich ohnehin die Basis und euer Typefile nimmt "nur" Änderungen daran vor, die zwar vielleicht klein erscheinen, aber eine große Wirkung haben. Man erkennt es an dem Eintrag "depends=*" (normalerweise direkt am Anfang der XML Datei), welcher angibt, welche Kartendarstellung die Basis sein soll. "depends="default"" wäre dann die standardmäßige Darstellung von OsmAnd (default.render.xml). In diesem Fall würde die neue Kartendarstellung nur die Änderungen ggü. der standardmäßigen von OsmAnd angeben.

    Die Erstellung/Bearbeitung eines Typefiles geht mit jedem vernünftigen Texteditor und somit unter jedem OS, sogar Android. Unter Windows würde ich Notepad++ empfehlen, da es im Gegensatz zum mitgelieferten Editor/Notepad alles farblich hervorhebt.

    Habt ihr ein Typefile geladen, dann gibt es hier eine kleine Einführung mit wichtigen Hinweisen :
    https://osmand.net/help/docs/Custom_Rendering_How-To.htm
    Bedenkt dabei, dass zwingend OpenStreetMap-Kenntnisse erforderlich sind. Sonst wisst ihr nicht, was ihr anpassen müsst.
    Die Farben werden übrigens nach HTML-Farbcodes erzeugt. Ihr könnt sie hier berechnen bzw, umrechnen:
    HTML Farbencodes
    Convert between color formats (HEX, RGB, HSL, HSV, CMYK)

    Noch ein Hinweis: geht immer Schritt für Schritt vor und testet euren Kartenstil besonders nach größeren Änderungen regelmäßig. Manchmal gibt es unerwünschte Nebenwirkungen. Beispielsweise kann die Reihenfolge in der einzelne Typen der OSM gerendert werden sollen die entscheidende Rolle spielen. Bei mir wurden beispielsweise mal Straßen nicht zuverlässig gerendert, weil ich Wege zu sehr priorisiert hatte. Wenn man dann regelmäßig getestet hat, kann man die Ursache wesentlich leichter eingrenzen.
    Generell braucht ihr wahrscheinlich Geduld bis ihr den Dreh raus habt (abhängig von dem was ihr vorhabt). Die Geduld zahlt sich jedoch aus.

    Die XML-Datei muss mit .render.xml aufhören (z.B. Mein-Kartenstil.render.xml), sonst wird er wahrscheinlich nicht erkannt. OsmAnd muss nach jeder Änderung neu gestartet werden (richtig beenden, nicht nur auf den Homescreen und wieder zurück), damit die Änderung aktiv wird (neue oder geänderte XML-Datei).

    Zum schnellen testen eurer neuen Kartendarstellung könnt ihr auch dieses Tool testen, anstatt die XML-Datei extra auf ein Android Gerät zu kopieren:
    OffRoad
    Die XML-Datei muss dann in "C:\Users\DEIN_BENUTZERNAME\.OffRoad\rendering_styles". Das Tool danach neu starten.
    Das Tool kann nicht ansatzweise mit OsmAnd mithalten, v.a. mit der Performance und Inputlag, aber für einen schnellen Test reicht es.


    Hier gibt es übrigens eine Legende des standardmäßigen Kartenstils:
    OsmAnd - Offline Mobile Maps and Navigation

    Erfahrungsaustausch ist hier ausdrücklich erwünscht! Fragen natürlich auch. Ich nehme auch gerne Ergänzungen an dieser kleinen Einführung vor, wenn ihr welche habt.
     

    Anhänge:

    Zuletzt bearbeitet: 27.08.2019
    copy&paste und vonharold haben sich bedankt.
  2. vonharold, 24.08.2019 #2
    vonharold

    vonharold Stammgast

    Hallo @Lenoid,

    vielen Dank für die gesammelten Links und die guten Erklärungen.
    Ich habe mir mal die typefiles von Dir in Osmand installiert.
    Die sehen ja richtig gut aus.

    Das beste ist auch das Kontrastreiche mit der blauen Autobahn. Sehr gute Arbeit.

    Hast Du auch noch was neues und noch besser? Da Du die ja als "old" bezeichnet hast.

    Aber zwischen Garmin Typfiles und Osmand ändern, liegen schon ein paar Welten dazwischen.

    Arbeitest Du da wirklich nur mit dem Notepad++?
    Bei Garmin hatte ich damit ein wenig Unterstützung gehabt. TYPWiz5 Advanced TYP Editor
     
    Zuletzt bearbeitet: 24.08.2019
  3. Lenoid, 24.08.2019 #3
    Lenoid

    Lenoid Threadstarter Experte

    Die sind nicht von mir, die wurden nur früher mit OsmAnd mitgeliefert, aber irgendwann rausgeschmissen. Warum verstehe ich auch nicht.

    Ja (mit Notepad++), das habe ich schon bei GpsMid, falls du das noch kennst (ist für JavaME).
    Garmin hatte ich vor vielen Jahren auch mal editiert, als ich noch Basecamp nutzte. Ich weiß aber nicht mehr genau wie ich das angestellt hatte. Da TYPWiz 5 Payware ist, war es das sicher nicht. Wahrscheinlich erleichtert es das ein wenig, wobei gewisse Vorkenntnisse wohl ebenso erforderlich sind.
    Deswegen sage ich auch, man braucht bei OsmAnd Geduld und nimmt am Besten einen bestehenden Kartenstil (auch weil die OSM brutal viele unterschiedliche Daten liefert, die man erst einmal visualisieren müsste). Solche Dinge wie Farben sind recht schnell geändert. In dem OpenFietsMap-Kartenstil wäre das z.B. für Autobahnen die Zeile 258 (tag=highway und value=motorway; deswegen braucht man OSM-Kenntnisse), wo #8389E1 die Farbe hellrot darstellt. Die Farben sind übrigens die HTML Farbencodes, was auf den ersten Blick vielleicht verwirrend ist, aber entsprechend nahezu jede Farbe möglich macht. Hier kann man sie umrechnen (ich ergänze das im Eingangspost noch:
    HTML Farbencodes
    Convert between color formats (HEX, RGB, HSL, HSV, CMYK)
    Würde man die #8389E1 durch #000000 ersetzen, würden die Autobahnen schwarz werden. Ab Zeile 273 kann man mit strokeWidth festlegen wie breit die Straßentypen dieser Gruppe dargestellt werden (ein höherer Wert ist breiter, ein niedrigerer ist schmäler). Das mal als kleines Beispiel.

    Ich bin mir nicht 100%ig sicher, aber der default.render.xml ist immer die Basis und mit dem anderen Kartenstil werden nur Veränderungen durchgeführt. Sieht man gut an der OpenFietsMap, deren Code recht übersichtlich ist, aber dennoch alle OSM-Infos dargestellt werden. Hauptunterschiede sind die Farben von Straßen und Flächen und ggf. noch die Breite von Straßen. Also nur wenig Änderungen, aber mit großem Effekt.

    Man muss sich da ein wenig einarbeiten und verstehen wie das funktioniert. Die OpenFietsMap ist sehr gut zum lernen. Das dauert vielleicht ein paar Stunden, aber wenn man den Dreh raus hat, hat man ein mächtiges Werkzeug.
    Ich weiß nicht, ob es einen Editor gibt, der einem den Einstieg ein wenig erleichtert, ich gehe aber nicht davon aus. Wäre aber sicher eine tolle Sache.
     
    vonharold bedankt sich.
  4. vonharold, 25.08.2019 #4
    vonharold

    vonharold Stammgast

    Hallo zusammen,

    es gibt scheinbar einen Editor: Neuer Editor für OpenStreetMap

    Bin mal fleißig daran mich einzulesen in die Thematik des Typefiles. Habe auch schon ein paar fertig konfigurierte runter geladen in im Ordner eingefügt. Ist schon eine feine Sache. War schon bei Garmin begeistert davon mein eigenes Typefile zu machen. Mal schauen, ob ich mir das zutraue und auch zeitmässig unterbringe.
     
  5. cptechnik, 25.08.2019 #5
    cptechnik

    cptechnik Moderator Team-Mitglied

    Nur mal um ganz doof nachzufragen...
    ... Das alles machst Du um die Karte in anderen Farben aussehen zu lassen?
    ... Wie sieht sowas (ausschnittsweise) aus?
     
  6. vonharold, 25.08.2019 #6
    vonharold

    vonharold Stammgast

    Hallo @cptechnik,

    hast Du OsmAnd auf dem Handy, dann lade die mal die verlinkten *.xml Dateien in den von @Lenoid vorgeschlagenen Ordner und wähle das Thema aus und Du wirst sehen was passiert.
     
  7. cptechnik, 25.08.2019 #7
    cptechnik

    cptechnik Moderator Team-Mitglied

    Wenn das schon jemand gemacht hat ist es für diesen einfacher einen Screenshot zu Posten, als für mich das zu installieren...
    Ich habe kein persönliches Interesse daran, würde aber gerne wissen wie es aussieht...
     
  8. Lenoid, 25.08.2019 #8
    Lenoid

    Lenoid Threadstarter Experte

    Der ist für die OSM, nicht OsmAnd. Man muss zwischen beiden unterscheiden. Die OSM liefert die Rohdaten der Karten im Vektorformat und OsmAnd ist die App, die diese dann visualisiert. Die OSM kann man natürlich auch online anschauen. Und das Beste: jeder kann mitmachen und sie ergänzen und Fehler korrigieren. Daher ist sie mMn zumindest hierzulande das beste öffentliche Kartenmaterial, das man bekommen kann.

    Das ist nicht einmal nötig, da OsmAnd schon eine ganze Ladung mitbringt. Für nautisch und Ski braucht man allerdings die entsprechenden Plugins aus dem PlayStore.

    Doof ist die Frage nicht. Zumindest wenn die Vorstellungskraft fehlt, was das ausmachen kann. ;)
    Und die Antwort lautet Jain. Ja, weil ich auch Farben ändere, nein weil ich das nicht mache, damit es schön bunt ist, sondern um mir beispielsweise bestimmte Arten von Wegen hervorzuheben, die mir wichtig sind. Beispielsweise asphaltierte Wege bzw. solche, die einen guten Belag haben. Standardmäßig gehen die nämlich schnell unter oder sind kaum bis gar nicht von schlechteren unterscheidbar.

    Hier ein Ausschnitt von Heidelberg mit mehreren mitgelieferten bzw. den im Eingangsbeitrag angehängten Kartendarstellungen (unterschiedliche Darstellungsoptionen sind auch aktiviert; bei #3 und #4 ist der Ausschnitt leider verrutscht, was ich erst jetzt sehe):

    UniRS:
    #unirs.JPG
    Topo:
    #topo.JPG

    Offroad:
    #offroad.JPG

    Cyclemap:
    #cycle.JPG

    Und hier Hamburg in "nautisch":
    #nautisch.JPG
     
    cptechnik und vonharold haben sich bedankt.
  9. vonharold, 26.08.2019 #9
    vonharold

    vonharold Stammgast

    Hallo @Lenoid,

    bin gerade dabei ein paar Übungsfile zu testen.
    Die Autobahn ist mein angestrebtes Übel.
    value="motorway"

    Weißt Du wie man die so verändern kann wie das Bild.
    Bei Garmin habe ich ich die Ränder blau eingefärbt und breiter gemacht, danach das innere weiß und dünner gemacht. So dass ich wieder auf der normale Gesamtbreite war, wie am Anfang.

    Bis jetzt habe ich aber nichts gefunden, was in den Rand und Strassenbreite eingreift.
    Mein Testobjekt ist zurzeit die "OpenFietsMap.render.xml"

    Es dürfen sich auch andere User an dem Thema beteiligen.
    Danke schon mal im Voraus für die Hilfe.
     

    Anhänge:

    Zuletzt bearbeitet: 26.08.2019
  10. Lenoid, 27.08.2019 #10
    Lenoid

    Lenoid Threadstarter Experte

    @vonharold
    Das hängt natürlich stark von deiner Vorlage ab, die zum Glück erwähnt hast (und die auch sehr gut zum üben ist). :)

    Vorweg: zum schnellen testen deiner neuen Kartendarstellung kannst du auch dieses Tool testen, anstatt es extra auf ein Android Gerät zu kopieren:
    OffRoad
    Die XML-Datei muss dann in "C:\Users\DEIN_BENUTZERNAME\.OffRoad\rendering_styles". Das Tool danach neu starten.
    Das Tool kann nicht ansatzweise mit OsmAnd mithalten, v.a. mit der Performance, aber für einen schnellen Test reicht es.

    Jetzt aber zu deinem Anliegen:
    Da OpenFietsMap mehrere Straßentypen von der Autobahn bis zur Secondary Road gruppiert (nicht die Farben, aber z.B. die Breite) und du nur nach Autobahnen gefragt hast, habe ich die beiden Einträge für Autobahnen und Autobahnabfahrten aus der Gruppe ab Zeile 257 gelöscht und eine neue Gruppe erstellt, die ich mir aus Touring-view_(more-contrast-and-details).render.xml geborgt habe. Diese neue Gruppe sieht so aus:
    Code:
            <group>
                <filter  tag="highway" value="motorway" color="#FFFFFF" color_0="#08088A"/>
                <filter  tag="highway" value="motorway_link" color="#FFFFFF" color_0="#08088A"/>
                <groupFilter>
                    <filter minzoom="5" maxzoom="6" strokeWidth="1" strokeWidth_0="3"/>
                    <filter minzoom="7" maxzoom="7" strokeWidth="1.3" strokeWidth_0="4"/>
                    <filter minzoom="8" maxzoom="8" strokeWidth="1.7" strokeWidth_0="5"/>
                    <filter minzoom="9" maxzoom="9" strokeWidth="2" strokeWidth_0="6"/>
                    <filter minzoom="10" maxzoom="10" strokeWidth="2.3" strokeWidth_0="7"/>
                    <filter minzoom="11" maxzoom="11" strokeWidth="2.7" strokeWidth_0="8"/>
                    <filter minzoom="12" maxzoom="12" strokeWidth="3" strokeWidth_0="9"/>
                    <filter minzoom="13" maxzoom="13" strokeWidth="3.3" strokeWidth_0="10"/>
                    <filter minzoom="14" maxzoom="14" strokeWidth="4" strokeWidth_0="12"/>
                    <filter minzoom="15" maxzoom="15" strokeWidth="5" strokeWidth_0="15"/>
                    <filter minzoom="16" strokeWidth="6.7" strokeWidth_0="20"/>
                </groupFilter>
            </group>
    In Offroad dann so:
    autobahn.JPG
    Ich denke das kommt halbwegs hin, das Blau musst du ggf. anpassen. Da ich nicht wusste wie breit die Autobahnen im Vergleich zu den anderen Straßen sein sollen, habe ich die Werte von Touring-view_(more-contrast-and-details).render.xml 1:1 übernommen. Die Werte mit strokeWidth=* und strokeWidth_0=* müsstest du dann ggf. anpassen.
    Die XML habe ich angehängt. Kannst sie mit einem entsprechenden Programm vergleichen, um meine Änderungen vielleicht besser nachvollziehen zu können. Es fehlt zwar die GUI du sie von TypWiz kennst, aber es ist im Prinzip recht einfach.

    Wenn du nur die Farben hättest ändern wollen und nicht die Breite oder diese Breite dann auch für die anderen 3 Straßentypen (Trunk bis Secondary Road) nutzen wolltest, dann hätte es auch gereicht nur die beiden Farben in Zeile 258 zu ändern.

    P.S.: "depends=*" (normalerweise direkt am Anfang der XML Datei) gibt an, welche Kartendarstellung die Basis sein soll. "depends="default"" wäre dann die standardmäßige Darstellung von OsmAnd (default.render.xml). In diesem Fall würde die neue Kartendarstellung nur die Änderungen ggü. der standardmäßigen angeben.
     

    Anhänge:

    vonharold bedankt sich.
  11. vonharold, 27.08.2019 #11
    vonharold

    vonharold Stammgast

    Hallo @Lenoid,

    das Typefile ist perfekt, da werde ich nichts mehr groß ändern.
    Nur noch das blau gewählt: #2E2EFE
    Der Rest bleibt so. Ich muss das Rad ja nicht neu erfinden.

    Ich steh halt auf diese blau/weiße Autobahn (in DE sind die Schilder ja auch so). Ich habe bei den Strassenkarten und bei den anderen Navis schon immer alle anderen Autobahnfarben gehasst.

    Deswegen habe ich bei Garmin damit angefangen das zu ändern. Garmin versuche ich langsam zu verdrängen, weil ich dazu immer ein Windows brauche um die Update zu machen. Stelle jetzt langsam alles auf Linux am PC um.

    Somit hast Du mich absolut glücklich gemacht.

    Danke für die ganze Hilfe....
     
    Lenoid bedankt sich.
  12. Lenoid, 27.08.2019 #12
    Lenoid

    Lenoid Threadstarter Experte

    Kann ich nachvollziehen. Bei UniRS, was ich standardmäßig nutze, sind sie zum Glück schon (hell)blau.

    Garmin fand ich wegen den Restriktionen nie wirklich gut. Ok, Navigon ist mMn das beste Navi für Android und OOTB gut, aber bei den anderen Dingern legt Garmin mMn viel zu viele Steine in den Weg. Wegen Linux schreib ich bei Gelegenheit eine PN. Das Thema interessiert mich auch brennend, ist hier im Forum aber total OT. :1f606: Ok, fast, Android hat mit Linux ja viel gemeinsam.

    Gerne geschehen, freut mich sehr. Ich hoffe du hast die enormen Möglichkeiten, die OsmAnd bietet, erkannt.;)

    OsmAnd bietet übrigens bei der Kartenkonfiguration auch unterschiedliche "Straßendarstellungen", u.a. nach dem dt. Straßenatlas (Autobahnen: rot-gelb). Die sind in der default.render.xml hinterlegt (einfach nach "germanRoadAtlas" suchen). Theoretisch müsste man weitere Straßendarstellungen erzeugen können, sodass die im Menü auftauchen, aber ich weiß nicht, wie man die übersetzt.
    Die default.render.xml sollte man übrigens nicht verändern (wie auch die anderen mitgelieferten), da die immer wieder aktualisiert und bei einem App-Update wahrscheinlich überschrieben werden. Möchte man UniRS verändern, würde ich das mit einer neuen XML, die sich per "depends=UniRS" auf UniRS.render.xml bezieht. Man kann auch die UniRS.render.xml kopieren und umbenennen, dann bekommt man aber nicht deren Updates.
     
    vonharold bedankt sich.

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. osmand legende

Du betrachtest das Thema "HowTo: Kartendarstellung/Typefile modifizieren" im Forum "Osmand",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.