Betrachte 12 Beiträge - 1 bis 12 (von insgesamt 12)
  • Autor
    Beiträge
  • #43684
    Winfried
    Teilnehmer

    Hallo Tobias,

    vielen Dank für die viele Arbeit, die du in den Elevate-Kartenstil steckst. Insbesondere auch dafür, dass du immer wieder Verbesserungen einbaust und trotzdem versuchst, alles für den Benutzer verständlich zu halten.

    Ich hatte vor etwa einem Jahr einige Spezial-Wünsche fürs Rennrad bzw. MTB und diese nach Anraten von dir in einem eigenen Fork eingebaut. Seitdem bin ich immer fleißig dabei, deine Verbesserungen bei mir nachzuziehen. Das ist zwar viel Arbeit, aber ich will diese Verbesserungen natürlich bei meinen Kartenstilen auch haben…

    Die letzten Tage habe ich mir einige Gedanken gemacht, wie man das vereinfachen könnte. Die Idee ist, einen XML-Präprozessor zu verwenden. Die Vorteile wären beispielsweise:

    – Aufteilen des Codes in logische Einheiten
    – Wiederverwenden von Code statt Wiederholungen
    – Generieren von Wiederholungen mit leichten Unterschieden
    – Abfrage von Flags für Varianten

    Ich habe das Ganze mal prototypisch umgesetzt und ein umfangreiches README geschrieben, wo ich diese Vorteile beispielhaft aufzeige: https://gitlab.com/winni/oam-elevate/-/blob/main/README.md

    Das ist alles noch Proof-of-Concept. Ich würde mich aber freuen, wenn du dir das mal anschauen könntest und mir Bescheid gibst, ob so ein Präprozessor für dich in Frage kommen würde.

    Bei Fragen stehe ich gern (auch per E-Mail oder Telefon) zur Verfügung.

    Ich glaube, dass es nicht nur denjenigen die einen Fork pflegen, sondern auch dir Arbeit sparen könnte. Die Vielzahl von Wünschen (z.B. aus dem Forum) könnte man zum Teil beispielsweise statt über weitere Einstelloptionen durch eine Familie von Elevate-Stilen erfüllen.

    Viele Grüße
    Winfried

    1 Teilnehmer(n) gefällt dieser Beitrag
    #43703
    Avatar-FotoTobias
    Administrator

    Hallo Winfried,

    danke für deinen Vorschlag und deine vielen Ideen. Vorweg: ich bin keine Programmierer und mir reicht es, mich mit dem XML rumzuschlagen 🙂

    Tatsächlich hab ich schon eine etwas simplere Version zur Generierung der Themes, und zwar mache ich mittels Perl-Skripte aus der Entwicklungsdatei dev_Elevate die dann publizierten Versionen Elevate und Elements. dev_Elevate ist ein voll funktionierender Theme mit Kommentaren als Markierungen, um entsprechend Änderungen vorzunehmen, wie z.B. zoom-mins zu löschen. Gleichzeitig kann ich dev_Elevate in vollem Umfang testen und nach jeder kleinen Änderung sofort mir die Darstellung in Cruiser anzeigen lassen, das würde bei deiner Lösung so wie ich es verstehe nicht gehen.

    Ich bin froh, dass ich den ganzen Prozess mittlerweile vereinfachen konnte und nur noch eine Elevate/Elements Version mache, statt wie früher noch Elevate 2/LE/L/XL etc. aus Kompatibilitätsgründen/zur Größenanpassung. Das macht es auch für Nutzende einfacher, einfach nehmen und gut ist – eine Auswahl muss immer erklärt und Verstanden werden. Dadurch sind die Perl-Skripte inzwischen sehr einfach geworden, und der Aufwand bzgl. Testen und Support ist geringer.

    Da sind wir noch bei einem Punkt – meinen Ressourcen, und die sind in der Pandemie arg strapaziert worden (beruflich und privat), daher bin ich froh, das jetzt auf so einem einfachen Level zu haben. Das eigentliche Entwickeln ist ja nur ein Bruchteil der Arbeit; Testen, Support und Legende in zwei Sprachen der größere Anteil.
    Daher würde ich aktuell lieber nichts daran ändern/bzw. hab ich da auch nicht die Zeit dafür, und hoffe auf dein Verständnis.

    Viele Grüße
    Tobias

    Developer of Elevate mapstyle

    #43711
    Winfried
    Teilnehmer

    Hallo Tobias,

    Natürlich habe ich Verständnis, wenn du aktuell nichts ändern willst. Nerver change a running system. Meld dich einfach, falls du die Idee mit dem TAL-Präprozessor doch nochmal ausprobieren willst (z.B. für ein Fearure, dass du mit Perl schlecht hinbekommst). Das Testprojekt lass ich weiterhin auf dem Server.

    Viele Grüße
    Winfried

    #44611
    Avatar-FotoPeter47
    Teilnehmer

    Da ich bei meinem „Winter-Fork“ wohl das gleiche Problem habe werde ich mir diesen Vorschlag Mal genauer ansehen.
    https://www.senotto.de/Tipps_Tricks/GPS/OAM_Winter/OAM_Winter.html
    lg und xund bleim
    Peter
    http://www.danninger.eu

    #44613
    Winfried
    Teilnehmer

    Bei Fragen oder Problemen gerne hier im Thread oder auf GitLab melden.

    #44617
    Avatar-FotoPeter47
    Teilnehmer

    Servus Tobias,
    Nachdem ich das gelesen habe …. folgende Frage:
    Warum gibt es eigentlich „Elevate“ und „Elements“ ?
    Warum nicht 1 Style mit einem Menüpunkt zur Unterscheidung ?
    lg und xund bleim
    Peter

    #44676
    Avatar-FotoTobias
    Administrator

    Servus Tobias,
    Nachdem ich das gelesen habe …. folgende Frage:
    Warum gibt es eigentlich „Elevate“ und „Elements“ ?
    Warum nicht 1 Style mit einem Menüpunkt zur Unterscheidung ?
    lg und xund bleim
    Peter

    Da müsste ich große Teile des themes verdoppeln nur mit geänderten zoom-mins und viele Änderungen doppelt einpflegen. So wird nur eine Datei geändert und zwei verschiedene Themes generiert.

    Developer of Elevate mapstyle

    #44871
    Avatar-FotoPeter47
    Teilnehmer

    große Teile des themes verdoppeln

    Ja das ist wohl leider so, es sind in der .xsl ja keine Variablen vorgesehen. Würde sich da mit der V5 was ändern?
    Was mir bei meinen „Spielereien“ noch aufgefallen ist:
    – die unterschiedlichen Präfixe elmt- und elv- haben doch keinerlei Funktion?
    – der zusätzliche elv-Block „low zoom markers“ ist m.E. nicht wirklich wichtig?
    Bleiben also als einzige Unterscheidung nur die „zoom-min“, oder hab ich da was übersehen???

    #44874
    Avatar-FotoTobias
    Administrator

    Ja das ist wohl leider so, es sind in der .xsl ja keine Variablen vorgesehen. Würde sich da mit der V5 was ändern?

    Ich verstehe die Frage nicht ganz…meinst du .xml? Und meinst du V5 Karten oder V5 Themes?

    – die unterschiedlichen Präfixe elmt- und elv- haben doch keinerlei Funktion?

    Bei manchen Apps würden die Einstellungen für Elevate und Elements identisch sein, wenn die Optionen die selben Namen haben. Mit den verschiedenen Präfixen ist es möglich, diese unterschiedlich einzustellen.

    – der zusätzliche elv-Block „low zoom markers“ ist m.E. nicht wirklich wichtig?

    Durch die POI-Datenbank nicht mehr so wichtig, aber früher war es schon gut, schon bei niedrigen Zoomleveln bestimmte Symbole in Elevate früher anzuzeigen, und durch die kleinen Markierungen stehen sie auch weniger in Konkurrenz zu Ortsbeschriftungen etc.

    Bleiben also als einzige Unterscheidung nur die „zoom-min“, oder hab ich da was übersehen???

    Nein, das war’s schon.

    Developer of Elevate mapstyle

    #44882
    Avatar-FotoPeter47
    Teilnehmer

    .xsl war ein Typo … ich meinte die renderTheme.xsd, und mit der V5 meinte ich die (mapsforge-)Karten, da wird es aber möglicherweise auch eine neue .xsd geben.
    Ist ja nimmer ganz neu (2017), und ein Kommentar von Emux hat mich neugierig gemacht:

    Mapsforge maps advance to version 5.
    That provides support for „variable tag values“ via wildcards, i.e. store tag values in maps without needing to specify multiple value rules in tag-mapping.

    wenn die Optionen die selben Namen haben

    Das versteh ich überhaupt nicht, um welche Apps handelt es sich denn?
    Ich hab mal testweise elmt- und elv- durch oam- ersetzt und beide mit Cruiser, Oruxmaps und Cartograph getestet, diese akzeptierten das sofort.

    #44884
    Avatar-FotoTobias
    Administrator

    .xsl war ein Typo … ich meinte die renderTheme.xsd, und mit der V5 meinte ich die (mapsforge-)Karten, da wird es aber möglicherweise auch eine neue .xsd geben.

    V5 Karten hat Christian schon getestet, aber war leider nicht umsetzbar, was geplant war. Die erleichtern für ways, dass dort pauschal alle Werte aufgenommen werden für ein bestimmtes Tag, und nicht mehr im tag-mapping das von vorhinein definiert sein muss. Aktuell ist ja z.B. bei ways für ele (also für die Höhenlinien) jeder explizite Wert im tag-mapping aufgeführt, das müsste dann nicht mehr sein. Auf die Themes hat das i.d.R. nur die Auswirkungen, dass ggf. anderes tag-mapping zu Änderungen führen muss.
    Die xsd hängen nicht mit der Kartenversion, sondern mit der Themeversion zusammen. Wir sind schon seid mapsforge 0.6.1 bei Theme V5, aber erst seit 0.9.0 bei Maps V5, siehe hier. Elevate ist seit 4.4.0/April 2020 auch Theme V5 basierend, ich hatte aus Kompatibilitätsgründen lange damit gewartet, insb. da es im Vergeleich zu V4 nicht so wichtige Neuerungen waren.

    Developer of Elevate mapstyle

    #44886
    Avatar-FotoTobias
    Administrator

    Das versteh ich überhaupt nicht, um welche Apps handelt es sich denn?
    Ich hab mal testweise elmt- und elv- durch oam- ersetzt und beide mit Cruiser, Oruxmaps und Cartograph getestet, diese akzeptierten das sofort.

    Hab das selbst schon lange nicht mehr getestet, aber zumindest früher war das so. Kann natürlich sich mit mapsforge bzw. App Updates geändert haben. Anfangs hießen die Kartenstiloptionen in Elevate und Elements gleich, und wenn ich in OruxMaps bei Elevate eine Option geändert habe, war die dann auch in Elements geändert. Durch ausprobieren hatte ich dann rausgefunden, dass es mit eigenen Namen pro Kartenstil es möglich ist, das unterschiedlich abzuspeichern.

    Developer of Elevate mapstyle

Betrachte 12 Beiträge - 1 bis 12 (von insgesamt 12)
  • Sie müssen angemeldet sein, um zu diesem Thema eine Antwort verfassen zu können.