Reference

prim(3caca)

NAME

libcucul primitives drawing -

Functions

int cucul_draw_line (cucul_canvas_t *, int, int, int, int, unsigned long int)
Draw a line on the canvas using the given character. int cucul_draw_polyline (cucul_canvas_t *, int const x[], int const y[], int, unsigned long int)
Draw a polyline. int cucul_draw_thin_line (cucul_canvas_t *, int, int, int, int)
Draw a thin line on the canvas, using ASCII art. int cucul_draw_thin_polyline (cucul_canvas_t *, int const x[], int const y[], int)
Draw an ASCII art thin polyline. int cucul_draw_circle (cucul_canvas_t *, int, int, int, unsigned long int)
Draw a circle on the canvas using the given character. int cucul_draw_ellipse (cucul_canvas_t *, int, int, int, int, unsigned long int)
Draw an ellipse on the canvas using the given character. int cucul_draw_thin_ellipse (cucul_canvas_t *, int, int, int, int)
Draw a thin ellipse on the canvas. int cucul_fill_ellipse (cucul_canvas_t *, int, int, int, int, unsigned long int)
Fill an ellipse on the canvas using the given character. int cucul_draw_box (cucul_canvas_t *, int, int, int, int, unsigned long int)
Draw a box on the canvas using the given character. int cucul_draw_thin_box (cucul_canvas_t *, int, int, int, int)
Draw a thin box on the canvas. int cucul_draw_cp437_box (cucul_canvas_t *, int, int, int, int)
Draw a box on the canvas using CP437 characters. int cucul_fill_box (cucul_canvas_t *, int, int, int, int, unsigned long int)
Fill a box on the canvas using the given character. int cucul_draw_triangle (cucul_canvas_t *, int, int, int, int, int, int, unsigned long int)
Draw a triangle on the canvas using the given character. int cucul_draw_thin_triangle (cucul_canvas_t *, int, int, int, int, int, int)
Draw a thin triangle on the canvas. int cucul_fill_triangle (cucul_canvas_t *, int, int, int, int, int, int, unsigned long int)
Fill a triangle on the canvas using the given character.

Detailed Description

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

Function Documentation

int cucul_draw_line (cucul_canvas_t * cv, int x1, int y1, int x2, int y2, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_polyline (cucul_canvas_t * cv, int const x[], int const y[], int n, unsigned long int ch)

Draw a plyline 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 libcucul 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.

int cucul_draw_thin_line (cucul_canvas_t * cv, int x1, int y1, int x2, int y2)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_thin_polyline (cucul_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 libcucul 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.

int cucul_draw_circle (cucul_canvas_t * cv, int x, int y, int r, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_ellipse (cucul_canvas_t * cv, int xo, int yo, int a, int b, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_thin_ellipse (cucul_canvas_t * cv, int xo, int yo, int a, int b)

This function never fails.

Parameters:

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

Returns:

This function always returns 0.

int cucul_fill_ellipse (cucul_canvas_t * cv, int xo, int yo, int a, int b, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_box (cucul_canvas_t * cv, int x1, int y1, int x2, int y2, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul canvas.
x1 X coordinate of the upper-left corner of the box.
y1 Y coordinate of the upper-left corner of the box.
x2 X coordinate of the lower-right corner of the box.
y2 Y coordinate of the lower-right corner of the box.
ch UTF-32 character to be used to draw the box.

Returns:

This function always returns 0.

int cucul_draw_thin_box (cucul_canvas_t * cv, int x1, int y1, int x2, int y2)

This function never fails.

Parameters:

cv The handle to the libcucul canvas.
x1 X coordinate of the upper-left corner of the box.
y1 Y coordinate of the upper-left corner of the box.
x2 X coordinate of the lower-right corner of the box.
y2 Y coordinate of the lower-right corner of the box.

Returns:

This function always returns 0.

int cucul_draw_cp437_box (cucul_canvas_t * cv, int x1, int y1, int x2, int y2)

This function never fails.

Parameters:

cv The handle to the libcucul canvas.
x1 X coordinate of the upper-left corner of the box.
y1 Y coordinate of the upper-left corner of the box.
x2 X coordinate of the lower-right corner of the box.
y2 Y coordinate of the lower-right corner of the box.

Returns:

This function always returns 0.

int cucul_fill_box (cucul_canvas_t * cv, int x1, int y1, int x2, int y2, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul canvas.
x1 X coordinate of the upper-left corner of the box.
y1 Y coordinate of the upper-left corner of the box.
x2 X coordinate of the lower-right corner of the box.
y2 Y coordinate of the lower-right corner of the box.
ch UTF-32 character to be used to draw the box.

Returns:

This function always returns 0.

int cucul_draw_triangle (cucul_canvas_t * cv, int x1, int y1, int x2, int y2, int x3, int y3, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

int cucul_draw_thin_triangle (cucul_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 libcucul 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.

int cucul_fill_triangle (cucul_canvas_t * cv, int x1, int y1, int x2, int y2, int x3, int y3, unsigned long int ch)

This function never fails.

Parameters:

cv The handle to the libcucul 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.

History