Commit Graph

223 Commits

Author SHA1 Message Date
ahocevar
99f116ee98 With tileQueue, we need a different way of handling loadstart/loadend. 2012-03-17 16:10:10 +01:00
ahocevar
193983b2b0 tileQueue has nothing to do with numLoadingTiles.
The tileQueue might have entries again after zooming when the previous zoom level hasn't finished loading yet. Removing the check for the tileQueue's length makes layers report loadend correctly again.
2012-03-15 17:44:30 +01:00
ahocevar
e52c97f741 Don't check based on layer.maxExtent.
layer.maxExtent is always set as soon as the layer is added to a map. Instead, making behavior consistent with tiled layers: don't display outside maxExtent except when displayOutsideMaxExtent is set to true or the layer's extent equals the world bounds for maps with a baseLayer that has wrapDateLine set to true.
2012-03-09 23:50:09 +01:00
Matt Priour
0ff2f9a457 Simplify maxExtent restriction logic and prevent unneeded calls to `getLayerPxFromLonLat` 2012-03-09 14:26:48 -06:00
Matt Priour
f6c8b81f3a Merge branch 'master' into singleTile 2012-03-09 14:04:21 -06:00
Tim Schaub
1a444589e0 Merge pull request #274 from tschaub/utfgrid
UTFGrid Tile, Layer, and Control.  This adds support for responsive handling of interactions with large numbers of features represented by UTFGrids.
2012-03-09 08:49:30 -08:00
Tim Schaub
021ad521a8 Tests for the getTileData method.
Tests pass on Chrome 17, Firefox 10, IE 8, and IE 6.
2012-03-08 19:18:32 -06:00
Matt Priour
3e50817623 Correct else code style error 2012-03-08 16:54:50 -06:00
Matt Priour
9d0dd67843 Add tests for initSingleTile function, which is where all the important singleTile logic is 2012-03-08 16:26:46 -06:00
Matt Priour
9fbadfa79f Modify initSingleTile to respect map or layer maxExtent when set and layer is not the map's baseLayer 2012-03-08 00:31:05 -06:00
Tim Schaub
46054b8543 Correctly getting tile data for a location.
The UTFGrid layer's `getTileInfo` method was not correctly handling dateline wrapping (and was a bit more complicated than it needed to be).  Since it would be useful to all grid layers to be able to retrieve a tile and pixel offset for any map location, this functionality deserves to be on the Grid layer.

The WMTS layer currently exposes a `getTileInfo` method that is used within the layer and by the WMTSGetFeatureInfo control.  This method could be renamed to `getRemoteTileInfo` or something to differentiate it from a method that gets locally cached tile info.  Until that change is made, the method on the Grid layer will be called `getGridData`.
2012-03-06 16:06:15 -07:00
ahocevar
a05eab29db Adding tileloadstart event to layer.
For this to be useful (i.e. so listeners can see/modify the tile url), a change in Tile.Image is required so we do not fire the loadstart event before we have the url to load.
2012-03-06 14:40:08 +01:00
Éric Lemoine
3b860ca4d7 Merge pull request #168 from jorix/Docs-issues3
Some problems in the documentation
2012-03-06 00:05:52 -08:00
ahocevar
fe63d0aa63 New events: loaderror for Tile, tileerror for Layer.Grid. 2012-03-05 14:20:01 +01:00
Xavier Mamano
bfb379f349 Fix some problems in the documentation. 2012-03-05 11:43:09 +01:00
ahocevar
93e4d0b94c Making loaded tile available to tileloaded listeners. 2012-02-16 16:29:06 +01:00
ahocevar
da3dc76a6d Making the delay for removing the backbuffer configurable.
This helps users who want to avoid having old and new tiles on the screen for transparent single tile layers.
r=@elemoine (closes #216)
2012-02-14 20:12:09 +01:00
ahocevar
5e734f20dc Merge pull request #179 from ahocevar/tile-queue
A tile queue that can be aborted. r=@elemoine,@fredj,@tonio
2012-02-14 10:59:12 -08:00
fredj
8558b6ee5c Update OpenLayers.Layer.Grid.calculateGridLayout inputs type.
No need to clone the passed bounds (read only access).
'bounds' can be either a Bounds instance or a simple javascript
object. Same for 'origin': LonLat instance or a simple javascript
object.
2012-02-02 16:35:30 +01:00
ahocevar
99a68b0d20 Clear queue in more appropriate places. 2012-01-31 12:04:03 +01:00
ahocevar
cc749a7967 Don't queue tiles multiple times.
This results in a smaller queue that we don't have to unqueue from.
2012-01-31 11:55:19 +01:00
ahocevar
720c49c040 Re-introducing tileLoadingDelay.
Only use it if no native requestAnimationFrame function is available. This should improve performance on mobile devices.
2012-01-29 18:50:03 +01:00
ahocevar
8efce71271 Fixing a fatal typo. 2012-01-28 23:35:56 +01:00
ahocevar
dde45696f7 Simplified tile queue; using the tile's beforedraw listener.
Since draw is the only tile operation that we defer, the tile queue can be an array of tiles and queue handling can be simplified. We now use the beforedraw event to defer drawing, and remove all occurrences of a tile from the tile queue when we draw it.

Instead of layers that want to defer tile drawing having to override the tile's draw method, layers can now abort drawing by returning false from a beforedraw listener, and later call draw(true) to draw the tile directly, without clearing it first.
2012-01-28 16:12:29 +01:00
fredj
0e435b5483 Simplify moveGriddedTiles code.
Saves 3 unnecessary instances creation and 6 parseFloat calls.
2012-01-28 15:30:39 +01:00
ahocevar
ef85f43d21 A tile queue that can be aborted.
This saves server requests, and because we use OpenLayers.Animation, setting img.src on a tile should not freeze iOS any more, so we can hopefully get rid of scheduleMoveGriddedTiles.
2012-01-28 15:30:20 +01:00
fredj
a34dd40869 Fix APIdoc syntax 2012-01-18 14:25:42 +01:00
Frédéric Junod
1cbd88d230 Merge pull request #137 from fredj/simple-objects
Replace Size and Pixel instances with simple objects. r=elemoine,probins,tschaub
2012-01-18 04:12:02 -08:00
Éric Lemoine
99ca32540d Merge branch 'master' into tile-fade-in
Conflicts:
	tests/Tile/Image.html
2012-01-17 09:27:55 +01:00
fredj
90452311f3 Remove tileSize.clone; not necessary to create a new size instance 2012-01-14 14:11:25 +01:00
fredj
1df5cfa158 replace LonLat argument with simple object (Map.getLayerPxFromLonLat) 2012-01-14 14:11:24 +01:00
Xavier Mamano
5cbdd27706 Docs: Set many links as {<...>} 2012-01-12 20:03:40 +01:00
Éric Lemoine
30c5b11d99 Merge branch 'master' into tile-fade-in
Conflicts:
	examples/fullScreen.js
2012-01-05 09:39:39 +01:00
fredj
3245836b6d New OpenLayers.Layer.Grid.tileClass option. Defaults to OpenLayers.Tile.Image 2012-01-04 12:37:39 +01:00
Éric Lemoine
39f2ddccee remove back buffer immediately in applyBackBuffer if back buffer is schedule for removal 2012-01-04 08:20:11 +01:00
tschaub
b844a3b11b Happy New Year!
Updating copyright to 2012.
2012-01-03 09:01:10 -07:00
tschaub
f2168d13b7 Increase timeout to avoid flashes.
Without this change, flashes are fairly frequent while zooming around a full screen map.
2012-01-02 16:07:40 -07:00
Éric Lemoine
eb924c8f77 no longer rely on the transitionend event, unwanted flashes are avoid using a timer 2012-01-02 22:53:53 +01:00
fredj
64b21b4e86 Remove unused variable 2011-12-12 10:42:33 +01:00
ahocevar
fa1845693b Fixing a typo. 2011-12-07 16:38:07 +01:00
ahocevar
b6df3d871b It turns out we really want to retile sometimes.
The reason is that we want to avoid moveGriddedTiles to run through hundreds of cycles to shift tiles until we reach the new bounds. But containsBounds does not work if extents that cross the date line start on different worlds, so we use intersectsBounds where we can pass the world bounds to handle this case.
2011-12-07 15:55:22 +01:00
ahocevar
08af94cf84 We never need to retile when the zoom didn't change. 2011-12-03 00:13:44 +01:00
ahocevar
84b30d3699 Don't rely on the bounds of the top-right tile.
When the grid crosses the dateline, the top-right tile is in a different world than the bottom-left one. Instead, use the grid size and tile width/height to calculate the top-right coordinate.
2011-12-03 00:05:26 +01:00
ahocevar
c15631ae3e Remove code that never gets called.
OpenLayers.Map has no wrapDateLine property.
2011-12-02 23:57:39 +01:00
fredj
6f78dc4c8f Remove call to deprecated events.addEventType function 2011-11-30 09:29:24 +01:00
fredj
6836f4dcdf Remove unneeded requires 2011-11-15 10:11:36 +01:00
fredj
1ed137bd0a move Layer.Grid.getGridBounds function into deprecated.js 2011-11-15 09:06:44 +01:00
Éric Lemoine
db08102fe4 correct bug where the value stored for the top-left corner of the back buffer may be incorrect, thanks @ahocevar for catching the issue 2011-10-30 23:20:42 +01:00
Éric Lemoine
c0d210ef05 just skip tiles that are currently loading when creating the back buffer 2011-10-29 21:11:14 +02:00
Éric Lemoine
8df1ae0e09 comparing backBufferData.resolution and serverResolution to know if backbuffering should be applied is wrong 2011-10-29 21:10:23 +02:00