diff options
author | Joel Bodenmann <joel.bodenmann@hevs.ch> | 2012-10-24 16:38:43 +0200 |
---|---|---|
committer | Joel Bodenmann <joel.bodenmann@hevs.ch> | 2012-10-24 16:38:43 +0200 |
commit | e0c8011553db0129039d7c8101e4906fa9677fcf (patch) | |
tree | 3241b154105416193048762f585863ed1e0be2cd /src/graph.c | |
parent | 6005051ac7a795cc48f6bf48ff9097dd7275ced3 (diff) | |
download | uGFX-e0c8011553db0129039d7c8101e4906fa9677fcf.tar.gz uGFX-e0c8011553db0129039d7c8101e4906fa9677fcf.tar.bz2 uGFX-e0c8011553db0129039d7c8101e4906fa9677fcf.zip |
graph grid drawing fix
Diffstat (limited to 'src/graph.c')
-rw-r--r-- | src/graph.c | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/src/graph.c b/src/graph.c index bd9c39c2..871e1e18 100644 --- a/src/graph.c +++ b/src/graph.c @@ -98,17 +98,31 @@ void graphDrawFourQuadrants(Graph *g) { origin.x = middle_x; origin.y = middle_y; - /* X Axis */ + /* X - Axis */ gdispDrawLine(g->x0, middle_y, g->x1, middle_y, g->color); - if(g->grid_size > 0) - for(i = 0; i <= (length_y / g->grid_size); i++) - _horizontalDotLine(g->x0, g->y0 + g->grid_size * i, g->x1, g->dot_space, g->color); - - /* Y Axis */ + + /* draw X - Grid ? */ + if(g->grid_size > 0) { + for(i = 1; i <= (middle_y / g->grid_size); i++) { + if(g->grid_size + g->grid_size * i <= middle_y) + _horizontalDotLine(g->x0, middle_y - g->grid_size * i, g->x1, g->dot_space, g->color); + if(g->grid_size * i <= middle_y) + _horizontalDotLine(g->x0, middle_y + g->grid_size * i, g->x1, g->dot_space, g->color); + } + } + + /* Y - Axis */ gdispDrawLine(middle_x, g->y0, middle_x, g->y1, g->color); - if(g->grid_size > 0) - for(i = 0; i <= (length_x / g->grid_size); i++) - _verticalDotLine(g->x0 + g->grid_size * i, g->y0, g->y1, g->dot_space, g->color); + + /* draw Y - Grid ? */ + if(g->grid_size > 0) { + for(i = 1; i <= (middle_x / g->grid_size); i++) { + if(g->grid_size + g->grid_size * i <= middle_x) + _verticalDotLine(middle_x - g->grid_size * i, g->y0, g->y1, g->dot_space, g->color); + if(g->grid_size * i <= middle_x) + _verticalDotLine(middle_x + g->grid_size * i, g->y0, g->y1, g->dot_space, g->color); + } + } } void graphDrawDot(coord_t x, coord_t y, uint16_t radius, color_t color) { |