diff --git a/src/slic3r/GUI/Camera.cpp b/src/slic3r/GUI/Camera.cpp index b39df1ef4..12b5f98ce 100644 --- a/src/slic3r/GUI/Camera.cpp +++ b/src/slic3r/GUI/Camera.cpp @@ -153,7 +153,7 @@ void Camera::update_frustum() float eps = 0.01; if (m_last_eye.isApprox(eye_) && m_last_center.isApprox(center_) && m_last_up.isApprox(up_) && abs(m_last_near - near_) < eps && abs(m_last_far - far_) < eps && - abs(m_last_aspect - aspect_) < eps && abs(m_last_fov - fov_) < eps) { + abs(m_last_aspect - aspect_) < eps && abs(m_last_fov - fov_) < eps && abs(m_last_zoom - m_zoom) < eps) { return; } m_last_eye = eye_; @@ -163,6 +163,7 @@ void Camera::update_frustum() m_last_far = far_; m_last_aspect = aspect_; m_last_fov = fov_; + m_last_zoom = m_zoom; Vec3f forward((center_ - eye_).normalized()); Vec3f side((forward.cross(up_)).normalized()); Vec3f up((side.cross(forward)).normalized()); diff --git a/src/slic3r/GUI/Camera.hpp b/src/slic3r/GUI/Camera.hpp index b2f1116f4..4014d0789 100644 --- a/src/slic3r/GUI/Camera.hpp +++ b/src/slic3r/GUI/Camera.hpp @@ -58,7 +58,7 @@ private: BoundingBoxf3 m_scene_box; Frustum m_frustum; Vec3f m_last_eye, m_last_center, m_last_up; - float m_last_near, m_last_far, m_last_aspect, m_last_fov; + float m_last_near, m_last_far, m_last_aspect, m_last_fov,m_last_zoom; public: Camera() { set_default_orientation(); }