gtsam_points
Loading...
Searching...
No Matches
camera_control.hpp
Go to the documentation of this file.
1#ifndef GLK_CAMERA_CONTROL_HPP
2#define GLK_CAMERA_CONTROL_HPP
3
4#include <memory>
5#include <iostream>
6#include <GL/gl3w.h>
7#include <Eigen/Core>
8#include <Eigen/Geometry>
9
10namespace guik {
11
13public:
14 virtual ~CameraControl() {}
15
16 virtual void reset_center() {}
17
18 virtual void lookat(const Eigen::Vector3f& pt) {}
19
20 virtual void mouse(const Eigen::Vector2f& p, int button, bool down) {}
21 virtual void drag(const Eigen::Vector2f& p, int button) {}
22 virtual void scroll(const Eigen::Vector2f& rel) {}
23
24 virtual void update() {}
25 virtual void updown(double p) {}
26 virtual void arrow(const Eigen::Vector2f& p) {}
27
28 virtual Eigen::Vector2f depth_range() const {
29 return Eigen::Vector2f(0.0f, 1.0f);
30 }
31
32 virtual Eigen::Matrix4f view_matrix() const = 0;
33
34 // io
35 virtual std::string name() const { return "CameraControl"; }
36 virtual void load(std::istream& ist) {}
37 virtual void save(std::ostream& ost) const {}
38};
39
40std::istream& operator>> (std::istream& ist, CameraControl& cam);
41std::ostream& operator<< (std::ostream& ost, const CameraControl& cam);
42
43} // namespace guik
44
45#endif
Definition camera_control.hpp:12
virtual Eigen::Vector2f depth_range() const
Definition camera_control.hpp:28
virtual void arrow(const Eigen::Vector2f &p)
Definition camera_control.hpp:26
virtual std::string name() const
Definition camera_control.hpp:35
virtual void update()
Definition camera_control.hpp:24
virtual void drag(const Eigen::Vector2f &p, int button)
Definition camera_control.hpp:21
virtual Eigen::Matrix4f view_matrix() const =0
virtual void load(std::istream &ist)
Definition camera_control.hpp:36
virtual void save(std::ostream &ost) const
Definition camera_control.hpp:37
virtual void reset_center()
Definition camera_control.hpp:16
virtual void lookat(const Eigen::Vector3f &pt)
Definition camera_control.hpp:18
virtual void scroll(const Eigen::Vector2f &rel)
Definition camera_control.hpp:22
virtual ~CameraControl()
Definition camera_control.hpp:14
virtual void updown(double p)
Definition camera_control.hpp:25
virtual void mouse(const Eigen::Vector2f &p, int button, bool down)
Definition camera_control.hpp:20
Definition drawable_container.hpp:9
std::ostream & operator<<(std::ostream &ost, const CameraControl &cam)
std::istream & operator>>(std::istream &ist, CameraControl &cam)