qtopengl_eyebot.h
Go to the documentation of this file.
1 
7 #ifndef QTOPENGL_EYEBOT_H
8 #define QTOPENGL_EYEBOT_H
9 
10 namespace argos {
11  class CQTOpenGLEyeBot;
12  class CEyeBotEntity;
13 }
14 
15 
16 #ifdef __APPLE__
17 #include <gl.h>
18 #else
19 #include <GL/gl.h>
20 #endif
21 
22 namespace argos {
23 
25 
26  public:
27 
29 
30  virtual ~CQTOpenGLEyeBot();
31 
32  virtual void Draw(CEyeBotEntity& c_entity);
33 
34  protected:
35 
37  void SetLEDMaterial(GLfloat f_red, GLfloat f_green, GLfloat f_blue);
38 
40  void SetBodyMaterial();
41 
43  void MakeLeg();
44 
46  void DrawSideLED();
47 
49  void DrawBottomLED();
50 
52  void DrawBody();
53 
54  private:
55 
57  GLuint m_unLists;
58 
60  GLuint m_unLegList;
61 
63  GLuint m_unBodyList;
64 
66  GLuint m_unSideLEDList;
67 
69  GLuint m_unBottomLEDList;
70 
72  GLuint m_unVertices;
73 
74  /* Angle gap between two leds */
75  GLfloat m_fLEDAngleSlice;
76 
77  };
78 
79 }
80 
81 #endif
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
void SetBodyMaterial()
Sets a shiny gray material.
void DrawBody()
The eye-bot body.
void DrawBottomLED()
A single LED of the bottom ring.
void DrawSideLED()
A single LED of the side ring.
virtual void Draw(CEyeBotEntity &c_entity)
void MakeLeg()
An eye-bot leg.
void SetLEDMaterial(GLfloat f_red, GLfloat f_green, GLfloat f_blue)
Sets a colored LED material.