Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaria Volvenkova <d.volvenkova@corp.mail.ru>2016-07-07 18:46:19 +0300
committerDaria Volvenkova <d.volvenkova@corp.mail.ru>2016-07-08 17:24:54 +0300
commit6c6ff08f9dd685135cff652c966cabb9dcf99879 (patch)
treea5d891af03dc375db040f4e75b8d7de91c30974a /geometry
parent7ab8f049ed68092129f96de13940afab01adfbf6 (diff)
Review fixes.
Diffstat (limited to 'geometry')
-rw-r--r--geometry/screenbase.cpp17
-rw-r--r--geometry/screenbase.hpp2
2 files changed, 14 insertions, 5 deletions
diff --git a/geometry/screenbase.cpp b/geometry/screenbase.cpp
index 1c4503ac5c..89455ae424 100644
--- a/geometry/screenbase.cpp
+++ b/geometry/screenbase.cpp
@@ -94,11 +94,8 @@ void ScreenBase::UpdateDependentParameters()
}
}
-double ScreenBase::CalculatePerspectiveAngle(double scale) const
+double ScreenBase::CalculateAutoPerspectiveAngle(double scale)
{
- if (!m_isAutoPerspective)
- return m_3dAngleX;
-
if (scale > kStartPerspectiveScale1)
return 0.0;
@@ -117,6 +114,14 @@ double ScreenBase::CalculatePerspectiveAngle(double scale) const
return kMaxPerspectiveAngle2 * 0.99;
}
+double ScreenBase::CalculatePerspectiveAngle(double scale) const
+{
+ if (!m_isAutoPerspective)
+ return m_3dAngleX;
+
+ return CalculateAutoPerspectiveAngle(scale);
+}
+
void ScreenBase::SetAutoPerspective(bool isAutoPerspective)
{
m_isAutoPerspective = isAutoPerspective;
@@ -421,10 +426,12 @@ void ScreenBase::ResetPerspective()
m_isPerspective = false;
m_isAutoPerspective = false;
+ double const old_dy = m_ViewportRect.SizeY() * (m_3dScale - 1.0);
+
+ m_3dScale = 1.0;
m_3dAngleX = 0.0;
m_3dMaxAngleX = 0.0;
- double const old_dy = m_ViewportRect.SizeY() * (m_3dScale - 1.0);
Move(0.0, -old_dy / 2.0);
}
diff --git a/geometry/screenbase.hpp b/geometry/screenbase.hpp
index d3fbc6fc99..b5f43a1562 100644
--- a/geometry/screenbase.hpp
+++ b/geometry/screenbase.hpp
@@ -162,6 +162,8 @@ public:
m2::RectD CalculatePixelRect(double scale) const;
double CalculatePerspectiveAngle(double scale) const;
+ static double CalculateAutoPerspectiveAngle(double scale);
+
/// Compute arbitrary pixel transformation, that translates the (oldPt1, oldPt2) -> (newPt1, newPt2)
static MatrixT const CalcTransform(m2::PointD const & oldPt1, m2::PointD const & oldPt2,
m2::PointD const & newPt1, m2::PointD const & newPt2,