From f9a01d507ecf7db611049184287c2451dec800f1 Mon Sep 17 00:00:00 2001 From: Alexander Bock Date: Thu, 15 Feb 2024 11:19:41 +0900 Subject: [PATCH] Make the co-rotation dependent on the bounding sphere rather than interaction sphere (closes #3017) --- src/navigation/orbitalnavigator.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/navigation/orbitalnavigator.cpp b/src/navigation/orbitalnavigator.cpp index ca5bfd8a21..268acbebd2 100644 --- a/src/navigation/orbitalnavigator.cpp +++ b/src/navigation/orbitalnavigator.cpp @@ -1247,11 +1247,11 @@ bool OrbitalNavigator::shouldFollowAnchorRotation(const glm::dvec3& cameraPositi const glm::dvec3 cameraPositionModelSpace = glm::dvec3(inverseModelTransform * glm::dvec4(cameraPosition, 1.0)); - const SurfacePositionHandle positionHandle = - _anchorNode->calculateSurfacePositionHandle(cameraPositionModelSpace); + const glm::dvec3 centerToReference = + glm::normalize(cameraPositionModelSpace) * _anchorNode->boundingSphere(); const double maximumDistanceForRotation = glm::length( - glm::dmat3(modelTransform) * positionHandle.centerToReferenceSurface + glm::dmat3(modelTransform) * centerToReference ) * _followAnchorNodeRotationDistance; const double distanceToCamera =