6 #include "renderwindow.h" 8 #include "../core/interaction.h" 10 #include "../render/renderer.h" 16 Eigen::Vector4f _bgcolor;
17 std::shared_ptr<UniformBufferBase> _uniform_buffer;
19 Eigen::Matrix4d _view_matrix;
20 Eigen::Matrix4d _projection_matrix;
21 QPoint _mouse_position;
22 bool _left_dragged =
false;
23 int _mouse_buttons = 0;
24 int _multi_sampling = 0;
25 std::mutex _action_mutex;
26 std::vector<std::function<void(const RenderWindowAsyncContext &)>>
28 std::string _action_tag;
29 std::weak_ptr<Object> _picked;
31 double _pick_depth = 1.0;
32 uint32_t _pick_id = 0;
35 void updateViewMatrix();
38 const std::string &tag =
"");
46 virtual void handleEvent(QEvent *event)
override;
47 virtual void paintHUD(QPainter *painter)
override;
49 virtual void composite(
int target)
override;
50 PROPERTY(Eigen::Vector3d, viewPosition, Eigen::Vector3d(3, 3, 3));
51 PROPERTY(Eigen::Vector3d, viewTarget, Eigen::Vector3d(0, 0, 0));