logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

al_draw_soft_line - Allegro 5 API

Description

       Draws  a line using the software rasterizer and user supplied pixel functions.  For help in understanding
       what  these   functions   do,   see   the   implementation   of   the   various   shading   routines   in
       addons/primitives/line_soft.c.  The line is drawn top to bottom.

       Parameters:

       • v1, v2 - The two vertices of the line

       • state - A pointer to a user supplied struct, this struct will be passed to all the pixel functions

       • first - Called before drawing the first pixel of the line.  It is passed the coordinates of this pixel,
         as well as the two vertices above.  The passed vertices may have been altered by clipping.

       • step  -  Called once per pixel.  The second parameter is set to 1 if the step is a minor step, and 0 if
         this step is a major step.  Minor steps are taken only either in x or y directions.   Major  steps  are
         taken  in  both directions diagonally.  In all cases, the absolute value of the change in coordinate is
         at most 1 in either direction.

       • draw - Called once per pixel.  The function is expected to draw the pixel at the coordinates passed  to
         it.

Name

       al_draw_soft_line - Allegro 5 API

See Also

al_draw_line(3alleg5)

Allegro reference manual                                                              al_draw_soft_line(3alleg5)

Synopsis

              #include <allegro5/allegro_primitives.h>

              void al_draw_soft_line(ALLEGRO_VERTEX* v1, ALLEGRO_VERTEX* v2, uintptr_t state,
                 void (*first)(uintptr_t, int, int, ALLEGRO_VERTEX*, ALLEGRO_VERTEX*),
                 void (*step)(uintptr_t, int),
                 void (*draw)(uintptr_t, int, int))

See Also