Skip to content
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

Better support for pre-downloading along GPX tracks #471

Closed
mnalis opened this issue Oct 28, 2023 · 10 comments
Closed

Better support for pre-downloading along GPX tracks #471

mnalis opened this issue Oct 28, 2023 · 10 comments
Labels
PR welcome Needs someone to implement it

Comments

@mnalis
Copy link
Collaborator

mnalis commented Oct 28, 2023

Use case

SCEE allows (under Settings / Display / Display GPX track from file / Download are covered by GPX track) to pre-download data along some GPX track, which is very useful in situation when one plans to map areas where download might be too slow (like travelling in a bus/coach/trail), expensive (e.g. roaming), impossible (no mobile data in rural areas) or too battery draining etc.

However, it currently only works on small areas, where its usability is limited (i.e. one could've just manually clicked on Download data here at that location), likely because of simplistic approach by trying to download one bbox containing whole area covered by GPX, which will then in majority of use cases fail with Download area too big, please download manually

So one has to do it manually, which is extremely time consuming and tedious.

Proposed Solution
It would be great if SCEE employed more advanced download strategy, which would allow to download quests for inter-city along track of inter-city coach or train and other bigger areas. That could be accomplished by splitting the download area in several smaller chunks, like e.g. JOSM does.

Also, does that functionality downloads only quest or also missing background vector tiles? (one would want both, of course)

example JOSM functionality (SCEE might not need all those tunables, but download everything within XXX meters might be useful):
josm

@Helium314
Copy link
Owner

What should be considered:

  • SC(EE) download bboxes are multiples of zoom 16 tiles
  • splitting the download into single z16 tiles is bad because downloading multiple tiles at once is much more efficient (data usage and download time)
  • above a certain size, the user should be informed about download details in some confirmation dialog, which should contain at least the number of downloads, maybe more details like covered area or (necessarily rough) estimate about download time or size of data on device could be added
  • maybe some way of canceling the download could be added
  • already downloaded areas should be considered, so nothing will be downloaded again when the download is canceled and restarted

@westnordost
Copy link
Collaborator

when the download is canceled and restarted

Why would you do that, though? You mean paused and resumed?

@Helium314
Copy link
Owner

Currently downloads are canceled if you manually start another download, or when the connection is lost.

@mnalis
Copy link
Collaborator Author

mnalis commented Nov 2, 2023

@mnalis
Copy link
Collaborator Author

mnalis commented Apr 22, 2024

57.2 now finally seems to work to download around bigger gpx tracks!

What would be nice is to have an preference how much to download around the tracks, currently (if I am reading that correctly) it seems to be hardcoded to minDownloadDistance = 10m?

@Helium314
Copy link
Owner

I decided that it's not worth adding yet another setting and more strings for such edge cases.

@westnordost
Copy link
Collaborator

westnordost commented Apr 22, 2024

I decided that it's not worth adding yet another setting and more strings for such edge cases.

Uh, oh, we need a SCEE Extended Edition ;-)

@mnalis
Copy link
Collaborator Author

mnalis commented Apr 22, 2024

I'd personally prefer it is an extra option in that Display GPX track from file dialog, though. Because my usual use case:

  • making a whole day or multi-day cycling gpx track passing through mostly-empty rural areas (where I'd likely just tag road attributes, as there is not much else there to tag) and through dozens smaller villages (which I'd like to map more fully while I'm taking a rest there)

is probably quite different in downloading requirements from:

  • someone who is going to visit densly-populated urban area as a tourist on foot visiting few dozen attractions there (and have a gpx track listing connections between those attractions) and would like to do some light SC mapping while there.

Even if main reason for pre-downloading the data might be the same (using device without mobile data capabilities, preventing [roaming or local] data charges, significant battery saving, ...) we might need significantly different download behaviour.

I decided that it's not worth adding yet another setting and more strings for such edge cases.

Perhaps worth reconsidering adding that option? I mean, if the users are afraid of extra setting, perhaps SCEE is not a best match for them anyway, no? And extra translation strings just come with the territory.

(as an aside, I do not think that translations are as important in SCEE as they are in StreetComplete, as people are going to need to know British English for OSM tags anyway for important part of the "expert" functionality).

Uh, oh, we need a SCEE Extended Edition ;-)

🤣 Or, if it is too complicated and it's going to be hardcoded, maybe put it at 100m (or at least 50m)? Because, 10m is basically not downloading anything but the road itself.

@Helium314
Copy link
Owner

Because, 10m is basically not downloading anything but the road itself.

Just to be sure: did you test this? SCEE should still download full z16 tiles, if it doesn't that's a bug.

@mnalis
Copy link
Collaborator Author

mnalis commented Apr 22, 2024

Just to be sure: did you test this? SCEE should still download full z16 tiles, if it doesn't that's a bug.

Yes, it downloads in rectangles so catches some stuff around; it's just those rectangles are not big enough as I'd like; e.g. in village here where I made .gpx track that passes though it (among many other villages):

small_Screenshot_20240422_191501_SCEE

But I'd like to download not only "Zagorska ulica" (North-South one which is tagged with dark-green .gpx track) and its closest buildings, but also the the ones on the west side ("Brezje", "I. odvojak Goranove ulice", ...) and their surroundings too.

That is because .gpx track only connects villages I'll be passing; not everything I might visit in villages. As the villages are often heavily undermapped (which is one of the reasons I plan the ride through them), I don't know in advance which exact areas need work 1, so I have to download bigger areas around them, especially as they often also happen to have terrible (if any) mobile service so I cannot load it on-demand at the premises. And for the rest of the track the areas are even more empty (just roads/tracks/paths through forests/plains).

Footnotes

  1. I'm primarily interested in bicycle/pedestrian infrastructure, but in villages there are several logistics-related things I'm especially interested in mapping (adding if missing or updating if present or removing if gone): drinking water sources, convenience shops, cafes, pubs, fast foods, restaurants, bakeries, guest houses and camps and their details (especially opening hours, contacts) as well as picnic tables / benches (and surrounding trees to provide shade if present). They are usually not more than few present per village (and in some villages zero 😱), which makes them quite important -- hugely more important than say a shop say in a big city, where if some shop is missing, there are dozens in just a minute walk. I'm however not very interested in building types, levels, roofs, or any other building-related quests (except housenumbers), so those quests are disabled (as seen on the screenshot above).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR welcome Needs someone to implement it
Projects
None yet
Development

No branches or pull requests

3 participants