#ifndef OFFSCREENVIEW_H_ #define OFFSCREENVIEW_H_ #include "OffscreenContext.h" #include #include #include class OffscreenView { public: OffscreenView(size_t width, size_t height); ~OffscreenView(); void setRenderer(class Renderer* r); void setCamera(const Eigen::Vector3d &pos, const Eigen::Vector3d ¢er); void initializeGL(); void resizeGL(int w, int h); void setupPerspective(); void setupOrtho(bool offset=false); void paintGL(); bool save(const char *filename); GLint shaderinfo[11]; OffscreenContext *ctx; private: Renderer *renderer; double w_h_ratio; Eigen::Vector3d object_rot; Eigen::Vector3d camera_eye; Eigen::Vector3d camera_center; bool orthomode; bool showaxes; bool showfaces; bool showedges; }; #endif