Commit Graph

29 Commits

Author SHA1 Message Date
ahocevar
8cccbfb189 Protect ZoomBox from division by zero
When the map is at the highest zoom level, the old and the current
resolution will be the same. This would cause a division by zero, which
the JavaScript engine does not recognize as such. So we have to protect
zoomOriginPx from becoming {x: Infinity, y: Infinity}.
2013-06-06 09:18:35 +02:00
Tim Schaub
399c8ff643 Correct calculation of anchor for zooming
Quick explanation:

Let targetCenterPx be described by PX and PY.  Let oldRes and newRes be R0 and R1 respectively.  Let centerPx (center after zoom) be described by CX and CY.  And assume there is some anchored pixel point out there that represents the same map location before and after zoom.  Let this be the origin OX and OY.

We want to recenter the map on the provided box.  This means the map distance between the origin and box center at R0 is the same as the map distance between the origin and the map center at R1.

That is,

    R0 * (OX - PX) = R1 * (OX - CX), and
    R1 * (OY - PY) = R1 * (OY - CY)

Or, solving for OX and OY:

    OX = (R0 * PX - R1 * CX) / (R0 - R1), and
    OY = (R0 * PY - R1 * CY) / (R0 - R1)
2013-02-14 14:38:35 -07:00
Tim Schaub
1ac16835f2 If we are getting flipped top/bottom, let's correct it at the source 2013-02-14 14:27:00 -07:00
ahocevar
4b163e0482 Merge pull request #800 from ahocevar/transform
Use GPU where available; animated zooming. r=@elemoine
2013-02-14 01:15:18 -08:00
Marc Jansen
a34e627b75 Remove dangling space in license header. 2013-02-07 10:33:20 +01:00
ahocevar
9b7e35d1dd Merge branch 'master' of github.com:openlayers/openlayers into transform
Conflicts:
	theme/default/style.css
2013-01-09 14:31:52 +01:00
Tim Schaub
bbc73a21d8 Update copyright date 2013-01-07 22:01:16 -05:00
ahocevar
21448d2fd5 Adding animated zooming 2012-12-23 18:47:03 +01:00
ahocevar
958544f2a7 New zoomOnClick option for ZoomBox control.
This change also finally adds tests for the ZoomBox control.
2012-06-11 19:07:17 +02:00
Éric Lemoine
e0b93c2e45 The OpenLayers code is published under the 2-clause BSD license 2012-03-30 08:33:55 +02:00
Éric Lemoine
650df2a8f1 change copyright header in every OpenLayers js file 2012-03-29 22:14:56 +02:00
fredj
a111808e06 replace Pixel argument with simple object (Map.getLonLatFromPixel) 2012-01-14 14:11:24 +01:00
tschaub
b844a3b11b Happy New Year!
Updating copyright to 2012.
2012-01-03 09:01:10 -07:00
Xavier Mamano
d89819c3f2 #3580 ZoomBox: missing API documentation. 2011-11-20 12:25:01 +01:00
Tim Schaub
ad54169479 Happy New Year.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10995 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-01-03 15:39:40 +00:00
crschmidt
f0d474e50b Change license text to point to "OpenLayers contributors", referencing
authors.txt file. In reality, MetaCarta does not own copyright to these files,
they merely have a right to distribute them under the license terms agreed to
by the contributors. At this point, there is no longer any reference to
MetaCarta as a copyright holder in the OpenLayers project, only to its
individual contributors via the authors.txt file.


git-svn-id: http://svn.openlayers.org/trunk/openlayers@10706 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-09-01 03:06:31 +00:00
Éric Lemoine
ab42111aac code cleanup - remove unused variables and declare local variables, p=avlee, r=me (closes #2326)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@9766 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-10-27 12:15:22 +00:00
crschmidt
676475d902 "Always zoom in/out while drawing the zoom box." Patch from jachym, tested
and example added by vdeparday. r=me. (Closes #1771)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@8977 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-03-10 03:50:01 +00:00
crschmidt
95c178adf2 A brilliant patch adding better documentation to all of our controls from an
unnamed contributor on OpenLayers trac. (Closes #1751)  


git-svn-id: http://svn.openlayers.org/trunk/openlayers@8942 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-03-03 06:30:15 +00:00
ahocevar
d9cef80589 typo in ZoomBox. Thanks avlee for spotting this and the patch. r=me (closes #1413)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@6432 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-03-04 10:19:24 +00:00
Paul Spencer
fff63a1f9f (Closes #1187.) applying Bart's patch to add a zoom out option to the zoom control. r=pspencer.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@5796 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-01-17 16:35:49 +00:00
crschmidt
09e0d3ec81 Update copyrights to 2008.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@5614 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-01-01 08:14:55 +00:00
Tim Schaub
33e313b059 Separating jsdoc style docs into their own block. The new NaturalDocs doesn't parse these mixed blocks, giving us no class descriptions with the two together. (closes #1229)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@5553 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-12-21 08:28:09 +00:00
crschmidt
ed3221441c Refactor SVN layout in compliance with RFC/LicenseChange. This hopefully
completes an important blocker for moving forward with OSGeo incubation. 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@4985 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-10-17 02:21:22 +00:00
crschmidt
6194452b8a Since John already went ahead and committed the main change, I'm just going
to finish this one up. All commits are in comments, so a review doesn't seem
strictly neccesary. This closes #918 and fixes all the copyrights that I could 
find in the code.


git-svn-id: http://svn.openlayers.org/trunk/openlayers@3984 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-08-23 11:29:06 +00:00
euzuro
fd4d2918f1 fix for #853 - remove JSDOC comments from CLASS_NAME variables
git-svn-id: http://svn.openlayers.org/trunk/openlayers@3787 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-07-23 15:09:09 +00:00
Tim Schaub
cc1b0269c9 #823 New class style. Instead of OldStyle = Class.create(); OldStyle.prototype = Class.inherit(Parent, prototype), we now use NewStyle = OpenLayers.Class(Parent, prototype). New style classes allow for backwards compatibility [you can use OldStyle = Class.create(); Class.inherit(NewStyle, prototype)]. The Class.create and Class.inherit functions are deprecated. Backwards compatibility will be removed at 3.0. Thanks Erik for the careful review.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@3767 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-07-16 20:25:11 +00:00
crschmidt
3948913bfc Merge all changes from the naturaldocs sandbox. This brings all the work that
has been done in the NaturalDocs branch back to trunk. Thanks to everyone who
helped out in making this happen. (I could list people, but the list would
be long, and I'm already mentally on vacation.)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@3545 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-06-29 15:59:20 +00:00
crschmidt
3ca974acec Merge vector-2.4 branch back to trunk.
svn merge sandbox/vector-2.4/@2307 sandbox/vector-2.4/@HEAD trunk/openlayers/


git-svn-id: http://svn.openlayers.org/trunk/openlayers@2803 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2007-03-16 13:23:56 +00:00