diff --git a/include/openspace/rendering/screenspacerenderable.h b/include/openspace/rendering/screenspacerenderable.h index 2bc0c3f3a5..dbd2985669 100644 --- a/include/openspace/rendering/screenspacerenderable.h +++ b/include/openspace/rendering/screenspacerenderable.h @@ -55,6 +55,8 @@ public: virtual void update() = 0; virtual bool isReady() const = 0; bool isEnabled() const; + glm::vec2 euclideanPosition() const {return _euclideanPosition.value();}; + glm::vec2 sphericalPosition() const {return _sphericalPosition.value();}; void move(glm::vec2 v){ if(_useFlatScreen.value()){ glm::vec2 pos = _euclideanPosition.value(); diff --git a/modules/base/shaders/screnspace_fs.glsl b/modules/base/shaders/screnspace_fs.glsl index 0b41959c46..e8f1401fae 100644 --- a/modules/base/shaders/screnspace_fs.glsl +++ b/modules/base/shaders/screnspace_fs.glsl @@ -41,11 +41,3 @@ Fragment getFragment(){ return frag; } - -/* out vec4 _out_color_; - -void main() { - Fragment f = getFragment(); - _out_color_ = f.color; - gl_FragDepth = f.depth; -} */ \ No newline at end of file diff --git a/tests/test_screenspaceimage.inl b/tests/test_screenspaceimage.inl index 88db3b3096..e719772da2 100644 --- a/tests/test_screenspaceimage.inl +++ b/tests/test_screenspaceimage.inl @@ -21,10 +21,14 @@ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * ****************************************************************************************/ +#define private public #include "gtest/gtest.h" + +// make private variables public, only for testing!! #include /* + * For each test the following is run: * Constructor() -> setUp() -> test -> tearDown() -> Deconstructor() */ @@ -52,9 +56,25 @@ protected: TEST_F(ScreenSpaceRenderableTest, initialize){ - bool isReady = _ssr.isReady(); ASSERT_TRUE(!isReady) << "ScreenSpaceImage is ready before initialize"; + + // cannot test initialize, crashes at createplane becasue of opengl functions. needs mocking + //_ssr.initialize(); + //isReady = _ssr.isReady(); + //ASSERT_TRUE(!isReady) << "ScreenSpaceImage is not ready after initialize"; + //_ssr.deinitialize(); + //isReady = _ssr.isReady(); + //ASSERT_TRUE(!isReady) << "ScreenSpaceImage is still ready after deinitialize"; +} + +TEST_F(ScreenSpaceRenderableTest, move){ + + glm::vec2 v1 = _ssr.sphericalPosition(); + glm::vec2 v2 = glm::vec2(2.0f, 5.0f); + _ssr.move(v2); + + ASSERT_EQ(_ssr.sphericalPosition(), v1 + v2); } }//namespace openspace