Ignore:
Timestamp:
Apr 18, 2006, 5:11:25 PM (14 years ago)
Author:
Sam Hocevar
Message:
  • Renamed caca_t into caca_display_t.
  • Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/cucul/conic.c

    r810 r811  
    3030/** \brief Draw a circle on the canvas using the given character.
    3131 *
    32  *  \param c The handle to the libcucul canvas.
     32 *  \param cv The handle to the libcucul canvas.
    3333 *  \param x Center X coordinate.
    3434 *  \param y Center Y coordinate.
     
    3838 *  \return void
    3939 */
    40 void cucul_draw_circle(cucul_canvas_t *c, int x, int y, int r, char const *str)
     40void cucul_draw_circle(cucul_canvas_t *cv, int x, int y, int r, char const *str)
    4141{
    4242    int test, dx, dy;
     
    4646    for(test = 0, dx = 0, dy = r ; dx <= dy ; dx++)
    4747    {
    48         ellipsepoints(c, x, y, dx, dy, ch);
    49         ellipsepoints(c, x, y, dy, dx, ch);
     48        ellipsepoints(cv, x, y, dx, dy, ch);
     49        ellipsepoints(cv, x, y, dy, dx, ch);
    5050
    5151        test += test > 0 ? dx - dy-- : dx;
     
    5555/** \brief Fill an ellipse on the canvas using the given character.
    5656 *
    57  *  \param c The handle to the libcucul canvas.
     57 *  \param cv The handle to the libcucul canvas.
    5858 *  \param xo Center X coordinate.
    5959 *  \param yo Center Y coordinate.
     
    6464 *  \return void
    6565 */
    66 void cucul_fill_ellipse(cucul_canvas_t *c, int xo, int yo, int a, int b,
     66void cucul_fill_ellipse(cucul_canvas_t *cv, int xo, int yo, int a, int b,
    6767                        char const *str)
    6868{
     
    8181        {
    8282            d1 += b*b*(2*x*1) + a*a*(-2*y+2);
    83             cucul_draw_line(c, xo - x, yo - y, xo + x, yo - y, str);
    84             cucul_draw_line(c, xo - x, yo + y, xo + x, yo + y, str);
     83            cucul_draw_line(cv, xo - x, yo - y, xo + x, yo - y, str);
     84            cucul_draw_line(cv, xo - x, yo + y, xo + x, yo + y, str);
    8585            y--;
    8686        }
     
    8888    }
    8989
    90     cucul_draw_line(c, xo - x, yo - y, xo + x, yo - y, str);
    91     cucul_draw_line(c, xo - x, yo + y, xo + x, yo + y, str);
     90    cucul_draw_line(cv, xo - x, yo - y, xo + x, yo - y, str);
     91    cucul_draw_line(cv, xo - x, yo + y, xo + x, yo + y, str);
    9292
    9393    d2 = b*b*(x+0.5)*(x+0.5) + a*a*(y-1)*(y-1) - a*a*b*b;
     
    105105
    106106        y--;
    107         cucul_draw_line(c, xo - x, yo - y, xo + x, yo - y, str);
    108         cucul_draw_line(c, xo - x, yo + y, xo + x, yo + y, str);
     107        cucul_draw_line(cv, xo - x, yo - y, xo + x, yo - y, str);
     108        cucul_draw_line(cv, xo - x, yo + y, xo + x, yo + y, str);
    109109    }
    110110}
     
    112112/** \brief Draw an ellipse on the canvas using the given character.
    113113 *
    114  *  \param c The handle to the libcucul canvas.
     114 *  \param cv The handle to the libcucul canvas.
    115115 *  \param xo Center X coordinate.
    116116 *  \param yo Center Y coordinate.
     
    121121 *  \return void
    122122 */
    123 void cucul_draw_ellipse(cucul_canvas_t *c, int xo, int yo, int a, int b,
     123void cucul_draw_ellipse(cucul_canvas_t *cv, int xo, int yo, int a, int b,
    124124                        char const *str)
    125125{
     
    130130    uint32_t ch = _cucul_utf8_to_utf32(str);
    131131
    132     ellipsepoints(c, xo, yo, x, y, ch);
     132    ellipsepoints(cv, xo, yo, x, y, ch);
    133133
    134134    while(a*a*y - a*a/2 > b*b*(x+1))
     
    144144        }
    145145        x++;
    146         ellipsepoints(c, xo, yo, x, y, ch);
     146        ellipsepoints(cv, xo, yo, x, y, ch);
    147147    }
    148148
     
    161161
    162162        y--;
    163         ellipsepoints(c, xo, yo, x, y, ch);
     163        ellipsepoints(cv, xo, yo, x, y, ch);
    164164    }
    165165}
     
    167167/** \brief Draw a thin ellipse on the canvas.
    168168 *
    169  *  \param c The handle to the libcucul canvas.
     169 *  \param cv The handle to the libcucul canvas.
    170170 *  \param xo Center X coordinate.
    171171 *  \param yo Center Y coordinate.
     
    174174 *  \return void
    175175 */
    176 void cucul_draw_thin_ellipse(cucul_canvas_t *c, int xo, int yo, int a, int b)
     176void cucul_draw_thin_ellipse(cucul_canvas_t *cv, int xo, int yo, int a, int b)
    177177{
    178178    /* FIXME: this is not correct */
     
    182182    int d1 = b*b - (a*a*b) + (a*a/4);
    183183
    184     ellipsepoints(c, xo, yo, x, y, '-');
     184    ellipsepoints(cv, xo, yo, x, y, '-');
    185185
    186186    while(a*a*y - a*a/2 > b*b*(x+1))
     
    196196        }
    197197        x++;
    198         ellipsepoints(c, xo, yo, x, y, '-');
     198        ellipsepoints(cv, xo, yo, x, y, '-');
    199199    }
    200200
     
    213213
    214214        y--;
    215         ellipsepoints(c, xo, yo, x, y, '|');
    216     }
    217 }
    218 
    219 static void ellipsepoints(cucul_canvas_t *c, int xo, int yo, int x, int y,
     215        ellipsepoints(cv, xo, yo, x, y, '|');
     216    }
     217}
     218
     219static void ellipsepoints(cucul_canvas_t *cv, int xo, int yo, int x, int y,
    220220                          uint32_t ch)
    221221{
    222222    uint8_t b = 0;
    223223
    224     if(xo + x >= 0 && xo + x < (int)c->width)
     224    if(xo + x >= 0 && xo + x < (int)cv->width)
    225225        b |= 0x1;
    226     if(xo - x >= 0 && xo - x < (int)c->width)
     226    if(xo - x >= 0 && xo - x < (int)cv->width)
    227227        b |= 0x2;
    228     if(yo + y >= 0 && yo + y < (int)c->height)
     228    if(yo + y >= 0 && yo + y < (int)cv->height)
    229229        b |= 0x4;
    230     if(yo - y >= 0 && yo - y < (int)c->height)
     230    if(yo - y >= 0 && yo - y < (int)cv->height)
    231231        b |= 0x8;
    232232
    233233    if((b & (0x1|0x4)) == (0x1|0x4))
    234         _cucul_putchar32(c, xo + x, yo + y, ch);
     234        _cucul_putchar32(cv, xo + x, yo + y, ch);
    235235
    236236    if((b & (0x2|0x4)) == (0x2|0x4))
    237         _cucul_putchar32(c, xo - x, yo + y, ch);
     237        _cucul_putchar32(cv, xo - x, yo + y, ch);
    238238
    239239    if((b & (0x1|0x8)) == (0x1|0x8))
    240         _cucul_putchar32(c, xo + x, yo - y, ch);
     240        _cucul_putchar32(cv, xo + x, yo - y, ch);
    241241
    242242    if((b & (0x2|0x8)) == (0x2|0x8))
    243         _cucul_putchar32(c, xo - x, yo - y, ch);
    244 }
    245 
     243        _cucul_putchar32(cv, xo - x, yo - y, ch);
     244}
     245
Note: See TracChangeset for help on using the changeset viewer.