Commit Graph

291 Commits

Author SHA1 Message Date
Tim Schaub
0a5dae9ed0 Avoid left shift in resolution calculations 2013-02-18 18:37:27 -07:00
Tim Schaub
8b19751264 Making it explicit that this is a range of tiles
With tile range extending rectangle, a tile range that represented a single tile was not allowed.
2013-02-18 17:07:31 -07:00
Tim Schaub
0d6c54847b Removing logic that assumes occasionally stretched tiles
When the dom renderer included logic to stretch tiles so that gaps were properly filled for fractional zoom levels, we needed to take this into account when getting a tile coordinate for a given coordinate and resolution.  This was never the proper logic for a renderer that wasn't stretching occassional tiles (e.g. the WebGL renderer, the Canvas renderer, or the new DOM renderer).
2013-02-18 15:55:27 -07:00
Tim Schaub
e8c50c7290 Passing tests 2013-02-18 15:11:53 -07:00
Tim Schaub
6aa4e99fe5 Fix return from findLoadedTiles
Previously, the findInterimTiles method was returning undefined if the min x/y coord for a tile range was already in the lookup.  The return says it indicates whether all tiles for the given z are loaded.  This change corrects the return.

This change also reveals a misunderstanding of the tile range returned by `getTileRangeForExtentAndZ`.  The previous findInterimTiles method was treating max values as inclusive.  This is intuitive.  It looks like the method returns a range where max values are exclusive.
2013-02-18 14:51:39 -07:00
Tim Schaub
ddf993f0c9 Factor out common code and test
The findInterimTiles method was used in three renderers.  This change makes it available on the tile source and adds some basic tests.
2013-02-18 14:18:08 -07:00
Tom Payne
a455473a28 Merge pull request #200 from twpayne/proj4js-tests
Proj4js tests
2013-02-18 06:28:39 -08:00
Tom Payne
3a20eaed32 Merge pull request #198 from twpayne/ellipsoid
Add ellipsoid geometry functions
2013-02-18 06:27:36 -08:00
Tom Payne
7b42b62033 Add Proj4js integration tests 2013-02-18 14:44:44 +01:00
Tom Payne
cb9fbc3dec Add Proj4js to test framework 2013-02-18 14:44:35 +01:00
Tom Payne
281f01889e Merge pull request #196 from twpayne/sphere
Add spherical geometry functions
2013-02-18 03:35:44 -08:00
Tom Payne
36a3d02816 Add ellipsoid geometry functions 2013-02-18 12:32:43 +01:00
Éric Lemoine
be6c1a1a27 Test the image layer renderer's transform matrix 2013-02-17 22:47:19 +01:00
Tom Payne
544f399e04 Add spherical geometry functions 2013-02-15 18:07:19 +01:00
Éric Lemoine
e1505abe0d Rename ol.Rectangle scale to scaleFromCenter 2013-02-15 17:43:27 +01:00
Éric Lemoine
aa9f820723 Add scale to ol.Rectangle 2013-02-14 23:36:36 +01:00
Éric Lemoine
35a6cac37f Add containsExtent to ol.Extent 2013-02-14 23:36:36 +01:00
Bart van den Eijnden
234f6bc411 Merge pull request #180 from bartvde/wmscapsclean
add WMS GetCapabilities parser for WMS 1.1.0, 1.1.1, 1.1.1 WMS-C profile
2013-02-14 05:02:39 -08:00
Tom Payne
218bf2c78b Improve LRUCache containsKey test, thanks @tschaub 2013-02-07 12:21:12 +01:00
Bart van den Eijnden
360c426f14 add WMS GetCapabilities parser for WMS 1.1.0, 1.1.1, 1.1.1 WMS-C profile and WMS 1.3.0 2013-02-06 14:25:57 +01:00
Tom Payne
0c205da290 Merge pull request #176 from twpayne/lru-cache
LRU Cache
2013-02-06 01:15:04 -08:00
Tim Schaub
0c48fbd188 Check sooner and only assert if duration hasn't passed 2013-02-05 10:50:18 -07:00
Tom Payne
c99ec2d834 Add ol.structs.LRUCache 2013-02-04 18:37:12 +01:00
Éric Lemoine
f735a597fe Merge pull request #171 from elemoine/testdeps2
Use namespaces for tests
2013-01-31 02:02:33 -08:00
Éric Lemoine
bfb6d0ca87 Missing var's in a test file 2013-01-31 11:01:06 +01:00
Éric Lemoine
b6ed5f2164 Use namespaces for tests
With this commit test files provide namespaces (using goog.provide). This fixes the issue reported by @bartvde where goog objects cannot be used in Jasmine "describe" functions. It also frees us from having to add script tags for the test files in test/ol.html.
2013-01-31 10:18:21 +01:00
Tim Schaub
3ccfaebcfc Punctuated 2013-01-23 22:18:00 -07:00
Tim Schaub
afb9add911 Checked with third-party tool 2013-01-23 22:12:17 -07:00
Tim Schaub
0845dea366 Care with transform
Since the transform method takes an arbitrary transform function, new coordinates may not be ordered in the same way as the originals.
2013-01-23 22:03:08 -07:00
Éric Lemoine
c6a8e5ef72 Remove unused Jasmine matchers 2013-01-21 12:29:31 +01:00
Tom Payne
a8dc810696 Use Infinity rather than undefined to drop tiles 2013-01-19 15:24:02 +01:00
Tom Payne
1c524caae6 Discard unwanted tiles from tile queue 2013-01-19 15:03:01 +01:00
Éric Lemoine
c0c9cdef15 New tile queue implementation (heapify-powered) 2013-01-18 21:02:09 +01:00
Tim Schaub
f39b6a1be3 Errant require 2013-01-17 14:23:35 -07:00
Tim Schaub
10672ad303 Standardizing color ranges (see #129) 2013-01-17 14:19:50 -07:00
Tim Schaub
141e5aa9fc Trim search string before use
The `window.location.search` string includes the "?" symbol.  Without this change, `createFromQueryData` only works if the "renderer" parameter is not in first position (see 4037bafc45).
2013-01-17 13:05:47 -07:00
Tom Payne
af88fb415b Remove forEachTileCoord 2013-01-14 16:21:58 +01:00
Éric Lemoine
927cffb2b7 Add view abstraction 2013-01-09 14:03:16 +01:00
Tom Payne
21331d1065 Dispatch generic changed events when any ol.Object property changes 2013-01-08 17:26:22 +01:00
Éric Lemoine
b386c38111 Demonstrating user-controlled animation
Inspired from 840ffb6
2013-01-03 12:23:50 +01:00
tschaub
4d97b583c6 Match the current Filter Effects spec
This commit is a cherry-pick of 19f7778.

The current draft of the [filter spec](https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html)
describes brightness, contrast, hue-rotate, and saturate functions that
roughly match our layer's setBrightness, setContrast, setHue, and
setSaturation methods.  These changes make the range of our methods match
the corresponding functions in the spec.  The one exception is the
brightness function.  The spec says it has a range of 0 to positive infinity.
The WebKit implementation accepts a range of -1 to 1 (as of
https://github.com/WebKit/webkit/commit/8f4765e569).  There's an open
(ticket)[https://www.w3.org/Bugs/Public/show_bug.cgi?id=15647] recommending
that the spec be changed to match.

I'm not stuck on having our methods match those of the filter spec, but the
parity would be nice.

These changes leave the WebGL map renderer "broken" (whacky colors).  It would
be straightforward to update the current fragment shader to handle the new
range of hue, but the brightness, contrast, and saturation handling will
need to be reworked.

For inspiration, here are the color transformation
matrix calculations the WebKit filters:
8f4765e569/Source/WebCore/platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp (L64-80)

Conflicts:

	src/ol/renderer/dom/domlayerrenderer.js
2012-12-12 15:18:34 +01:00
Éric Lemoine
dd014a3b79 Avoid unneeded parameter concatenations (thanks @twpayne, refs #85) 2012-11-04 19:31:20 +01:00
Éric Lemoine
529c3e8b6a Add ol.TileUrlFunction.createBboxParam 2012-11-03 22:55:54 +01:00
Éric Lemoine
b2c71ed269 Add tests showing more usages of createFromTemplate 2012-11-03 00:43:46 +01:00
Éric Lemoine
f49f370857 Make linter happy 2012-10-11 18:09:18 +02:00
Éric Lemoine
9c48dff286 Add tests for ol.Map.prototype.disposeInternal 2012-10-11 17:53:35 +02:00
Éric Lemoine
2a76a23b6f Add tests for ol.control.Control 2012-10-11 17:46:47 +02:00
Tom Payne
9d253ab6bb Refactor exports and externs 2012-10-04 15:11:26 +02:00
Tom Payne
145312b273 Sort specs 2012-09-29 12:33:01 +02:00
Tom Payne
71e42b2448 Refactor build system
This rather large commit refactors the build system to solve a number of
problems:
- Object literal types are now declared in just one place
- There are no more circular dependencies
- There is no need for concealed subclasses in build-standalone mode

When building in standalone mode, you need to include the source in
build/src/external.  This declares object literal types as externs so
that their properties are not renamed.

When building with the application, you need to include the source in
build/src/internal.  This declares object literal types as typedefs so
that their properties can be renamed and removed.

Note also that ol.MapOptions has been merged into ol.Map, with some
renaming.
2012-09-29 11:51:53 +02:00