GLsceneBase.h
Go to the documentation of this file.
1 #ifndef __GL_SCENE_BASE_H__
2 #define __GL_SCENE_BASE_H__
3 
4 #include <string>
5 #include <vector>
6 #include <map>
7 #include <sys/time.h>
8 //Open CV header
9 #include <opencv2/core/core_c.h>
10 #include <opencv2/highgui/highgui_c.h>
11 #ifndef CV_VERSION_EPOCH
12  #if CV_VERSION_MAJOR > 3
13  #include <opencv2/videoio/videoio_c.h>
14  #endif
15 #endif
16 #include <SDL/SDL_thread.h>
17 #include <hrpCorba/ModelLoader.hh>
19 #include <hrpModel/World.h>
20 
21 class GLbody;
22 class GLcamera;
23 class LogManagerBase;
24 
25 #define DEFAULT_W 640
26 #define DEFAULT_H 480
27 #define SLIDER_AREA_HEIGHT 30
28 #define SLIDER_SIDE_MARGIN 10
29 
30 class GLsceneBase : virtual public hrp::World<hrp::ConstraintForceSolver>
31 {
32 public:
34  virtual ~GLsceneBase();
35  void save(const char *i_fname);
36  void capture(char *o_image);
37  void init();
38  void initLights();
39  void defaultLights(bool flag);
40  bool defaultLights();
41  void clear();
42  void requestClear();
43  void requestCapture(const char *i_fname);
44  void setCamera(GLcamera *i_camera);
45  void nextCamera();
46  void nextObject();
49  void setMessages(const std::vector<std::string>& i_msgs) { m_msgs = i_msgs;}
50  void showSlider(bool flag) { m_showSlider = flag; }
51  void setScreenSize(int w, int h);
53  void draw();
54  size_t drawObjects(bool showSensors=true);
55  void setView();
56  virtual void showStatus() {}
57  virtual void drawAdditionalLines() {}
58  virtual void updateScene()=0;
59  void showFloorGrid(bool flag);
60  bool showFloorGrid();
61  void showInfo(bool flag);
62  void addBody(hrp::BodyPtr i_body);
63  void maxEdgeLen(double i_len);
65  void setBackGroundColor(float rgb[3]);
67  void capture() { m_isCapturing = true; }
68 protected:
70 
71  void drawFloorGrid();
72  void drawInfo(double fps, size_t ntri);
73 
74  std::vector<std::string> m_msgs;
78  struct timeval m_lastDraw;
79  CvVideoWriter *m_videoWriter;
80  IplImage *m_cvImage;
82  SDL_sem *m_sem;
84  int m_request;
85  std::string m_fname;
86  double m_maxEdgeLen;
88  float m_bgColor[3];
90 };
91 
92 #endif
bool defaultLights()
void setCamera(GLcamera *i_camera)
Definition: GLsceneBase.cpp:60
bool m_showFloorGrid
Definition: GLsceneBase.h:83
GLcamera * m_default_camera
Definition: GLsceneBase.h:77
void initLights()
void drawFloorGrid()
virtual void updateScene()=0
GLsceneBase(LogManagerBase *i_log)
Definition: GLsceneBase.cpp:28
void setBackGroundColor(float rgb[3])
hrp::Vector3 center()
bool showFloorGrid()
double m_maxEdgeLen
Definition: GLsceneBase.h:86
std::vector< std::string > m_msgs
Definition: GLsceneBase.h:74
void nextCamera()
Definition: GLsceneBase.cpp:67
GLcamera * getDefaultCamera()
Definition: GLsceneBase.cpp:99
w
void toggleRobotState()
Definition: GLsceneBase.h:52
bool m_isCapturing
Definition: GLsceneBase.h:89
size_t drawObjects(bool showSensors=true)
Definition: GLbody.h:11
Eigen::Vector3d Vector3
float m_bgColor[3]
Definition: GLsceneBase.h:88
int m_targetObject
Definition: GLsceneBase.h:87
IplImage * m_cvImage
Definition: GLsceneBase.h:80
void addBody(hrp::BodyPtr i_body)
std::string m_fname
Definition: GLsceneBase.h:85
void showSlider(bool flag)
Definition: GLsceneBase.h:50
void save(const char *i_fname)
LogManagerBase * m_log
Definition: GLsceneBase.h:81
virtual void showStatus()
Definition: GLsceneBase.h:56
void setView()
bool m_showSlider
Definition: GLsceneBase.h:75
bool m_showingStatus
Definition: GLsceneBase.h:75
void requestCapture(const char *i_fname)
void setScreenSize(int w, int h)
Definition: GLsceneBase.cpp:55
SDL_sem * m_sem
Definition: GLsceneBase.h:82
hrp::BodyPtr targetObject()
bool m_showInfo
Definition: GLsceneBase.h:83
bool m_defaultLights
Definition: GLsceneBase.h:83
GLcamera * m_camera
Definition: GLsceneBase.h:77
void showInfo(bool flag)
void drawInfo(double fps, size_t ntri)
void maxEdgeLen(double i_len)
void setMessages(const std::vector< std::string > &i_msgs)
Definition: GLsceneBase.h:49
void capture()
Definition: GLsceneBase.h:67
void requestClear()
virtual void drawAdditionalLines()
Definition: GLsceneBase.h:57
png_infop png_uint_32 flag
virtual ~GLsceneBase()
Definition: GLsceneBase.cpp:48
CvVideoWriter * m_videoWriter
Definition: GLsceneBase.h:79
struct timeval m_lastDraw
Definition: GLsceneBase.h:78
void nextObject()
Definition: GLsceneBase.cpp:88
GLcamera * getCamera()
Definition: GLsceneBase.cpp:94


hrpsys
Author(s): AIST, Fumio Kanehiro
autogenerated on Sat Dec 17 2022 03:52:20