Vegastrike 0.5.1 rc1  1.0
Original sources for Vegastrike Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ring.h
Go to the documentation of this file.
1 #ifndef _RING_H_
2 #define _RING_H_
3 #include "mesh.h"
4 #include "vegastrike.h"
5 class RingMesh : public Mesh
6 {
7  virtual Mesh * AllocNewMeshesEachInSizeofMeshSpace( int num )
8  {
9  return new RingMesh[num];
10  }
11  virtual void InitRing( float iradius,
12  float oradius,
13  int slices,
14  const char *texture,
15  const QVector &r,
16  const QVector &s,
17  int texwrapx = 1,
18  int texwrapy = 1,
19  const BLENDFUNC a = ONE,
20  const BLENDFUNC b = ZERO,
21  bool envMap = false,
22  float theta_min = 0.0,
23  float theta_max = 2 *M_PI,
24  FILTER mipmap = MIPMAP );
25 
26 public: RingMesh() : Mesh() {}
27  RingMesh( float iradius,
28  float oradius,
29  int slices,
30  const char *texture,
31  const QVector &r,
32  const QVector &s,
33  int texwrapx = 1,
34  int texwrapy = 1,
35  const BLENDFUNC a = SRCALPHA,
36  const BLENDFUNC b = INVSRCALPHA,
37  bool envMap = false,
38  float theta_min = 0.0,
39  float theta_max = 2 *M_PI,
40  FILTER mipmap = TRILINEAR )
41  {
42  InitRing( iradius, oradius, slices, texture, r, s, texwrapx, texwrapy, a, b, envMap, theta_min, theta_max, mipmap );
43  }
44  virtual float clipRadialSize() const;
45 };
46 #endif
47