From 3b226ba81a4fd5217dcc2004d30a82e97fddbf17 Mon Sep 17 00:00:00 2001 From: emersion Date: Wed, 4 Oct 2017 22:01:54 +0200 Subject: [PATCH] rootston: rotation by steps --- rootston/cursor.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rootston/cursor.c b/rootston/cursor.c index c26ca43a..aad6751e 100644 --- a/rootston/cursor.c +++ b/rootston/cursor.c @@ -1,3 +1,4 @@ +#define _XOPEN_SOURCE 500 #include #include #include @@ -114,6 +115,8 @@ void cursor_update_position(struct roots_input *input, uint32_t time) { int vx = input->cursor->x - ox, vy = input->cursor->y - oy; 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; } break;