MyGUI  3.2.1
MyGUI_VertexData.h
Go to the documentation of this file.
1 /*
2  * This source file is part of MyGUI. For the latest info, see http://mygui.info/
3  * Distributed under the MIT License
4  * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5  */
6 
7 #ifndef __MYGUI_VERTEX_DATA_H__
8 #define __MYGUI_VERTEX_DATA_H__
9 
10 #include "MyGUI_Prerequest.h"
11 #include "MyGUI_Types.h"
12 
13 namespace MyGUI
14 {
15 
16  struct Vertex
17  {
18  void set(float _x, float _y, float _z, float _u, float _v, uint32 _colour)
19  {
20  x = _x;
21  y = _y;
22  z = _z;
23  u = _u;
24  v = _v;
25  colour = _colour;
26  }
27 
28  float x, y, z;
30  float u, v;
31  };
32 
33  struct VertexQuad
34  {
35  enum Enum
36  {
37  CornerLT = 0,
38  CornerRT = 1,
39  CornerLB = 2,
40  CornerLB2 = 3,
41  CornerRT2 = 4,
42  CornerRB = 5,
44  };
45 
46  void set(float _l, float _t, float _r, float _b, float _z, float _u1, float _v1, float _u2, float _v2, uint32 _colour)
47  {
48  vertex[CornerLT].set(_l, _t, _z, _u1, _v1, _colour);
49  vertex[CornerRT].set(_r, _t, _z, _u2, _v1, _colour);
50  vertex[CornerLB].set(_l, _b, _z, _u1, _v2, _colour);
51  vertex[CornerRB].set(_r, _b, _z, _u2, _v2, _colour);
54  }
55 
56  void set(float _x1, float _y1, float _x2, float _y2, float _x3, float _y3, float _x4, float _y4, float _z, float _u1, float _v1, float _u2, float _v2, uint32 _colour)
57  {
58  vertex[CornerLT].set(_x1, _y1, _z, _u1, _v1, _colour);
59  vertex[CornerRT].set(_x2, _y2, _z, _u2, _v1, _colour);
60  vertex[CornerLB].set(_x4, _y4, _z, _u1, _v2, _colour);
61  vertex[CornerRB].set(_x3, _y3, _z, _u2, _v2, _colour);
64  }
65 
67  };
68 
69 } // namespace MyGUI
70 
71 #endif // __MYGUI_VERTEX_DATA_H__