Posts by UweB

    Ok, dann funktioniert der Schalter nicht.

    Egal, ob ein- oder ausgeschaltet, der Button für die Kartenausrichtung ist immer da.

    Ist hoffentlich einfach zu fixen.


    Da ich immer Nord oben habe, wäre ich froh, wenn ich diesen Button ausblenden könnte.


    Raster QMV-Karten sind echt toll und schnell.

    In QVX Desktop v1.0.25.1 ist die Kartenanzeige jedoch falsch, wenn man über den MaxLevel hinauszoomt. Die Skalierung der Kacheln in Y-Richtung stimmt nicht.

    Unten ein Beispiel einer Raster-QMV, welche Level 0,1 und 2 enthält. (Karte gezipped im Anhang)


    Links die Karte bei Zoomlevel 2, alles in Ordnung. Die violette Markierung ist im hohen Atlas in Marokko.
    Rechts die Kartenansicht bei Zoomlevel 3. Die Markierung ist noch am gleichen Ort, aber die Karte suggeriert, dass die Markierung nun in Spanien liegt.

    Die Kacheln sind in Y-Richtung kräftig gestaucht.

         


    In QVX Mobile funktioniert das Zoomen über den Max-Level der Karte hinaus einwandfrei.

    Bitte in QVX Desktop korrigieren.


    Hallo Tom


    Ich habe festgestellt, dass auf QVX Desktop die Performance der Kachel-Cache dbs mit zunehmender Grösse abnimmt.

    Ich habe mir die sqlite db angeschaut und festgestellt, dass es an den Indizes liegt.


    Da ich davon ausgehe, dass der Zugriff auf die qvmdb immer unter Angabe aller drei Koordinaten x, y und z stattfindet, sind die drei bestehenden Indizes nicht optimal.

    Da sqlite bei einer Abfrage höchsten einen Index benutzt, ist der map_z Index mit zunehmender Cache-Grösse irgendwann mal hinderlich.

    Wenn man den Index maptile_z löscht, ist alles viel schneller (da sqlite dann entweder den Index maptile_x oder maptile_y Index braucht, deren Selektivität besser ist).


    Falls QVX doch manchmal nur die z-Koordinate einschränkt, empfehle ich nur einen einzigen, mehrspaltigen Index auf maptiles zu erstellen:

    CREATE INDEX MapTile_ZXY ON MapTile (Z,X,Y);


    Damit kann man die Z-Koordinate abfragen, aber auch alle drei Koordinaten und die Performance stimmt dann immer.


    Gruss

    Uwe


    P.S. eine grosse Cache-Datei liegt zum Testen im geteilten Google-Drive.

    Wenn eine Kachel wenig Inhalt hat (Meer, See mit kleinen Inseln) wird sie in QVXM v 1.1.3 und v.1.1.5 nicht angezeigt, wenn die Karte im Raster-QMV Format ist.

    Im QMZ-Format funktioniert das einwandfrei.

    Auch in QVX Desktop werden alle Kacheln angezeigt.


    Bitte in QVXM korrigieren.


    Im Anhang eine Zip-Datei der Karten mit Kacheln vom Level 0, 1, 2 in Raster-QMV- und QMZ-Format.

    Die Kachel, die nicht angezeigt wird, ist auch dabei. (z2_x0_y2.png)


    Ansicht QMV bei Zoomlevel 2.1


    Ansicht QMZ bei Zoomlevel 2.1:

    Files

    • WorldOTM2.zip

      (744.85 kB, downloaded 17 times, last: )

    Hallo Tom

    • Die erzeugte QMV-Datei ist sehr gross (etwa 4 mal grösser als die ursprüngliche QMZ)

    Ich habe mir eine in QVX Desktop erzeugte qmv in sqLite mal angesehen und dabei festgestellt, dass die Kacheln nicht mit 8Bit Farbtiefe (wie original), sondern mit 32 Bittiefe in die Tabelle geschrieben wird.
    Damit wird z.B. eine 27KB grosse Kachel schon 77KB gross.

    Einen Faktor drei sollte man so schon einsparen können.


    Um die QMZ-Karte in eine Raster-QMV-Karte zu exportieren, muss die Hauptkarte eine Online-Karte (OSM, OTM, etc.) sein, da ansonsten die erzeugte QMV-Karte unleserlich wird (die Kacheln werden alle irgendwie komprimiert).

    Was ich hier festgestellt habe ist, dass wenn ich die QMZ als Hauptkarte in eine QMV exportiere, so werden die einzelnen Kacheln von 256x256px auf 128x128px verkleinert. Das erklärt dann auch den unleserlichen Text und die gut zwei mal kleinere qmv-Datei.




    Hier noch die Print-Screens der Kachel-Eigenschaften. Die Kacheln sind im Anhang.


    originale Kachel:


    Kachel in der QMV hat 32 Bittiefe und wenn die QMZ auch die Hauptkarte ist, wird die Kachel auch noch auf 128x128px runterskaliert.

    Hallo Tom


    Bzgl der QMZ-Performance, habe ich mit der 90GB grossen AlpsOTM0-16.qmz auf meinem PC ein paar Tests gemacht.

    Ich benutze 7-zip.

    • Ein Aufruf, um eine Kachel zu extrahieren dauert ca. 10 Seckunden. Bei 30 Kacheln sind das dann schon 5 Minuten.
      c:\"Program Files"\7-Zip\7z x AlpsOTM0-16.qmz -aoa otm\16\34717\22798.png
    • Übergebe ich eine Liste mit allen sichtbaren Kacheln (siehe Anhang) in einem Befehl, dauert es ca. 11 Sekunden, also unwesentlich länger als eine einzelne Kachel:
      c:\"Program Files"\7-Zip\7z x AlpsOTM0-16.qmz -aoa @AlpsOTM0-16Extracttest.txt

    In QVX Desktop ist der Kartenaufbau der AlpsOTM0-16.qmz zwar keine Rakete, aber es ist ok.


    Auf dem iPad Mini 6 ist es aber extrem langsam.


    Siehst Du da eine Möglichkeit, die anzuzeigenden Kachel in einem Aufruf zu bündeln?

    Oder machst Du das schon und ein einzelner Aufruf geht auf dem iPad Mini einfach schon so lange?

    In QVXM v 1.1.4 funktionieren grosse Raster-QMV Karten richtig und sehr performant (viel schneller als QMZ)

    Ein weiteres Plus der QMV-Karten ist, dass in QVX und QVXM die Karte nicht einfach verschwindet, wenn der im Kartenfenster gewählte Zoomlevel grösser als der Max-Level der Karte ist.


    Daher werde ich in Zukunft den Kartenexport in QVX Desktop öfters benutzen, um selbst erstellte QMZ-Karten in QMV umzuwandeln.


    Damit das besser geht, hier mein Feedback zur aktuellen Lage der Kartenexport-Funktionalität im QVX 1.0.25 (QMZ nach Raster-QMV):

    • Um die QMZ-Karte in eine Raster-QMV-Karte zu exportieren, muss die Hauptkarte eine Online-Karte (OSM, OTM, etc.) sein, da ansonsten die erzeugte QMV-Karte unleserlich wird (die Kacheln werden alle irgendwie komprimiert).
      Eine QMZ sollte jedoch als Hauptkarte ohne weiteres in eine Raster-QMV gewandelt werden können, wobei die Kacheln unverändert übernommen werden.
    • Wählt man den Pfad und Dateinamen der zu erstellenden QMV-Karte mittels des Explorer-Fensters aus, wird der im Feld "Datei" eingetragen.
      Sobald man den Kartenexport startet wird aber eine QMV-Datei mit demselben Namen wie die QMZ-Datei erstellt (lediglich die Datei-Erweiterung wird zu .qmv).
      Oder manchmal geht der Explorer-Dialog auf, und es wird wieder nach dem Dateinamen gefragt.
      Es würde helfen, wenn der eingegebene Dateiname direkt benutzt werden würde.
    • Im Info-Feld steht der maximale Zoomlevel und die Anzahl Kacheln von diesem Zoomlevel.
      Es wäre hilfreich, wenn der Zoomlevel-Bereich angegeben würde (z.B. Level 2-10) und nebst der Anzahl Kacheln des höchsten Zoomlevels, auch die totale Anzahl der zu exportierenden Kacheln.
    • Währenddem der Export läuft beginnt der grüne Fortschrittsbalken bei jedem Level der gerade exportiert wird, wieder von vorne an zu laufen.
      Das ist kein Problem, aber es wäre es gut, wenn im Text daneben der Zoomlevel mit der Anzahl Kacheln stehen würde, welcher gerade exportiert wird.
      Ansonsten weiss man nie, wie viele Zoomlevel noch kommen. (Das ist vor allem bei grossen Exporten hilfreich)
    • Die erzeugte QMV-Datei ist sehr gross (etwa 4 mal grösser als die ursprüngliche QMZ)
      Bitte die erzeugte QMV-Datei versuchen zu verkleinern. (Wurde schon im QVXM-Forum erwähnt, aber gehört eigentlich hier zu QVX Desktop)
    • Importiert man die erzeugte QMV-Karte in QVX oder QVXM, so ist der Kartenname nicht gleich dem Dateinamen, sondern gleich dem Kartennamen der ursprünglichen QMZ-Datei.
      Ich fände es besser, wenn der Kartenname (der in der QMV-Datei abgelegt ist), derselbe ist wie der Dateiname (ohne die Datei-Erweiterung .qmv).
      Was auch gut wäre, ist ein zusätzliches Feld im Kartenexport, in dem man den Kartennamen separat angeben kann.
    • Die erzeugte QMV-Datei wird in QVX Desktop als Hauptkarte korrekt angezeigt
      Wird die QMV-Karte jedoch als Nebenkarte im PM geladen, so wird sie falsch angezeigt. Das sieht man gut, wenn man im Kartenfenster bis auf Zoomlevel 1 herauszoomt.
      z.B. Hauptkarte ist OSM und die erzeugte QMV-Karte ist die Zweit-Karte.
      Das sollte bitte behoben werden.

    Ich werde versuchen, da noch was raus zu kriegen, wie man den overhead verringern kann.

    Ich arbeite normalerweise nicht mit sqlLite, sondern mit den grossen SQL DBs.


    Wenn man eine DB am Ende der Inserts auf "ReadOnly" setzt, spart das auch Platz, da Free% auf 0 gesetzt wird. Aber ob es das in sqlLite auch gibt, weiss ich nicht.


    Aber vielleicht hilft das "Vacuum into" statment, nachdem alle Kacheln gespeichert wurden: VACUUM (sqlite.org)

    QVXM v1.1.4 kann nun die Raster-QVM Karten darstellen. :thumbup:

    Um die Performance zu testen habe ich in QVX Desktop v 1.0.25 eine neue Raster-QMV (WorldOTM0-10.qmv) basierend der WorldOTM0-10.qmz erstellt.

    Die Datei ist nun auch auf GoogleDrive.


    Die Performance auf dem iPad mini ist gut!


    Aber es gibt ein anderes Problem mit den Raster-QMV, denn sie scheinen mir viel zu gross.


    Die QMZ-Karte WorldOTM0-10.qmz hat 1.4 Mio Kacheln und ist 7.2GB gross. (komprimiert oder nicht, fällt nicht ins Gewicht)

    Die Raster-QMV-Karte WorldOTM0-10.qmv hat ebenfalls 1.4 Mio Kacheln und ist 27.5GB gross. D.h. 4 mal grösser!


    qmv ist ja eine sql lite db und eine Datenbank braucht schon etwas mehr Platz als die Rohdaten, aber ein Faktor 4 scheint mir viel zu viel.


    Zum Vergleich die QVX cache-Datei:

    opentopomap_cache.qvmdb hat 2mio Kacheln und ist nur 29GB gross. (1.4Mio Kacheln sollten dann 20GB brauchen)


    Kannst Du da noch was optimieren?



    Nachtrag zum qmv-Export in QVX Desktop:

    Beim Karten-Export wurde die online OTM als unsichtbare Hauptkarte hinterlegt.

    Wenn man da nicht macht, wird die qmv-Datei zwar kleiner, aber der Text auf den einzelnen Kacheln wird unleserlich. (Für mich ist nicht klar, was da in QVX Desktop passiert)


    Wenn ich die WorldOTM0-10.qmv komprimiere, dann ist die Datei noch 19.5 GB gross. Kann man die QMV nach dem Erstellen in QVX noch "entlüften"?

    Hallo Tom


    könnt Ihr auf die Dateien im GoogleDrive zugreifen?


    Ich lade gerade noch eine QV cache-Datei mit OTM Kacheln hoch. (opentopomap_cache.qvmdb)

    Der Upload sollte in ca. 4 Stunden beendet sein. Die Datei ist ca. 30GB gross und hat etwa 2mio Kacheln.

    Diese qvmdb-Datei zeigt auf dem iPad mini eine gute Performance.


    Gibt es eine Möglichkeit die QMV- oder QMZ Karten-Dateien gleich performant zu machen?

    Wenn nicht, kann man qvmdb-Dateien selbst erstellen?


    Gruss

    Uwe

    Hallo Horst


    Ja, genau so verhält es sich bei mir auch.


    Ich habe übrigens die Online Karten nochmals gelöscht und nun steht bei OTM auch MaxLevel 32 drin.

    Es haben aber nicht alle gelieferten Online-Karten einen Max Level von 18 oder 32 (die man miteinander anzeigen kann).

    Mapbox streets v4 vectortiles Test hat 19

    USGS National Map, US/Canada Topo 7.5', US FSTopo 2013 haben 15

    World Shaded Relief hat 12


    Diese Online-karten kann ich sicher selbst auf MaxLevel 18 setzen, sodass sie richtig kombinierbar sind.


    Was mehr stört, ist, dass QMZ- oder QMV-Raster- Karten, die ich mit dem QVX Karten-Export erstelle, immer den (effektiven, richtigen) Max Level haben und damit im QVX nicht richtig angezeigt werden. Bei jeder so erstellten QMZ-Karte muss man nach dem Importieren in QVX zuerst den Max-Level ändern.


    Bei QMV-Raster Karten kann ich den Max Level auf 18 einstellen und trotzdem wird die Karte nicht richtig dargestellt, wenn ich eine OSM-Karte als Hauptkarte habe (was bei mir meistens der Fall ist).


    Kann Tom das bitte korrigieren?