use tolerance for crosses right / force left

This commit is contained in:
ahocevar
2011-09-29 13:35:00 -06:00
parent 516914c935
commit c2582c1970
+5 -4
View File
@@ -624,19 +624,20 @@ OpenLayers.Bounds = OpenLayers.Class({
var width = maxExtent.getWidth();
//shift right?
while ( newBounds.left < maxExtent.left &&
(newBounds.right - rightTolerance) <= maxExtent.left ) {
while (newBounds.left < maxExtent.left &&
newBounds.right - rightTolerance <= maxExtent.left ) {
newBounds = newBounds.add(width, 0);
}
//shift left?
while ( (newBounds.left + leftTolerance) >= maxExtent.right &&
while (newBounds.left + leftTolerance >= maxExtent.right &&
newBounds.right > maxExtent.right ) {
newBounds = newBounds.add(-width, 0);
}
// crosses right? force left
if (newBounds.left < maxExtent.right && newBounds.right > maxExtent.right) {
if (newBounds.left + leftTolerance < maxExtent.right &&
newBounds.right - rightTolerance > maxExtent.right) {
newBounds = newBounds.add(-width, 0);
}
}