rootston: rotation by steps

This commit is contained in:
emersion 2017-10-04 22:01:54 +02:00
parent 09a6d863cf
commit 3b226ba81a
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48

View file

@ -1,3 +1,4 @@
#define _XOPEN_SOURCE 500
#include <stdbool.h> #include <stdbool.h>
#include <stdint.h> #include <stdint.h>
#include <string.h> #include <string.h>
@ -114,6 +115,8 @@ void cursor_update_position(struct roots_input *input, uint32_t time) {
int vx = input->cursor->x - ox, int vx = input->cursor->x - ox,
vy = input->cursor->y - oy; vy = input->cursor->y - oy;
float angle = atan2(vx*uy - vy*ux, vx*ux + vy*uy); float angle = atan2(vx*uy - vy*ux, vx*ux + vy*uy);
int steps = 12;
angle = round(angle/M_PI*steps) / (steps/M_PI);
view->rotation = input->view_rotation + angle; view->rotation = input->view_rotation + angle;
} }
break; break;