1 /*
2  * DSFML - The Simple and Fast Multimedia Library for D
3  *
4  * Copyright (c) 2013 - 2017 Jeremy DeHaan (dehaan.jeremiah@gmail.com)
5  *
6  * This software is provided 'as-is', without any express or implied warranty.
7  * In no event will the authors be held liable for any damages arising from the
8  * use of this software.
9  *
10  * Permission is granted to anyone to use this software for any purpose,
11  * including commercial applications, and to alter it and redistribute it
12  * freely, subject to the following restrictions:
13  *
14  * 1. The origin of this software must not be misrepresented; you must not claim
15  * that you wrote the original software. If you use this software in a product,
16  * an acknowledgment in the product documentation would be appreciated but is
17  * not required.
18  *
19  * 2. Altered source versions must be plainly marked as such, and must not be
20  * misrepresented as being the original software.
21  *
22  * 3. This notice may not be removed or altered from any source distribution
23  */
24 
25 /// The module containing the list of usable primitives for drawing.
26 module dsfml.graphics.primitivetype;
27 
28 /**
29  * Types of primitives that a $(VERTEXARRAY_LINK VertexArray) can render.
30  *
31  * Points and lines have no area, therefore their thickness will always be 1
32  * pixel, regarldess the current transform and view.
33  */
34 enum PrimitiveType
35 {
36     /// List of individual points.
37     Points,
38     /// List of individual lines.
39     Lines,
40     /// List of connected lines; a point uses the previous point to form a line.
41     LineStrip,
42     /// List of individual triangles.
43     Triangles,
44     /**
45      * List of connected triangles; a point uses the two previous points to form
46      * a triangle.
47      */
48     TriangleStrip,
49     /**
50      * List of connected triangles; a point uses the common center and the
51      * previous point to form a triangle.
52      */
53     TriangleFan,
54     /// List of individual quads.
55     Quads,
56 
57     /// Deprecated: List of individual triangles.
58     LinesStrip = LineStrip,
59     /// Deprecated: List of connected triangles.
60     TrianglesStrip = TriangleStrip,
61     /// Deprecated: List of connected triangles.
62     TrianglesFan   = TriangleFan
63 }