gramods
Loading...
Searching...
No Matches
TextureWarpedView.hh
1
2#ifndef GRAMODS_GRAPHICS_TEXTUREWARPEDVIEW
3#define GRAMODS_GRAPHICS_TEXTUREWARPEDVIEW
4
5// Required before gmCore/OFactory.hh for some compilers
6#include <gmCore/io_eigen.hh>
7
8#include <gmGraphics/View.hh>
9#include <gmGraphics/TextureInterface.hh>
10
11BEGIN_NAMESPACE_GMGRAPHICS;
12
18 : public View {
19
20public:
21
23 virtual ~TextureWarpedView();
24
29 void renderFullPipeline(ViewSettings settings) override;
30
36 void traverse(Visitor *visitor) override;
37
43 void addView(std::shared_ptr<View>);
44
50 void setTexture(std::shared_ptr<TextureInterface> tex);
51
64 void setEdgeToEdge(bool on);
65
72 void setWarpScale(Eigen::Vector2f scale);
73
80 void setWarpOffset(Eigen::Vector2f offset);
81
82 GM_OFI_DECLARE;
83
84private:
85
86 struct Impl;
87 std::unique_ptr<Impl> _impl;
88};
89
90END_NAMESPACE_GMGRAPHICS;
91
92#endif
The TextureWarpedView uses a texture as 0-1 coordinates to warp the output from other views.
Definition TextureWarpedView.hh:18
The base of graphics View implementations.
Definition View.hh:13
The visitor of a design pattern for automatic traversal.
Definition Object.hh:75
Definition TextureWarpedView.cpp:21
Package of settings affecting the rendering.
Definition ViewBase.hh:30