From d7acec4f7d36ddba550d620be75007512b4e3453 Mon Sep 17 00:00:00 2001
From: dsehnal <david.sehnal@gmail.com>
Date: Sat, 25 Mar 2023 11:57:54 +0100
Subject: [PATCH] tweak moveCamera

---
 src/mol-canvas3d/controls/trackball.ts | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/mol-canvas3d/controls/trackball.ts b/src/mol-canvas3d/controls/trackball.ts
index fc9b7fce0..c6fda8183 100644
--- a/src/mol-canvas3d/controls/trackball.ts
+++ b/src/mol-canvas3d/controls/trackball.ts
@@ -503,8 +503,10 @@ namespace TrackballControls {
             Vec3.add(camera.position, camera.target, _eye);
             checkDistances();
 
-            if (lastUpdated > 0 && deltaT < 1000) {
-                moveCamera(deltaT);
+            if (lastUpdated > 0) {
+                // clamp the maximum step size at 15 frames to avoid too big jumps
+                // TODO: make this a parameter?
+                moveCamera(Math.min(deltaT, 15 * 1000 / 60));
             }
 
             Vec3.sub(_eye, camera.position, camera.target);
-- 
GitLab