Ignore:
Timestamp:
Nov 18, 2009, 12:25:58 PM (11 years ago)
Author:
Jean-Yves Lamoureux
Message:
  • Make caca_fill_triangle_textured use less arguments, examples/trifiller modified accordingly
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/examples/trifiller.c

    r3909 r3926  
    5050   
    5151   
    52     float square[4][2] = {
     52    float square[6][2] = {
    5353        {-SQUARE_SIZE, -SQUARE_SIZE},
    5454        { SQUARE_SIZE, -SQUARE_SIZE},
     
    5656        {-SQUARE_SIZE,  SQUARE_SIZE},
    5757    };
     58    float uv1[6] = {
     59        0, 0,
     60        1, 0,
     61        1, 1
     62    };
     63    float uv2[6] = {
     64        0, 0,
     65        1, 1,
     66        0, 1
     67    };
     68   
    5869   
    5970    float rotated[4][2];
     71    int coords1[6], coords2[6];
    6072   
    6173    /* Create displayed canvas */
     
    7587    }
    7688   
    77         /* Open window */
     89    /* Open window */
    7890    dp = caca_create_display(cv);
    7991    if(!dp)
     
    194206        for(p=0; p<4; p++)
    195207        {
    196                 rotated[p][0] = square[p][0] * cos(angle*M_PI/180.0f) - square[p][1] * sin(angle*M_PI/180.0f);
    197                 rotated[p][1] = square[p][0] * sin(angle*M_PI/180.0f) + square[p][1] * cos(angle*M_PI/180.0f);
     208            rotated[p][0] = square[p][0] * cos(angle*M_PI/180.0f) - square[p][1] * sin(angle*M_PI/180.0f);
     209            rotated[p][1] = square[p][0] * sin(angle*M_PI/180.0f) + square[p][1] * cos(angle*M_PI/180.0f);
    198210           
    199211            rotated[p][0] += ww/2 + px;
     
    203215        angle+=1.0f;
    204216       
     217       
     218        /* Reaarange coordinates to fit libcaca's format */
     219        coords1[0] = rotated[0][0]; coords1[1] = rotated[0][1];
     220        coords1[2] = rotated[1][0]; coords1[3] = rotated[1][1];
     221        coords1[4] = rotated[2][0]; coords1[5] = rotated[2][1];
     222       
     223        coords2[0] = rotated[0][0]; coords2[1] = rotated[0][1];
     224        coords2[2] = rotated[2][0]; coords2[3] = rotated[2][1];
     225        coords2[4] = rotated[3][0]; coords2[5] = rotated[3][1];
     226       
    205227        /* Display two triangles */
     228        caca_fill_triangle_textured(cv,      /* canvas */
     229                                    coords1, /* triangle coordinates */
     230                                    tex,     /* texture canvas */
     231                                    uv1);    /* texture coordinates */
    206232        caca_fill_triangle_textured(cv,
    207                                                 /* triangle screen coordinates */
    208                                     rotated[0][0], rotated[0][1],
    209                                                 rotated[1][0], rotated[1][1],
    210                                     rotated[2][0], rotated[2][1],
    211                                     /* texture coordinates */
    212                                                 0, 0,
    213                                     1, 0,
    214                                     1, 1,
    215                                     tex);
    216        
    217         caca_fill_triangle_textured(cv,
    218                                                 /* triangle screen coordinates */
    219                                     rotated[0][0], rotated[0][1],
    220                                                 rotated[2][0], rotated[2][1],
    221                                     rotated[3][0], rotated[3][1],
    222                                     /* texture coordinates */
    223                                                 0, 0,
    224                                     1, 1,
    225                                     0, 1,
    226                                     tex);
     233                                    coords2,
     234                                    tex,
     235                                    uv2);
    227236       
    228237        /* Refresh display and clear for next frame */
Note: See TracChangeset for help on using the changeset viewer.