Provided by: libcaca-dev_0.99.beta19-2.1ubuntu1.20.04.2_amd64 bug

NAME

       caca_primitives - These functions provide routines for primitive drawing, such as lines,
       boxes, triangles and ellipses.

SYNOPSIS

   Modules
       libcaca canvas frame handling
           These functions provide high level routines for canvas frame insertion, removal,
           copying etc.

   Functions
       __extern int caca_draw_line (caca_canvas_t *, int, int, int, int, uint32_t)
           Draw a line on the canvas using the given character.
       __extern int caca_draw_polyline (caca_canvas_t *, int const x[], int const y[], int,
           uint32_t)
           Draw a polyline.
       __extern int caca_draw_thin_line (caca_canvas_t *, int, int, int, int)
           Draw a thin line on the canvas, using ASCII art.
       __extern int caca_draw_thin_polyline (caca_canvas_t *, int const x[], int const y[], int)
           Draw an ASCII art thin polyline.
       __extern int caca_draw_circle (caca_canvas_t *, int, int, int, uint32_t)
           Draw a circle on the canvas using the given character.
       __extern int caca_draw_ellipse (caca_canvas_t *, int, int, int, int, uint32_t)
           Draw an ellipse on the canvas using the given character.
       __extern int caca_draw_thin_ellipse (caca_canvas_t *, int, int, int, int)
           Draw a thin ellipse on the canvas.
       __extern int caca_fill_ellipse (caca_canvas_t *, int, int, int, int, uint32_t)
           Fill an ellipse on the canvas using the given character.
       __extern int caca_draw_box (caca_canvas_t *, int, int, int, int, uint32_t)
           Draw a box on the canvas using the given character.
       __extern int caca_draw_thin_box (caca_canvas_t *, int, int, int, int)
           Draw a thin box on the canvas.
       __extern int caca_draw_cp437_box (caca_canvas_t *, int, int, int, int)
           Draw a box on the canvas using CP437 characters.
       __extern int caca_fill_box (caca_canvas_t *, int, int, int, int, uint32_t)
           Fill a box on the canvas using the given character.
       __extern int caca_draw_triangle (caca_canvas_t *, int, int, int, int, int, int, uint32_t)
           Draw a triangle on the canvas using the given character.
       __extern int caca_draw_thin_triangle (caca_canvas_t *, int, int, int, int, int, int)
           Draw a thin triangle on the canvas.
       __extern int caca_fill_triangle (caca_canvas_t *, int, int, int, int, int, int, uint32_t)
           Fill a triangle on the canvas using the given character.
       __extern int caca_fill_triangle_textured (caca_canvas_t *cv, int coords[6], caca_canvas_t
           *tex, float uv[6])
           Fill a triangle on the canvas using an arbitrary-sized texture.

Detailed Description

Function Documentation

   __extern int caca_draw_line (caca_canvas_t * cv, int x1, int y1, int x2, int y2, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x1 X coordinate of the first point.
           y1 Y coordinate of the first point.
           x2 X coordinate of the second point.
           y2 Y coordinate of the second point.
           ch UTF-32 character to be used to draw the line.

       Returns
           This function always returns 0.

       Referenced by caca_draw_box(), caca_draw_triangle(), and caca_fill_ellipse().

   __extern int caca_draw_polyline (caca_canvas_t * cv, int const x[], int const y[], int n,
       uint32_t ch)
       Draw a polyline on the canvas using the given character and coordinate arrays. The first
       and last points are not connected, hence in order to draw a polygon you need to specify
       the starting point at the end of the list as well.

       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x Array of X coordinates. Must have n + 1 elements.
           y Array of Y coordinates. Must have n + 1 elements.
           n Number of lines to draw.
           ch UTF-32 character to be used to draw the lines.

       Returns
           This function always returns 0.

   __extern int caca_draw_thin_line (caca_canvas_t * cv, int x1, int y1, int x2, int y2)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x1 X coordinate of the first point.
           y1 Y coordinate of the first point.
           x2 X coordinate of the second point.
           y2 Y coordinate of the second point.

       Returns
           This function always returns 0.

       Referenced by caca_draw_thin_triangle().

   __extern int caca_draw_thin_polyline (caca_canvas_t * cv, int const x[], int const y[], int n)
       Draw a thin polyline on the canvas using the given coordinate arrays and with ASCII art.
       The first and last points are not connected, so in order to draw a polygon you need to
       specify the starting point at the end of the list as well.

       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x Array of X coordinates. Must have n + 1 elements.
           y Array of Y coordinates. Must have n + 1 elements.
           n Number of lines to draw.

       Returns
           This function always returns 0.

   __extern int caca_draw_circle (caca_canvas_t * cv, int x, int y, int r, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x Center X coordinate.
           y Center Y coordinate.
           r Circle radius.
           ch UTF-32 character to be used to draw the circle outline.

       Returns
           This function always returns 0.

   __extern int caca_draw_ellipse (caca_canvas_t * cv, int xo, int yo, int a, int b, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           xo Center X coordinate.
           yo Center Y coordinate.
           a Ellipse X radius.
           b Ellipse Y radius.
           ch UTF-32 character to be used to draw the ellipse outline.

       Returns
           This function always returns 0.

   __extern int caca_draw_thin_ellipse (caca_canvas_t * cv, int xo, int yo, int a, int b)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           xo Center X coordinate.
           yo Center Y coordinate.
           a Ellipse X radius.
           b Ellipse Y radius.

       Returns
           This function always returns 0.

   __extern int caca_fill_ellipse (caca_canvas_t * cv, int xo, int yo, int a, int b, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           xo Center X coordinate.
           yo Center Y coordinate.
           a Ellipse X radius.
           b Ellipse Y radius.
           ch UTF-32 character to be used to fill the ellipse.

       Returns
           This function always returns 0.

       References caca_draw_line().

   __extern int caca_draw_box (caca_canvas_t * cv, int x, int y, int w, int h, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x X coordinate of the upper-left corner of the box.
           y Y coordinate of the upper-left corner of the box.
           w Width of the box.
           h Height of the box.
           ch UTF-32 character to be used to draw the box.

       Returns
           This function always returns 0.

       References caca_draw_line().

   __extern int caca_draw_thin_box (caca_canvas_t * cv, int x, int y, int w, int h)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x X coordinate of the upper-left corner of the box.
           y Y coordinate of the upper-left corner of the box.
           w Width of the box.
           h Height of the box.

       Returns
           This function always returns 0.

   __extern int caca_draw_cp437_box (caca_canvas_t * cv, int x, int y, int w, int h)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x X coordinate of the upper-left corner of the box.
           y Y coordinate of the upper-left corner of the box.
           w Width of the box.
           h Height of the box.

       Returns
           This function always returns 0.

   __extern int caca_fill_box (caca_canvas_t * cv, int x, int y, int w, int h, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x X coordinate of the upper-left corner of the box.
           y Y coordinate of the upper-left corner of the box.
           w Width of the box.
           h Height of the box.
           ch UTF-32 character to be used to draw the box.

       Returns
           This function always returns 0.

       References caca_add_dirty_rect(), and caca_put_char().

       Referenced by caca_conio_clreol().

   __extern int caca_draw_triangle (caca_canvas_t * cv, int x1, int y1, int x2, int y2, int x3,
       int y3, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x1 X coordinate of the first point.
           y1 Y coordinate of the first point.
           x2 X coordinate of the second point.
           y2 Y coordinate of the second point.
           x3 X coordinate of the third point.
           y3 Y coordinate of the third point.
           ch UTF-32 character to be used to draw the triangle outline.

       Returns
           This function always returns 0.

       References caca_draw_line().

   __extern int caca_draw_thin_triangle (caca_canvas_t * cv, int x1, int y1, int x2, int y2, int
       x3, int y3)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x1 X coordinate of the first point.
           y1 Y coordinate of the first point.
           x2 X coordinate of the second point.
           y2 Y coordinate of the second point.
           x3 X coordinate of the third point.
           y3 Y coordinate of the third point.

       Returns
           This function always returns 0.

       References caca_draw_thin_line().

   __extern int caca_fill_triangle (caca_canvas_t * cv, int x1, int y1, int x2, int y2, int x3,
       int y3, uint32_t ch)
       This function never fails.

       Parameters
           cv The handle to the libcaca canvas.
           x1 X coordinate of the first point.
           y1 Y coordinate of the first point.
           x2 X coordinate of the second point.
           y2 Y coordinate of the second point.
           x3 X coordinate of the third point.
           y3 Y coordinate of the third point.
           ch UTF-32 character to be used to fill the triangle.

       Returns
           This function always returns 0.

       References caca_put_char().

   __extern int caca_fill_triangle_textured (caca_canvas_t * cv, int coords[6], caca_canvas_t *
       tex, float uv[6])
       This function fails if one or both the canvas are missing

       Parameters
           cv The handle to the libcaca canvas.
           coords The coordinates of the triangle (3{x,y})
           tex The handle of the canvas texture.
           uv The coordinates of the texture (3{u,v})

       Returns
           This function return 0 if ok, -1 if canvas or texture are missing.

Author

       Generated automatically by Doxygen for libcaca from the source code.