Commit Graph

512 Commits

Author SHA1 Message Date
Andreas Hocevar f645a9e1e4 Make unmanaged vector layers behave more like ol.FeatureOverlay
* Skipped features need to be hit-detected on unmanaged layers.
* updateWhileAnimating and updateWhileInteracting are recommended to
  achieve the same instant visual feedback that ol.FeatureOverlay had.
2015-06-19 13:06:29 +02:00
Andreas Hocevar 817370a65b Use 'managed' instead of 'unmanaged' in LayerState 2015-06-11 18:34:20 +02:00
Andreas Hocevar 53d5d8c1d9 Get rid of ol.FeatureOverlay
This also introduces a wrapX option to the Draw, Modify and Select
interaction.
2015-06-09 15:44:31 +02:00
Andreas Hocevar 54da473991 Allow layers that are not managed by the map
When a layer is configured with a map, it will be added on top of other
layers, and not be managed in the map's features collection. The layerState
will have an 'unmanaged' flag for such layers. For vector layers, this flag
is used to not skip any features.
2015-06-09 15:44:29 +02:00
Frederic Junod bb6192bc10 Revert "Implement ol.renderer.Layer#forEachFeatureAtCoordinate"
This reverts commit dd07fd7977.
2015-05-05 09:38:50 +02:00
Frederic Junod dd07fd7977 Implement ol.renderer.Layer#forEachFeatureAtCoordinate
And remove identical implementation in children classes.
2015-04-28 14:08:45 +02:00
Andreas Hocevar 513677fecd Render map replay group on the correct world instead of wrapping it
By using the frameState's focus, we can adjust extent and transform and
render it for the world of interest instead of wrapping it and rendering
for every visible world.
2015-04-22 09:11:19 +02:00
Andreas Hocevar 23ed120361 Clarify when we make feature overlays wrap the x-axis 2015-04-21 09:56:03 +02:00
Andreas Hocevar 40feabc3c8 Do not require an extent for global projections 2015-04-21 09:11:06 +02:00
Andreas Hocevar 4f8dca92ba Ensure functions are always called with the same number of args 2015-04-21 08:21:31 +02:00
Andreas Hocevar 8fd4e2c7c5 Improve docs, comments and code readability 2015-04-19 08:52:37 +02:00
Andreas Hocevar b51aaa5055 Wrap the x-axis for the map's replay group 2015-04-18 19:10:53 +02:00
Andreas Hocevar a90a012e5d Replay vector batches for each world 2015-04-18 19:10:53 +02:00
Andreas Hocevar 2b75341068 Add support for non-square tiles 2015-04-14 22:54:57 +02:00
Éric Lemoine 42c4ae9ced Add updateWhileInteracting to olx.layer.VectorOptions 2015-04-01 08:27:29 +02:00
Marc Jansen fb9ba22c30 Add message to assertions. 2015-03-30 22:53:03 +02:00
Tim Schaub e5432f7cb5 Avoid creating unnecessary images during rendering 2015-02-16 15:11:16 -07:00
bill-chadwick 0381689fb6 Resize the canvas when the tile size changes 2015-02-10 14:00:23 -07:00
Tim Schaub 33c197cf16 Layer renderers should not require a map renderer 2015-02-08 07:25:10 -07:00
Tim Schaub d4b7bb7c57 Use frame state for pixel to coord conversion 2015-02-07 16:52:34 -07:00
Frederic Junod 078d3fb007 Add missing goog.require 2015-02-05 10:56:44 +01:00
tsauerwein f4500c8f89 Rename *AtPixel to *AtCoordinate if coordinate 2015-01-30 10:00:37 +01:00
tsauerwein 4d4bed454a Avoid pixel->coord->pixel conversion 2015-01-30 10:00:37 +01:00
tsauerwein 054227fd26 Make signature for *AtPixel methods more consistent
pixel/coordinate is the first argument.
2015-01-30 10:00:36 +01:00
tsauerwein b4cb786f29 Implement forEachLayerAtPixel for canvas 2015-01-30 10:00:36 +01:00
tsauerwein 7feb8b22f6 Rename forEachGeometryAtPixel 2015-01-30 10:00:36 +01:00
Frederic Junod cb69cecf03 Take the pixel ratio into account when clipping the layer 2015-01-28 14:21:50 +01:00
Éric Lemoine b27c1c82d4 Merge pull request #3107 from elemoine/imagestate
Also listen on loading images
2015-01-21 12:50:31 +01:00
Andreas Hocevar b1a73da9dd Add updateWhileAnimating option
With this option, vector batches will be recreated with every frame.
For animations, this means that vector data won't be clipped to the
extent at which the animation started.
2015-01-14 16:33:05 +01:00
Éric Lemoine 4814983306 Also listen on loading images
This fixes a bug that occured when an image source was used by multiple maps. In that case the map that didn't load the image wouldn't register a load listener on that image and would therefore not call render to request a re-render of the map.
2015-01-09 09:07:31 +01:00
Tim Schaub 1ee03625e9 Optimize hit detection by rendering features in a limited extent 2015-01-07 23:04:42 -07:00
Frederic Junod 55dda99cfe Assert that ol.layer.Tile#getUseInterimTilesOnError is always set 2015-01-07 16:59:44 +01:00
Éric Lemoine f1bf782133 Change "recreate batch" strategy
Only recreate batch when the (buffered) rendered extent contains the **buffered** viewport extent.
2014-12-19 08:43:47 +01:00
Éric Lemoine 8e8fc9977c Add a renderBuffer option to ol.layer.Vector 2014-12-18 13:20:32 +01:00
Éric Lemoine ddc51ee267 Unconditionally draw Replay's 2014-12-18 13:04:29 +01:00
Éric Lemoine fdf52c1865 Simplify hit detection code 2014-12-05 15:42:54 +01:00
Éric Lemoine 87bb1b956b Merge remote-tracking branch 'upstream/master' into webgl-point
Conflicts:
	src/ol/style/circlestyle.js
	src/ol/style/regularshapestyle.js
	test/spec/ol/style/regularshapestyle.test.js
2014-12-04 12:57:46 +01:00
Andreas Hocevar 4cbeb5ee22 Merge pull request #2987 from kartverket/2966
Image layer renderers use source projection if given and equivalent
2014-12-01 13:06:42 +01:00
Thomas Hirsch 8e4d7c0715 isDefAndNotNull -> !isNull 2014-12-01 12:57:35 +01:00
Thomas Hirsch d5bafc5e9f linting 2014-12-01 10:53:36 +01:00
Thomas Hirsch e385e81a20 linting 2014-11-30 10:08:41 +01:00
Thomas Hirsch c42ec27a4a image layer renderers use source projection if given and equivalent 2014-11-28 22:09:45 +01:00
Tim Schaub 50c0bc6879 Clip rendering to layer extent 2014-11-11 08:59:57 -08:00
Éric Lemoine 501e7456c0 Merge remote-tracking branch 'upstream/master' into webgl-point-merge 2014-11-10 15:40:03 +01:00
Guillaume Beraudo f715e3186a Readability rearangement in canvasmaprenderer.js 2014-11-07 11:15:02 +01:00
Éric Lemoine 46b03e79a4 Merge remote-tracking branch 'upstream/master' into webgl-point 2014-11-03 15:02:22 +01:00
Andreas Hocevar 87a06c0086 Rename #getImageElement to #getImage
This adds consistency between ol.Image and ol.ImageTile. Now both have
an exportable getImage method.
2014-10-30 08:42:09 +01:00
Éric Lemoine 33adcd3903 Add very basic webgl vector renderer 2014-10-27 09:18:19 +01:00
Tim Schaub e1ee3474bf Unregister listener 2014-10-11 18:49:12 -06:00
Tim Schaub 7129a08e0b Clear the canvas on layer extent changes 2014-10-11 18:22:18 -06:00