Loading ...
Sorry, an error occurred while loading the content.

Re: [aprsisce] Pre-Fetching

Expand Messages
  • Lynn W. Deffenbaugh
    ... I limit depth because of the 4x factor that increasing zoom levels represents. When I say that I pre-fetch the next lower N zoom levels, it means the
    Message 1 of 2 , Feb 28, 2010
    • 0 Attachment
      Broncus wrote:
      > Is there a reason to limit the prefetch depth? Why not allow the user the ability to download to any depth?

      I limit depth because of the 4x factor that increasing zoom levels
      represents. When I say that I pre-fetch the next lower N zoom levels,
      it means the ENTIRE area expanded by 4x for each zoom level closer.
      Many times, this is not what the user really wants to see in detail.
      For instance, why pre-fetch lots of ocean tiles just because the lower
      left corner of the United States happens to be a peninsula?

      I would entertain going deeper if the prefetch constrained itself to the
      same are that would be viewed by zooming in at the current screen size,
      but again, that's probably not what most users are looking for. Once
      you get in to a certain area, they really want the 4x expansion as it
      goes deeper.

      My own manual method is to get a reasonable area at a reasonable zoom
      and trigger the prefetch. I then zoom in 2 or 3 times and pan around
      triggering more prefetches until I think I've got enough queued. Then I
      zoom in to a reasonable street level and pan around slowly while
      watching for the fuzziness to disappear. At my origination and
      destination points, I zoom in really deep to have the final detail
      and/or back off 1 or 2 levels and trigger a final few prefetchs.

      The client does do some automatic prefetching of one zoom level further
      out and the 4 tiles one level closer (along with one additional tile at
      the current zoom level out each edge of the screen) each time a new tile
      is fetched from the server. This is in anticipation of traveling into
      those areas or doing a small zoom for less or more detail.

      Note that the automatic prefetchs of map tiles due to panning and
      zooming are canceled if your attention has moved elsewhere (by more
      panning and zooming) before the tiles were fetched. Manual Prefetch
      requests are not canceled nor cancellable short of closing the client.

      > In other software I have, the user selects the zoom levels for tile retrieval.
      > In that same package, the author has also limited the zoom levels to:
      > 1/4M, 1M, 4M, 16M, 64M and 256M per pixel. The maps are USGS topo, aerial and urban tiles from the TerraServer.

      So you know if that software holds to the same screen size on the
      retrieval or actually expands the 4x to ensure fully detailed coverage
      for the entire originally viewed area? I'm suspecting the former where
      I do that latter.

      > I was also thinking the ability to prefetch all tiles below the current level when the map is moved is possibly useful. Obviously this can be very time and space consuming. But if the user could select the levels he/she needed, then only the levels select would be fetched.

      See above for the automatic prefetch that has been in the client from
      day 1 (of OSM support anyway). These automatic prefetches are not
      guaranteed to be attempted, though, if you keep panning and zooming
      around. "All" is a very data-intensive word when dealing with the 4x

      > One reason this is useful to me is that I run a GPS simulator and have been retrieving tiles automatically. This has been useful so far in getting tiles for areas that I am interested in (mainly traveling to and from and though) and it would allow a single pass.

      If you slow the GPS simulator down so that it doesn't force panning
      before the queue has worked off (yellow circle expands to disappear), it
      will at least have pre-fetched one level down and one level up from the
      current zoom view.

      Lynn (D) - KJ4ERJ

      PS. I've got a ToDo to use HTTP/1.1 for tile retrieval that reduces the
      load on the network and tile server. I'll consider these suggestions
      after I've been able to do that. I don't want my client to become
      persona non grata (http://en.wikipedia.org/wiki/Persona_non_grata) on
      the OSM tile servers.

      > Best regards,
      > Fred, N7FMH
      > ------------------------------------
      > Yahoo! Groups Links
    Your message has been successfully submitted and would be delivered to recipients shortly.