1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
.TH "al_draw_polyline" "3" "" "Allegro reference manual" ""
.SH NAME
.PP
al_draw_polyline \- Allegro 5 API
.SH SYNOPSIS
.IP
.nf
\f[C]
#include\ <allegro5/allegro_primitives.h>
void\ al_draw_polyline(const\ float*\ vertices,\ int\ vertex_stride,
\ \ \ int\ vertex_count,\ int\ join_style,\ int\ cap_style,
\ \ \ ALLEGRO_COLOR\ color,\ float\ thickness,\ float\ miter_limit)
\f[]
.fi
.SH DESCRIPTION
.PP
Draw a series of line segments.
.IP \[bu] 2
vertices \- Interleaved array of (x, y) vertex coordinates
.IP \[bu] 2
vertex_stride \- the number of bytes between pairs of vertices (the
stride)
.IP \[bu] 2
vertex_count \- Number of vertices in the array
.IP \[bu] 2
join_style \- Member of ALLEGRO_LINE_JOIN(3) specifying how to render
the joins between line segments
.IP \[bu] 2
cap_style \- Member of ALLEGRO_LINE_CAP(3) specifying how to render the
end caps
.IP \[bu] 2
color \- Color of the line
.IP \[bu] 2
thickness \- Thickness of the line, pass \f[C]<=\ 0\f[] to draw hairline
lines
.IP \[bu] 2
miter_limit \- Parameter for miter join style
.PP
The stride is normally \f[C]2\ *\ sizeof(float)\f[] but may be more if
the vertex coordinates are in an array of some structure type, e.g.
.IP
.nf
\f[C]
struct\ VertexInfo\ {
\ \ \ float\ x;
\ \ \ float\ y;
\ \ \ int\ id;
};
void\ my_draw(struct\ VertexInfo\ verts[],\ int\ vertex_count,\ ALLEGRO_COLOR\ c)
{
\ \ \ al_draw_polyline((float\ *)verts,\ sizeof(VertexInfo),\ vertex_count,
\ \ \ \ \ \ ALLEGRO_LINE_JOIN_NONE,\ ALLEGRO_LINE_CAP_NONE,\ c,\ 1.0,\ 1.0);
}
\f[]
.fi
.PP
The stride may also be negative if the vertices are stored in reverse
order.
.SH SINCE
.PP
5.1.0
.SH SEE ALSO
.PP
al_draw_polygon(3), ALLEGRO_LINE_JOIN(3), ALLEGRO_LINE_CAP(3)
|