Commit Graph

2475 Commits

Author SHA1 Message Date
Tom Payne c37837ba34 Use an object literal rather than a class for LRUCache entries 2013-02-06 10:08:03 +01:00
ahocevar 089b7013c2 Merge branch 'master' of github.com:openlayers/ol3 into vector
Conflicts:
	src/ol/renderer/canvas/canvasrenderer.js
	test/ol.html
2013-02-05 17:28:36 +01:00
ahocevar 386b97cf9a Merge branch 'master' of github.com:openlayers/ol3 into vector
Conflicts:
	src/ol/renderer/canvas/canvasrenderer.js
	test/ol.html
2013-02-05 17:17:09 +01:00
ahocevar dafa48da2e Using spatial index and combined filters
This should significantly speed up feature access. Needs unit
tests.
2013-02-04 22:51:58 +01:00
ahocevar c58f0afcc3 New R-Tree struct for spatial indexing.
This needs unit tests.
2013-02-04 22:50:59 +01:00
ahocevar 428793cd7c New filters for extent and logical filtering
These need unit tests.
2013-02-04 22:50:21 +01:00
Tom Payne c34fe519c0 Remove ol.structs.LinkedMap 2013-02-04 18:37:12 +01:00
Tom Payne 1f460975bb Port WebGL texture cache to ol.structs.LRUCache 2013-02-04 18:37:12 +01:00
Tom Payne 06eb3040af Port ol.TileCache to ol.structs.LRUCache 2013-02-04 18:37:12 +01:00
Tom Payne c99ec2d834 Add ol.structs.LRUCache 2013-02-04 18:37:12 +01:00
Éric Lemoine bde61a0b4b Simplify control architecture 2013-02-04 10:18:33 +01:00
Frederic Junod 6675de437f Handle projection change in ol.Geolocation 2013-02-04 09:46:31 +01:00
ahocevar 43dd9ca68c Don't use unshift 2013-02-02 12:29:08 +01:00
Frederic Junod 38f245c5c8 Add projection property to ol.Geolocation 2013-02-01 13:53:55 +01:00
Frederic Junod 37e172f043 Add missing export file for ol.Geolocation 2013-02-01 13:50:43 +01:00
Frederic Junod 035f487dc5 Add ol.Geolocation 2013-02-01 11:10:17 +01:00
Tom Payne 93976a5d9f Fix requires relating to recent commits 2013-01-30 23:47:13 +01:00
Tom Payne e6eb401e36 Add missing goog.requires 2013-01-30 23:47:13 +01:00
Tom Payne 6e247d9331 Rename modules for support detection 2013-01-30 22:48:03 +01:00
Tom Payne b6f856f962 Remove unused goog.requires 2013-01-30 22:48:03 +01:00
ahocevar 9a0f509a94 Use objects instead of arrays for geometry type cache
Also trying to reference features directly here instead of
storing feature ids in the index. We'll see if this is good when
we have an index for tile coords as well and want to filter
with multiple filters, accessing multiple indices.
2013-01-30 18:03:27 +01:00
ahocevar e61c26830e Manage tile cache
This change implements a LRU policy for tile cachint, and keeps
128 tiles in the cache by default.
2013-01-30 17:09:43 +01:00
ahocevar 1ecbc36a39 Merge branch 'master' of github.com:openlayers/ol3 into vector 2013-01-30 15:54:24 +01:00
Bruno Binet a64e4ae579 Merge pull request #164 from bbinet/kinetic
Add support for kinetic effect while dragging
2013-01-30 06:26:01 -08:00
Bruno Binet d2f30986db Set kinetic getDuration instance method to @private 2013-01-30 14:46:49 +01:00
Bruno Binet dff8c2b2b2 Renaming to be more consistent with ol3 style
s/v_0/initialVelocity/
s/v_min/minVelocity/
2013-01-30 14:46:49 +01:00
Bruno Binet d91e1d30d4 Get rid of binarySelect to find the first point. 2013-01-30 14:46:49 +01:00
Bruno Binet 79849888db Kinetic now returns directly the pre-render function
instead of returning the kinetic easing function only.

(thanks @fredj)
2013-01-29 15:34:11 +01:00
Bruno Binet 2bb8a5cfd9 Stop current kinetic animation on DOWN events 2013-01-29 14:32:38 +01:00
Éric Lemoine 773e34d736 Merge pull request #165 from elemoine/classname
Change class names in DOM renderer
2013-01-29 04:02:18 -08:00
Bruno Binet 39cbba3eb7 Add a frameState property to ol.MapBrowserEvent
so that we will be able to retrieve the current center of the view2d from the
framestate in the dragpan interaction.
2013-01-29 13:00:02 +01:00
Bruno Binet d54864695d Add a removePreRenderFunction method to ol.Map
This will remove the pre-render function from preRenderFunctions_ array if
found.
2013-01-29 12:56:15 +01:00
Bruno Binet 7d0b4c757e Activate kinetic effect by default 2013-01-29 12:39:52 +01:00
Bruno Binet 8a9738d755 Add support for kinetic effect while dragging.
Only dragpan interaction is supported for now.

The kinetic effect use the maths below (thx @twpayne):

Rate of decay (number, must be negative) = α
Minimum velocity (pixels/millisecond) = v_min
Initial velocity (pixels/millisecond) = v₀

Velocity at time t (pixels/millisecond) =
    α⋅t
v₀⋅ℯ

Distance travelled at time t (pixels) =
   ⎛ α⋅t    ⎞
v₀⋅⎝ℯ    - 1⎠
─────────────
      α

Duration of animation (milliseconds) =
   ⎛v_min⎞
log⎜─────⎟
   ⎝  v₀ ⎠
──────────
    α

Total distance travelled (pixels) =
-v₀ + v_min
───────────
     α

Easing function =
   ⎛ α⋅duration⋅t    ⎞
v₀⋅⎝ℯ             - 1⎠
──────────────────────
     -v₀ + v_min
2013-01-29 12:39:52 +01:00
Frédéric Junod 47fbdb53e2 Merge pull request #167 from fredj/mapbrowserevent-listen
Listen to all ol.MapBrowserEvent events
2013-01-29 03:15:19 -08:00
Frederic Junod a980de7830 Listen to all ol.MapBrowserEvent events 2013-01-29 11:29:27 +01:00
Tom Payne 2e401b43f4 Make attribution control unselectable 2013-01-29 11:21:57 +01:00
Tom Payne d22c441795 Merge pull request #162 from twpayne/canvas-visibility-and-opacity
Canvas visibility and opacity
2013-01-29 02:20:39 -08:00
Éric Lemoine 0c25aa95ea Merge pull request #166 from elemoine/extracomma
Change a comma to a semi-colon (thanks @bbinet)
2013-01-29 01:34:23 -08:00
Éric Lemoine 713828d953 Change a comma to a semi-colon (thanks @bbinet) 2013-01-29 10:33:35 +01:00
Éric Lemoine 8713e84821 Change class names in DOM renderer 2013-01-29 10:24:25 +01:00
Tom Payne 3bd1b92b05 Promote renderFrame from ol.renderer.*.LayerRender to ol.renderer.LayerRenderer 2013-01-28 19:56:57 +01:00
Tom Payne 5558d6108c Promote handleLayerRendererChange from ol.renderer.webgl.Map to ol.renderer.Map 2013-01-28 19:56:56 +01:00
Tom Payne 49734de240 Promote dispatchChangeEvent from ol.renderer.webgl.Layer to ol.renderer.Layer 2013-01-28 19:56:56 +01:00
Tom Payne 4701d117f7 Always dispatch change events on load/opacity/visible changes 2013-01-28 19:56:56 +01:00
Frédéric Junod eb103d3bd1 Merge pull request #160 from fredj/dblclick-unlisten
Remove event listener cleanups
2013-01-28 04:19:24 -08:00
Éric Lemoine 1d2551dbcb Do not draw image if image is null 2013-01-28 12:41:46 +01:00
Frederic Junod f8646394ae Remove event listener with goog.events.unlistenByKey 2013-01-28 10:37:32 +01:00
Frederic Junod 9e030854b2 Don't remove event listener for this.handleUp_ twice.
The listener key is in this.dragListenerKeys_
2013-01-28 10:31:24 +01:00
Frederic Junod 01098c4d8c Remove event listener with goog.events.unlistenByKey 2013-01-28 10:26:09 +01:00