gitignore: Updated
[simavr] / examples / shared / libc3 / src / c3lines.h
1 /*
2         c3lines.h
3
4         Copyright 2008-2012 Michel Pollet <buserror@gmail.com>
5
6         This file is part of simavr.
7
8         simavr is free software: you can redistribute it and/or modify
9         it under the terms of the GNU General Public License as published by
10         the Free Software Foundation, either version 3 of the License, or
11         (at your option) any later version.
12
13         simavr is distributed in the hope that it will be useful,
14         but WITHOUT ANY WARRANTY; without even the implied warranty of
15         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16         GNU General Public License for more details.
17
18         You should have received a copy of the GNU General Public License
19         along with simavr.  If not, see <http://www.gnu.org/licenses/>.
20  */
21
22
23 #ifndef __C3LINES_H___
24 #define __C3LINES_H___
25
26 #include "c3geometry.h"
27
28 /*
29  * Takes an array of points A,B and split it into 'fat' lines around
30  * lineWidth, generates an array of triangles and an array of corresponding
31  * texture cordinates. Can also do a projection at the same time
32  * TODO: Add array indexes
33  */
34 void
35 c3lines_prepare(
36                 c3vertex_p  vertices,           // points A,B pairs
37                 size_t          count,
38                 c3vertex_array_p v,                     // triangles
39                 c3tex_array_p tex,
40                 c3f lineWidth,
41                 c3mat4p m);
42
43 void
44 c3lines_init(
45                 c3geometry_p g,
46                 c3vertex_p  vertices,           // points A,B pairs
47                 size_t          count,
48                 c3f             lineWidth);
49
50 #endif /* __C3LINES_H___ */