-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
POIs from POI format v3 files not shown #659
Comments
I have also been looking at this issue in the last few days.I bring here what I have been checking and hope it helps as a starting point. The internal structure of the In V2where In V3In Since in QMS a query is made based on the columns In principle the solution is to modify the query according to the new
I've opened a branch here ( https://github.com/mitxel-m/qmapshack/tree/QMS-659) that already contains the changes to the query so you can try it out. It`s a draft and only a starting point. AlternativelyThere is another way, which is possible but maybe not very elegant.
So you can put this in a ' POI_V3toV2.sql' text file (attached here) and then in a terminal do:
For reference It takes a few seconds to convert Canary_islands, and about 90 seconds to convert Spain-Portugal (over 1.777.000 items). With this we would keep the current speed loading pois and no change is necessary in the code, but it requires the user to convert v3 files in the future, so it would be a last chance remedy, or in case we see that with V3 QMS slows down a lot. |
I have added a new commit in my branch QMS-659. With these latest changes it is possible to load POI files in both v2 and v3 versions. QMS first checks the file version by looking at the metadata table and then prepares the query according to that version. So far everything is fine, but for now QMS works much faster using POI v2 files than using v3 files. Using a file for a small region (eg: Canary islands 59.000 items) the differences in load time are very small from v2 to v3, however if the POI file is large (eg: the whole Spain and Portugal 1.777.000 items) differences are notorius especially when:
As a reference, with a zoom adjusted to the island of Mallorca, and marking the whole tree of the This leads me to think that the current code works very well with the v2 files that have an r-tree, but I don't know if we will be able to get the same efficiency with the v3 files without making deep changes in the code, and in that aspect I'm a bit lost. @pingurus did the development for using POIs in QMS and his help would be very much appreciated at this point. I have also tried to modify the query for the v3 files trying to take advantage of the built-in index, but without success. It's also worth remembering that converting a v3 to v2 is relatively easy and fast. To summarize we are at this point:
|
My experiences are: https://ftp.gwdg.de/pub/misc/openstreetmap/openandromaps/mapsV4/ are working. I wonder, which is the preferred version. Tested on Windows 11 and MacOS 14 (Sonoma). On both OS with QMS V 1.17.1 |
The MAP format of the current OpenAndroMaps has been V5 for some time. Maps at https://ftp.gwdg.de/pub/misc/openstreetmap/openandromaps/mapsV5/ are bundled with POI files. As of December 2023, the POI format of the bundled POI files has changed from V2 to V3 format. See announcement. For QMS version 1.17.1 and before, these choices are currently available:
|
I would vote for converting the new format into the old one unless someone volunteers to analyze the new one to find a more optimized way to read it. And is doing the implementation. Users are greedy collectors. They hoard every bit of data they can get. And they expect that software can cope with that senseless amount of data. Therefore a performance hit is not acceptable. The POI stuff is already slow with the old format. |
Installing a new POI file is not an everyday task. Therefore, the one-time conversion from the V3 format to the V2 format is a reasonable effort. In my opinion, it is acceptable to require POI files in V2 format as long as there is no implementation that speeds up reading POI files in V3 format. But when trying to activate a V3 POI file, a message should pop up telling that this format is not supported. Including a hint on how the V3 format can be converted easily to the V2 format using an sqlite3 script. It would of course be very nice if the user could decide within QMS to convert the V3 format file into the V2 format on the fly, assuming write permission. |
As for conversion:
Since it is not too difficult, it is a matter of documentation. Especially that you can download up-to-date POIs in v2 format. Sure, ultimately, support of the V3 format out of the box, would be very nice. |
On Windows, you will find a usable |
Even better. |
Describe the bug
While POI old format files are still working, POIs from POI v3 format files found at locations mentioned by QMS Wiki page DocGisItemsPOI
o Mapsforge and
o GWDG
are no longer shown.
What have you done to circle down the problem?
Currently, POI old format files are still available at GWDG, which are processed correctly as well as in recent QMS version 1.17.1 as in previous QMS versions. POIs from POI v3 format files are not shown even in recent and previous QMS versions.
To Reproduce
Expected behavior
As POI old format files are no longer available at Mapsforge and may become unavailable at GWDG in future, QMS should be able to process recent POI v3 format files too.
Screenshots
POI old format file Berlin, showing railway stations:
POI format v3 file Berlin, not showing railway stations:
Attachments
-
Tracebacks
-
Desktop
Additional context
Internal data structure of recent Mapsforge/OpenAndroMaps POI files has been changed to format v3 as described here.
The text was updated successfully, but these errors were encountered: