// Lua: u8g.drawDisc( self, x0, y0, rad, opt = U8G_DRAW_ALL ) static int lu8g_drawDisc( lua_State *L ) { lu8g_userdata_t *lud; if ((lud = get_lud( L )) == NULL) return 0; u8g_uint_t args[3]; lu8g_get_int_args( L, 2, 3, args ); u8g_uint_t opt = luaL_optinteger( L, (1+3) + 1, U8G_DRAW_ALL ); u8g_DrawDisc( LU8G, args[0], args[1], args[2], opt ); return 0; }
int main(void) { u8g_t u8g; uint8_t rad; u8g_Init(&u8g, &u8g_dev_sdl_1bit); u8g_FirstPage(&u8g); do { //u8g_SetFont(&u8g, u8g_font_unifont); //u8g_SetFont(&u8g, u8g_font_osb18r); for( rad = 2+3*2; rad < 30; rad += 3 ) { u8g_DrawEmpCirc(&u8g, 0, 35, rad, U8G_DRAW_UPPER_RIGHT); u8g_DrawCircle(&u8g, 0, 35+35, rad, U8G_DRAW_UPPER_RIGHT); u8g_DrawEmpCirc(&u8g, 0+31, 5, rad, U8G_DRAW_LOWER_RIGHT); u8g_DrawCircle(&u8g, 0+31, 5+35, rad, U8G_DRAW_LOWER_RIGHT); u8g_DrawEmpCirc(&u8g, 30+31*2, 5, rad, U8G_DRAW_LOWER_LEFT); u8g_DrawCircle(&u8g, 30+31*2, 5+35, rad, U8G_DRAW_LOWER_LEFT); u8g_DrawEmpCirc(&u8g, 0+31*4, 35, rad, U8G_DRAW_UPPER_LEFT); u8g_DrawCircle(&u8g, 0+31*4, 35+35, rad, U8G_DRAW_UPPER_LEFT); } } while( u8g_NextPage(&u8g) ); while( u8g_sdl_get_key() < 0 ) ; for( rad = 2+3*2; rad < 30; rad += 3 ) { u8g_FirstPage(&u8g); do { //u8g_SetFont(&u8g, u8g_font_unifont); //u8g_SetFont(&u8g, u8g_font_osb18r); u8g_DrawFillCirc(&u8g, 0, 35, rad, U8G_DRAW_UPPER_RIGHT); u8g_DrawDisc(&u8g, 0, 35+35, rad, U8G_DRAW_UPPER_RIGHT); u8g_DrawFillCirc(&u8g, 0+31, 5, rad, U8G_DRAW_LOWER_RIGHT); u8g_DrawDisc(&u8g, 0+31, 5+35, rad, U8G_DRAW_LOWER_RIGHT); u8g_DrawFillCirc(&u8g, 30+31*2, 5, rad, U8G_DRAW_LOWER_LEFT); u8g_DrawDisc(&u8g, 30+31*2, 5+35, rad, U8G_DRAW_LOWER_LEFT); u8g_DrawFillCirc(&u8g, 0+31*4, 35, rad, U8G_DRAW_UPPER_LEFT); u8g_DrawDisc(&u8g, 0+31*4, 35+35, rad, U8G_DRAW_UPPER_LEFT); } while( u8g_NextPage(&u8g) ); while( u8g_sdl_get_key() < 0 ) ; } return 0; }