La molette verticale fonctionne. Voici ce que ça donne graphiquement:
Pour simuler le mouvement de rotation, j’ai eu recours à une astuce. Comme il faut au moins trois étapes d’animation pour suggérer la direction d’un mouvement, j’ai tracé un segment horizontal (une rainure) tous les trois points. En fonction du mouvement imprimé, je change l’ordonnée du premier segment horizontal tracé. Ainsi dans le code, on a ça:
animationGrooveDelta = (animationGrooveDelta + (int)pointsDelta) % kAnimationsSteps;
- animationGrooveDelta est le décalage de l’ordonnée du premier segment
- pointsDelta est la distance du glisser du doigt
- kAnimationsSteps vaut 3
L’illusion de mouvement est parfaite, mais je ne suis très satisfait du rendu.