Commit Graph

397 Commits

Author SHA1 Message Date
Tom Payne
77841bb8eb Merge pull request #542 from twpayne/simplify-renderer-events
Create and remove layer renderers in renderFrame
2013-04-18 02:14:39 -07:00
Tom Payne
a07e70ea32 Handle obscure edge case where deferred post render function receives a null frame state 2013-04-16 23:40:48 +02:00
Tom Payne
bc10446b0e Track changes to layers in the map 2013-04-16 18:31:59 +02:00
Tom Payne
07fe17924b Remove layer renderers in post render function 2013-04-16 18:16:08 +02:00
Tom Payne
4e69b2bb8b Create and remove layer renderers in renderFrame
Previously, the map renderer would listen for layers being added and
removed from the layers collection, and would create and remove layer
renderers in response to these events.

With this change, layer renderers are only created or removed when
renderFrame is called, which leads to somewhat simpler code.

We still need to listen to changes to the layers collection, but now
these only trigger a new render.

This new approach also has an advantage when layers change order.
Swapping the order of two layers involves removing one and re-inserting
it elsewhere.  With the old approach, this would cause the deletion and
re-creation of the layer renderer.  With this new approach, the layer
renderer is preserved.
2013-04-12 17:50:38 +02:00
Éric Lemoine
1fe3091f43 Fix bug in canvas.TileLayer comments 2013-04-12 17:40:28 +02:00
Éric Lemoine
6cc019c031 Add comments to ol.renderer.canvas.TileLayer 2013-04-12 17:27:40 +02:00
Tom Payne
be629a7ed8 Sort jsdoc comments alphabetically 2013-04-12 00:48:55 +02:00
Tom Payne
0371b891a6 Tighten up permission on layer renderers 2013-04-12 00:48:35 +02:00
Tom Payne
d855a35446 Make renderer layer management private 2013-04-12 00:33:37 +02:00
Tom Payne
f0106f391a Make ol.renderer.Map.map property private 2013-04-12 00:33:37 +02:00
Tom Payne
ee817ba4a2 Clean up ol.renderer.webgl.Map.createLayerRenderer 2013-04-12 00:33:37 +02:00
Tom Payne
df6e13bdc0 Clean up ol.renderer.dom.Map.createLayerRenderer 2013-04-12 00:33:33 +02:00
Tom Payne
ac40769155 Clear tiles that are not fully covered 2013-04-11 15:50:32 +02:00
Éric Lemoine
d1021b6ee0 Refactor and fix canvas tile layer renderer 2013-04-11 09:26:57 +02:00
Tom Payne
fe03ebe99c Re-use ol.Extent objects 2013-04-09 19:19:45 +02:00
Tom Payne
e556c87a7c Re-use ol.TileRange objects 2013-04-09 19:19:20 +02:00
Tom Payne
1b7ee36680 Use high resolution tiles in DOM renderer 2013-04-09 13:15:16 +02:00
Tom Payne
8da1f3400b Use high resolution tiles in Canvas renderer 2013-04-09 13:15:16 +02:00
Tom Payne
4d6e060052 Use high resolution tiles in WebGL renderer 2013-04-09 13:15:16 +02:00
Tom Payne
52893f1ba2 Remove stray comment 2013-04-09 13:07:02 +02:00
Tom Payne
eee24870b5 Merge pull request #506 from twpayne/refactor-webgl-shaders
Refactor WebGL shaders
2013-04-08 11:11:47 -07:00
Tom Payne
e132943eef Use goog.asserts.fail 2013-04-08 19:14:16 +02:00
Tom Payne
667f3de6d9 Remove unused constants 2013-04-08 16:40:53 +02:00
Tom Payne
ee54aaaea4 Use simpler, faster shader when brightness, contrast, hue and saturation are unchanged 2013-04-08 16:40:53 +02:00
Tom Payne
f7f799be27 Use automatically generated locations in WebGL tile layer renderer 2013-04-08 16:40:53 +02:00
Tom Payne
aa5ce41cb5 Automatically generate uniform and attribute locations 2013-04-08 16:40:49 +02:00
Tom Payne
c6cd3e0227 Refactor glsl-unit templates
This abuses the template system to allow both a single anonymous shader
and multiple named shaders to be defined in a namespace.
2013-04-08 15:57:26 +02:00
Tom Payne
f1cc5b87da Fix whitespace errors in JavaScript source 2013-04-08 13:25:01 +02:00
Tom Payne
4d1ec1ff90 Remove (mostly unused) logger 2013-04-06 17:32:41 +02:00
Tom Payne
4be8c991f7 Add missing Closure Library requires 2013-04-06 14:28:12 +02:00
Tom Payne
da1e5aadd3 Factor out css.js and fix requires 2013-04-05 20:59:16 +02:00
Tom Payne
5680b89c48 Update logos in renderers 2013-04-05 18:27:51 +02:00
Tom Payne
02196c94b5 Redefine ol.Coordinate to be Array.<number> 2013-04-05 12:30:37 +02:00
Frederic Junod
cade8eaf7e Remove unused local variable 2013-04-05 11:59:07 +02:00
Tom Payne
b32a2e101c Abort rendering when WebGL context is lost 2013-04-05 00:14:10 +02:00
Marc Jansen
6ca21b32a9 More renames as suggested by @elemoine. 2013-04-04 10:25:11 +02:00
Éric Lemoine
e128bab625 Do not pass tile grid to getTile and tileUrlFunc
getTile and the tileUrlFunc are functions of the source, so they do need to be passed the tile grid. The tile source knows its tile grid, and can get the projection's tile grid if it doesn't have a tile grid.
2013-04-02 11:12:43 +02:00
Tom Payne
66c6a8a3e0 Make preload a number of levels instead of a boolean 2013-03-27 14:34:29 +01:00
Tom Payne
494d61250e Make tile pre-loading a per-layer option 2013-03-27 14:34:29 +01:00
Tom Payne
1d22d2fdde Tune tile priority functions 2013-03-27 14:34:29 +01:00
Tom Payne
5e8b0de66d Use tile texture queue 2013-03-27 14:34:29 +01:00
Tom Payne
6221680b0b Add tile texture queue 2013-03-27 14:34:29 +01:00
Tom Payne
96912c271d Add optional per-tile callback to manageTilePyramid 2013-03-27 14:34:28 +01:00
Tom Payne
27f9e83780 Refactor ol.TileQueue to extend ol.structs.PriorityQueue 2013-03-27 14:34:28 +01:00
Tom Payne
62877fdf02 Reuse ol.Size object 2013-03-25 11:54:50 +01:00
Tom Payne
4e883b7099 Don't shrink canvas 2013-03-25 11:54:50 +01:00
Tom Payne
6cfe918501 Merge pull request #428 from twpayne/gc-optimizations
GC optimizations
2013-03-25 03:54:15 -07:00
Tom Payne
9906c518a7 Rename useTileZXY to useTile 2013-03-25 11:45:20 +01:00
Tom Payne
658b919d20 Merge pull request #425 from twpayne/glsl-unit
Use glsl-unit for WebGL shaders
2013-03-25 03:42:27 -07:00