diff options
Diffstat (limited to 'src/mbgl/map/transform_state.cpp')
-rw-r--r-- | src/mbgl/map/transform_state.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/mbgl/map/transform_state.cpp b/src/mbgl/map/transform_state.cpp index 73c61fdf0f..45bee7ac7f 100644 --- a/src/mbgl/map/transform_state.cpp +++ b/src/mbgl/map/transform_state.cpp @@ -9,7 +9,8 @@ namespace mbgl { TransformState::TransformState(ConstrainMode constrainMode_, ViewportMode viewportMode_) - : constrainMode(constrainMode_) + : bounds(LatLngBounds::unbounded()) + , constrainMode(constrainMode_) , viewportMode(viewportMode_) { } @@ -185,14 +186,14 @@ double TransformState::getZoomFraction() const { #pragma mark - Bounds -void TransformState::setLatLngBounds(optional<LatLngBounds> bounds_) { +void TransformState::setLatLngBounds(LatLngBounds bounds_) { if (bounds_ != bounds) { bounds = bounds_; setLatLngZoom(getLatLng(LatLng::Unwrapped), getZoom()); } } -optional<LatLngBounds> TransformState::getLatLngBounds() const { +LatLngBounds TransformState::getLatLngBounds() const { return bounds; } @@ -379,9 +380,7 @@ void TransformState::moveLatLng(const LatLng& latLng, const ScreenCoordinate& an void TransformState::setLatLngZoom(const LatLng& latLng, double zoom) { LatLng constrained = latLng; - if (bounds) { - constrained = bounds->constrain(latLng); - } + constrained = bounds.constrain(latLng); double newScale = util::clamp(zoomScale(zoom), min_scale, max_scale); const double newWorldSize = newScale * util::tileSize; |