From: Simon Tatham Date: Sat, 1 May 2004 07:32:09 +0000 (+0000) Subject: The cube was being drawn slightly differently on the top and left X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=2206a1aa25f783759cdf2336310357c33823dc21;p=sgt-puzzles.git The cube was being drawn slightly differently on the top and left rows, because the coordinates were crossing one or other axis at that point and so the lower coordinate was being rounded up while the upper one was rounded down. Judicious use of floor() fixes it. [originally from svn r4179] --- diff --git a/cube.c b/cube.c index 9cb359e..e779068 100644 --- a/cube.c +++ b/cube.c @@ -1294,8 +1294,8 @@ void game_redraw(frontend *fe, game_drawstate *ds, game_state *oldstate, } for (j = 0; j < poly->order; j++) { - coords[j*2] = (int)(points[j*2] * GRID_SCALE) + ds->ox; - coords[j*2+1] = (int)(points[j*2+1] * GRID_SCALE) + ds->oy; + coords[j*2] = (int)floor(points[j*2] * GRID_SCALE) + ds->ox; + coords[j*2+1] = (int)floor(points[j*2+1] * GRID_SCALE) + ds->oy; } /*