You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

openglrenderdevice.h 912B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef OPENGLRENDERDEVICE_H
  2. #define OPENGLRENDERDEVICE_H
  3. #include "engine/abstractrenderdevice.h"
  4. class OpenGLRenderDevice : public AbstractRenderDevice
  5. {
  6. Q_OBJECT
  7. public:
  8. explicit OpenGLRenderDevice(QObject *parent = 0);
  9. virtual Vector3D get2DFrom3D(const Vector3D& pos);
  10. virtual Vector3D get3DFrom2D(int x, int y);
  11. signals:
  12. public slots:
  13. virtual void initialize(int fov, int width, int height);
  14. virtual void resize(int width, int height);
  15. virtual void preDraw();
  16. virtual void postDraw();
  17. virtual void drawVertex(const ColorVector3D& point);
  18. virtual void drawPoint(const ColorVector3D& point);
  19. virtual void drawLine(const ColorVector3D& begin, const ColorVector3D& end, double width = 1.0);
  20. virtual void drawPolygon(const QList<ColorVector3D>& points);
  21. private:
  22. int _width;
  23. int _height;
  24. int _fov;
  25. };
  26. #endif // OPENGLRENDERDEVICE_H