#9623 closed enhancement (fixed)
Trackpad pinch zoom rotates too much
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | moderate | Milestone: | |
Component: | UI | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
From: Oliver Clarke via ChimeraX-users <chimerax-users@…>
Subject: [chimerax-users] Trackpad rotation
Date: August 22, 2023 at 1:54:10 PM PDT
To: ChimeraX Users Help <chimerax-users@…>
Reply-To: Oliver Clarke
Hi,
The trackpad zoom/rotation settings in ChimeraX seem very different from “old” Chimera. Is there any way to replicate the behavior from Chimera?
Specifically, when I pinch to zoom in ChimeraX, I often find the view rotating a lot, unless I am very careful, which does not happen in Chimera. I have tried playing around with the trackpad twist sensitivity, but so far have been unable to find settings similar to the default in Chimera.
Cheers
Oli
Change History (4)
comment:1 by , 2 years ago
comment:2 by , 2 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed.
I reduced the default ChimeraX Trackpad twist speed from 6 to 2 which gives less rotational jitter when doing a pinch zoom.
comment:3 by , 2 years ago
From: Oliver Clarke via ChimeraX-users <chimerax-users@…>
Subject: [chimerax-users] Re: Trackpad rotation
Date: August 22, 2023 at 5:53:40 PM PDT
To: Tom Goddard
Cc: ChimeraX Users Help <chimerax-users@…>
Reply-To: Oliver Clarke
Hi Tom,
Yes I’ve tried playing with that, and I agree 2 is better, but I still think there is more to it than that.
Here is a comparison where I try to perform the same sequence of operations in Chimera and ChimeraX, on the same model - first pinch-zooming, then twist-rotating (this has the twist sensitivity set to 2 for ChimeraX).
In Chimera, both the pinch to zoom and the twist to zoom work pretty well independently - you do get some mixing but not much.
In ChimeraX, even with the modified settings, when I pinch to zoom, it rotates quite a bit, and when I twist to rotate, it ends up zooming quite a bit more than I would like. Is this how it looks for you? I tried to make the gestures I used as close to identical as I could although of course hard to make them exactly the same, but it gives a sense of what I’m seeing hopefully
Cheers
Oli
comment:4 by , 2 years ago
Fixed some more.
I compared the ChimeraX and Chimera trackpad pinch code and was surprised to see that the Chimera code had two tests that restrict when touches are interpreted as pinch zoom and twist. Chimera would only do a zoom or a twist while ChimeraX allowed both at the same time. I changed the ChimeraX code to follow the Chimera rules and indeed it is much better.
I compared pinch zoom in Chimera 1.17 to pinch zoom in ChimeraX daily build and agree that ChimeraX exhibits more accidental rotation and rotation jitter while pinch zooming. Testing showed that the twist sensitivity is a about 3 times higher in ChimeraX. By twist I mean you place two fingers on the trackpad and move them around a circle centered at the midpoint between the two fingers in the same direction. This causes a rotation perpendicular to the screen axis. The default ChimeraX sensitivity made a 90 degee twist produce about a 450 degree rotation, while in Chimera it produces only a 180 degree rotation. There is a "Trackpad twist speed" setting in the ChimeraX Settings panel under the Trackpad tab that has default value 6. By changing that setting to 2 I got a similar twist sensitivity to Chimera (about 180 degree rotation when fingers rotated 90 degrees). This gives much less rotational jitter when doing a pinch zoom, much closer to the Chimera behavior. Still other differences exist. The Chimera pinch zoom sensitivity seems twice what it is in ChimeraX. So it zooms very fast and that reduces the rotational jitter. But I think the slower ChimeraX zoom speed is better.
I think reducing the default ChimeraX Trackpad twist speed from 6 to 2 improves the usability. I think pinch zoom is used a lot more than twist.