|
@@ -35,6 +35,7 @@ static void demo_dots(void); |
|
|
static void demo_lines(void); |
|
|
static void demo_lines(void); |
|
|
static void demo_thin_lines(void); |
|
|
static void demo_thin_lines(void); |
|
|
static void demo_circles(void); |
|
|
static void demo_circles(void); |
|
|
|
|
|
static void demo_ellipses(void); |
|
|
static void demo_triangles(void); |
|
|
static void demo_triangles(void); |
|
|
static void demo_outlined_triangles(void); |
|
|
static void demo_outlined_triangles(void); |
|
|
static void demo_sprites(void); |
|
|
static void demo_sprites(void); |
|
@@ -97,13 +98,17 @@ int main(int argc, char **argv) |
|
|
break; |
|
|
break; |
|
|
case '5': |
|
|
case '5': |
|
|
ee_clear(); |
|
|
ee_clear(); |
|
|
demo = demo_triangles; |
|
|
|
|
|
|
|
|
demo = demo_ellipses; |
|
|
break; |
|
|
break; |
|
|
case '6': |
|
|
case '6': |
|
|
ee_clear(); |
|
|
ee_clear(); |
|
|
demo = demo_outlined_triangles; |
|
|
|
|
|
|
|
|
demo = demo_triangles; |
|
|
break; |
|
|
break; |
|
|
case '7': |
|
|
case '7': |
|
|
|
|
|
ee_clear(); |
|
|
|
|
|
demo = demo_outlined_triangles; |
|
|
|
|
|
break; |
|
|
|
|
|
case '8': |
|
|
ee_clear(); |
|
|
ee_clear(); |
|
|
demo = demo_sprites; |
|
|
demo = demo_sprites; |
|
|
break; |
|
|
break; |
|
@@ -149,11 +154,13 @@ static void display_menu(void) |
|
|
ee_goto(4, 10); |
|
|
ee_goto(4, 10); |
|
|
ee_putstr("4: circles demo"); |
|
|
ee_putstr("4: circles demo"); |
|
|
ee_goto(4, 11); |
|
|
ee_goto(4, 11); |
|
|
ee_putstr("5: triangles demo"); |
|
|
|
|
|
|
|
|
ee_putstr("5: ellipses demo"); |
|
|
ee_goto(4, 12); |
|
|
ee_goto(4, 12); |
|
|
ee_putstr("6: outlined triangles demo"); |
|
|
|
|
|
|
|
|
ee_putstr("6: triangles demo"); |
|
|
ee_goto(4, 13); |
|
|
ee_goto(4, 13); |
|
|
ee_putstr("7: sprites demo"); |
|
|
|
|
|
|
|
|
ee_putstr("7: outlined triangles demo"); |
|
|
|
|
|
ee_goto(4, 14); |
|
|
|
|
|
ee_putstr("8: sprites demo"); |
|
|
|
|
|
|
|
|
ee_goto(4, yo - 2); |
|
|
ee_goto(4, yo - 2); |
|
|
ee_putstr("q: quit"); |
|
|
ee_putstr("q: quit"); |
|
@@ -362,6 +369,41 @@ static void demo_circles(void) |
|
|
ee_refresh(); |
|
|
ee_refresh(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
static void demo_ellipses(void) |
|
|
|
|
|
{ |
|
|
|
|
|
int w = ee_get_width(); |
|
|
|
|
|
int h = ee_get_height(); |
|
|
|
|
|
|
|
|
|
|
|
/* Draw circles */ |
|
|
|
|
|
if(force_clipping) |
|
|
|
|
|
{ |
|
|
|
|
|
ee_color(ee_rand(1, 10)); |
|
|
|
|
|
ee_draw_ellipse(ee_rand(- w, 2 * w), |
|
|
|
|
|
ee_rand(- h, 2 * h), |
|
|
|
|
|
ee_rand(0, w), |
|
|
|
|
|
ee_rand(0, h), |
|
|
|
|
|
'#'); |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
{ |
|
|
|
|
|
int x = ee_rand(0, w); |
|
|
|
|
|
int y = ee_rand(0, h); |
|
|
|
|
|
int a = ee_rand(0, w); |
|
|
|
|
|
int b = ee_rand(0, h); |
|
|
|
|
|
|
|
|
|
|
|
if(x - a < 0 || x + a >= w || y - b < 0 || y + b >= h) |
|
|
|
|
|
{ |
|
|
|
|
|
demo_ellipses(); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
ee_color(ee_rand(1, 10)); |
|
|
|
|
|
ee_draw_ellipse(x, y, a, b, '#'); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
ee_refresh(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
static void demo_triangles(void) |
|
|
static void demo_triangles(void) |
|
|
{ |
|
|
{ |
|
|
int w = ee_get_width(); |
|
|
int w = ee_get_width(); |
|
|