[vtk-developers] Multi-touch support on Windows, MacOS, and VR

Andras Lasso lasso at queensu.ca
Mon Sep 24 15:22:29 EDT 2018


Hi all,

We are trying to improve multi-touch support in 3D Slicer and unfortunately it seems to be non-trivial how to do this in a way that accommodates all environments: Windows touchscreens, MacOS trackpads, and virtual reality controllers. We have functional prototypes for all these, working separately, but we would like to integrate all these consistently into VTK and/or in our application.

Problems/questions:


  1.  Multi-touch gestures behave quite differently in each environment. For example, pinch on touchpad does not have absolute position, but it has 2D position on touchscreen, and it has 3D position using VR controllers.

Could we create new states, such as VTKIS_PINCH_TRACKPAD / PINCH_TOUCH / PINCH_3D to clearly distinguish these?


  1.  Several multi-touch gestures may be active at the same time and some of them share some event properties (e.g., event position) cached in vtkRenderWindowInteractor. Last event position is corrupted if multiple gestures store their properties in the same variables.

Should we add more variables to store all event properties that may be changed at the same time? For example, add new variables for tap position and pinch position (similarly to how translation, rotation, scale are all stored separately).
Is there a reason why we send only the event ID and retrieve all event properties from vtkRenderWindowInteractor? Would it be possible to pass event properties along with event as callData?

Andras

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/vtk-developers/attachments/20180924/8001b695/attachment.html>


More information about the vtk-developers mailing list