00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef NL_TRIANGLE_EXT_H
00027 #define NL_TRIANGLE_EXT_H
00028
00029 #include "nel/misc/types_nl.h"
00030 #include "nel/misc/line.h"
00031 #include "nel/misc/triangle.h"
00032 #include "nel/misc/quad.h"
00033 #include "nel/misc/uv.h"
00034 #include "nel/misc/rgba.h"
00035
00036
00037 namespace NLMISC
00038 {
00039
00040
00041
00042
00043
00044
00045
00046
00047
00054 class CLineColor : public CLine
00055 {
00056 public:
00057 CRGBA Color0, Color1;
00058
00059 public:
00060
00062 CLineColor() {}
00063
00064 CLineColor &operator=(const CLine &line)
00065 {
00066 *((CLine*)this)= line;
00067 return *this;
00068 }
00069
00070 };
00071
00072
00073
00080 class CLineUV : public CLine
00081 {
00082 public:
00083 CUV Uv0, Uv1;
00084
00085 public:
00086
00088 CLineUV() {}
00089
00090 CLineUV &operator=(const CLine &line)
00091 {
00092 *((CLine*)this)= line;
00093 return *this;
00094 }
00095
00096 };
00097
00098
00099
00106 class CLineColorUV : public CLine
00107 {
00108 public:
00109 CRGBA Color0, Color1;
00110 CUV Uv0, Uv1;
00111
00112 public:
00113
00115 CLineColorUV() {}
00116
00117 CLineColorUV &operator=(const CLine &line)
00118 {
00119 *((CLine*)this)= line;
00120 return *this;
00121 }
00122
00123 };
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00141 class CTriangleColor : public CTriangle
00142 {
00143 public:
00144 CRGBA Color0, Color1, Color2;
00145
00146 public:
00147
00149 CTriangleColor() {}
00150
00151 CTriangleColor &operator=(const CTriangle &tri)
00152 {
00153 *((CTriangle*)this)= tri;
00154 return *this;
00155 }
00156
00157 };
00158
00159
00160
00167 class CTriangleUV : public CTriangle
00168 {
00169 public:
00170 CUV Uv0, Uv1, Uv2;
00171
00172 public:
00173
00175 CTriangleUV() {}
00176
00177 CTriangleUV &operator=(const CTriangle &tri)
00178 {
00179 *((CTriangle*)this)= tri;
00180 return *this;
00181 }
00182
00183 };
00184
00185
00186
00193 class CTriangleColorUV : public CTriangle
00194 {
00195 public:
00196 CRGBA Color0, Color1, Color2;
00197 CUV Uv0, Uv1, Uv2;
00198
00199 public:
00200
00202 CTriangleColorUV() {}
00203
00204 CTriangleColorUV &operator=(const CTriangle &tri)
00205 {
00206 *((CTriangle*)this)= tri;
00207 return *this;
00208 }
00209
00210 };
00211
00212
00213
00214
00215
00216
00217
00218
00219
00220
00227 class CQuadColor : public CQuad
00228 {
00229 public:
00230 CRGBA Color0, Color1, Color2, Color3;
00231
00232 public:
00233
00235 CQuadColor() {}
00236
00237 CQuadColor &operator=(const CQuad &quad)
00238 {
00239 *((CQuad*)this)= quad;
00240 return *this;
00241 }
00242
00243 };
00244
00245
00246
00253 class CQuadUV : public CQuad
00254 {
00255 public:
00256 CUV Uv0, Uv1, Uv2, Uv3;
00257
00258 public:
00259
00261 CQuadUV() {}
00262
00263 CQuadUV &operator=(const CQuad &quad)
00264 {
00265 *((CQuad*)this)= quad;
00266 return *this;
00267 }
00268
00269 };
00270
00271
00272
00279 class CQuadColorUV : public CQuad
00280 {
00281 public:
00282 CRGBA Color0, Color1, Color2, Color3;
00283 CUV Uv0, Uv1, Uv2, Uv3;
00284
00285 public:
00286
00288 CQuadColorUV() {}
00289
00290 CQuadColorUV &operator=(const CQuad &quad)
00291 {
00292 *((CQuad*)this)= quad;
00293 return *this;
00294 }
00295
00296 };
00297
00298
00299 }
00300
00301
00302 #endif // NL_TRIANGLE_EXT_H
00303
00304