Files
OpenSpace/modules/skybrowser/include/screenspaceskytarget.h
2021-03-11 14:00:27 +01:00

39 lines
1.1 KiB
C++

#ifndef __OPENSPACE_MODULE_SKYBROWSER___SCREENSPACESKYTARGET___H__
#define __OPENSPACE_MODULE_SKYBROWSER___SCREENSPACESKYTARGET___H__
#include <openspace/rendering/screenspacerenderable.h>
#include <openspace/properties/scalar/floatproperty.h>
#include <ghoul/opengl/ghoul_gl.h>
#include <ghoul/opengl/texture.h>
namespace openspace::documentation { struct Documentation; }
namespace openspace {
class ScreenSpaceSkyTarget : public ScreenSpaceRenderable {
public:
ScreenSpaceSkyTarget(const ghoul::Dictionary& dictionary);
virtual ~ScreenSpaceSkyTarget() = default;
glm::vec2 getScreenSpacePosition();
void translate(glm::vec2 translation, glm::vec2 position);
glm::vec2 getScreenSpaceDimensions();
glm::vec2 getUpperRightCornerScreenSpace();
glm::vec2 getLowerLeftCornerScreenSpace();
bool coordIsInsideCornersScreenSpace(glm::vec2 coord);
void bindTexture() override;
private:
std::unique_ptr<ghoul::opengl::Texture> _texture;
};
}
#endif // __OPENSPACE_MODULE_SKYBROWSER___SCREENSPACESKYTARGET___H__