yy20111011659 / route-me

Automatically exported from code.google.com/p/route-me
0 stars 0 forks source link

minZoom on tileSources is not respected #82

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
No where in the code do we deal with a tileSource's minZoom.  This is an
issue because the VirtualEarth tile source has a minZoom of 1, not 0 like
the default.

Original issue reported on code.google.com by Quazie on 12 Mar 2009 at 10:26

GoogleCodeExporter commented 8 years ago
r325 will help catch these

Original comment by halmuel...@gmail.com on 12 Mar 2009 at 10:50

GoogleCodeExporter commented 8 years ago
It's not enough to simply pass through minzoom/maxzoom to the tile source. The 
app developer might want to 
restrict the zoom range within what the source allows, for instance on Virtual 
Earth allowing only zoom levels 3 
through 9.

What should be done if the app developer calls [mapContents setMaxZoom:25] on a 
source that only goes up to, 
say, 18? Throw an error? Or just use the legal limit of 18?

Original comment by halmuel...@gmail.com on 13 Mar 2009 at 6:10

GoogleCodeExporter commented 8 years ago
Here is where the use of the word zoom becomes onerous, as it has many meanings 
in
our app.  An error most certainly should NOT be thrown, nor should we change 
the 25
to an 18.

TileSource: minZoom/maxZoom refers to only which tiles should be grabbed from 
the
server, nothing more.  This data should be used in a smarter way in
RMTiledLayerController than it is currently being used:

    layer.levelsOfDetail = tileProjection.maxZoom + 1; // check this.
    layer.levelsOfDetailBias = 1; // Allows zoom level 0.

Currently what happens is the maxZoom determines the number of layers (which 
makes
perfect sense) but we don't have any way to incorporate the minZoom (And I 
don't yet
know how to do that).  The first line needs to remain the same, as that is what 
keeps
a zoom of 18 in the mapContents at zoom level 18 of the tileSource.

Now, if i [mapContents setMaxZoom:25] in my app now, the current behavior is 
correct,
after a certain point I simply zoom closer into the current tile, unable to get 
a
more detailed tile.  This is perfect.  It should simply work as well when 
zooming out
beyond the tileSources' minZoom.

Also, having mapContents have a default maxZoom of 50 seems ludicrous.  My app 
resets
it to 18, and I could maybe see it in extreme cases going to 20/25, but at 50 
you are
looking at such a tiny specific area that you can't see anything. 

Original comment by Quazie on 13 Mar 2009 at 12:18

GoogleCodeExporter commented 8 years ago
The fix for this will (possibly) fix issue 1.  If we figure out a good way to 
respect
this minZoom for a tile source, things shouldn't go so crazy.

Original comment by Quazie on 15 Mar 2009 at 3:55

GoogleCodeExporter commented 8 years ago
Fixed by r479. If setZoom receives zoom level outside of min/max zoom, zoom is 
clamped to min/max.

Original comment by halmuel...@gmail.com on 14 Apr 2009 at 11:47