diff --git a/modules/base/rendering/renderableplanet.cpp b/modules/base/rendering/renderableplanet.cpp index 7de310de60..eac65915f0 100644 --- a/modules/base/rendering/renderableplanet.cpp +++ b/modules/base/rendering/renderableplanet.cpp @@ -40,6 +40,9 @@ #include #include +#define _USE_MATH_DEFINES +#include + namespace { const std::string _loggerCat = "RenderablePlanet"; @@ -184,9 +187,9 @@ void RenderablePlanet::render(const RenderData& data) glm::mat4 transform = glm::mat4(1); //earth needs to be rotated for that to work. - glm::mat4 rot = glm::rotate(transform, 90.f, glm::vec3(1, 0, 0)); - glm::mat4 roty = glm::rotate(transform, 90.f, glm::vec3(0, -1, 0)); - glm::mat4 rotProp = glm::rotate(transform, static_cast(_rotation), glm::vec3(0, 1, 0)); + glm::mat4 rot = glm::rotate(transform, static_cast(M_PI_2), glm::vec3(1, 0, 0)); + glm::mat4 roty = glm::rotate(transform, static_cast(M_PI_2), glm::vec3(0, -1, 0)); + glm::mat4 rotProp = glm::rotate(transform, glm::radians(static_cast(_rotation)), glm::vec3(0, 1, 0)); for (int i = 0; i < 3; i++){ for (int j = 0; j < 3; j++){ diff --git a/modules/base/rendering/renderablesphere.cpp b/modules/base/rendering/renderablesphere.cpp index 8d9b372b0c..ba28d3d73d 100644 --- a/modules/base/rendering/renderablesphere.cpp +++ b/modules/base/rendering/renderablesphere.cpp @@ -33,6 +33,8 @@ #include +#define _USE_MATH_DEFINES +#include namespace { const std::string _loggerCat = "RenderableSphere"; @@ -149,7 +151,7 @@ void RenderableSphere::render(const RenderData& data) { glm::mat4 transform = glm::mat4(1.0); - transform = glm::rotate(transform, 90.f, glm::vec3(1, 0, 0)); + transform = glm::rotate(transform, static_cast(M_PI_2), glm::vec3(1, 0, 0)); // Activate shader diff --git a/modules/base/rendering/renderablesphericalgrid.cpp b/modules/base/rendering/renderablesphericalgrid.cpp index 3c1012f753..9e79ee29d8 100644 --- a/modules/base/rendering/renderablesphericalgrid.cpp +++ b/modules/base/rendering/renderablesphericalgrid.cpp @@ -110,7 +110,7 @@ RenderableSphericalGrid::RenderableSphericalGrid(const ghoul::Dictionary& dictio _varray[nr].tex[1] = t2; glm::vec4 tmp(x, y, z, 1); - glm::mat4 rot = glm::rotate(glm::mat4(1), 90.f, glm::vec3(1, 0, 0)); + glm::mat4 rot = glm::rotate(glm::mat4(1), static_cast(M_PI_2), glm::vec3(1, 0, 0)); tmp = _gridMatrix*rot*tmp; for (int i = 0; i < 3; i++){ diff --git a/modules/newhorizons/rendering/renderablemodelprojection.cpp b/modules/newhorizons/rendering/renderablemodelprojection.cpp index 21d74c9751..289a786d62 100644 --- a/modules/newhorizons/rendering/renderablemodelprojection.cpp +++ b/modules/newhorizons/rendering/renderablemodelprojection.cpp @@ -412,9 +412,9 @@ void RenderableModelProjection::attitudeParameters(double time) { _transform = glm::mat4(1); - glm::mat4 rotPropX = glm::rotate(_transform, static_cast(_rotationX), glm::vec3(1, 0, 0)); - glm::mat4 rotPropY = glm::rotate(_transform, static_cast(_rotationY), glm::vec3(0, 1, 0)); - glm::mat4 rotPropZ = glm::rotate(_transform, static_cast(_rotationZ), glm::vec3(0, 0, 1)); + glm::mat4 rotPropX = glm::rotate(_transform, glm::radians(static_cast(_rotationX)), glm::vec3(1, 0, 0)); + glm::mat4 rotPropY = glm::rotate(_transform, glm::radians(static_cast(_rotationY)), glm::vec3(0, 1, 0)); + glm::mat4 rotPropZ = glm::rotate(_transform, glm::radians(static_cast(_rotationZ)), glm::vec3(0, 0, 1)); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { diff --git a/modules/newhorizons/rendering/renderableplanetprojection.cpp b/modules/newhorizons/rendering/renderableplanetprojection.cpp index f5264d52d2..6fdf614c6d 100644 --- a/modules/newhorizons/rendering/renderableplanetprojection.cpp +++ b/modules/newhorizons/rendering/renderableplanetprojection.cpp @@ -419,14 +419,14 @@ glm::mat4 RenderablePlanetProjection::computeProjectorMatrix(const glm::vec3 loc void RenderablePlanetProjection::attitudeParameters(double time){ // precomputations for shader - _stateMatrix = SpiceManager::ref().positionTransformMatrix(_frame, _mainFrame, _time); + _stateMatrix = SpiceManager::ref().positionTransformMatrix(_frame, _mainFrame, time); _instrumentMatrix = SpiceManager::ref().positionTransformMatrix(_instrumentID, _mainFrame, time); _transform = glm::mat4(1); //90 deg rotation w.r.t spice req. - glm::mat4 rot = glm::rotate(_transform, 90.f, glm::vec3(1, 0, 0)); - glm::mat4 roty = glm::rotate(_transform, 90.f, glm::vec3(0, -1, 0)); - glm::mat4 rotProp = glm::rotate(_transform, static_cast(_rotation), glm::vec3(0, 1, 0)); + glm::mat4 rot = glm::rotate(_transform, static_cast(M_PI_2), glm::vec3(1, 0, 0)); + glm::mat4 roty = glm::rotate(_transform, static_cast(M_PI_2), glm::vec3(0, -1, 0)); + glm::mat4 rotProp = glm::rotate(_transform, static_cast(glm::radians(static_cast(_rotation))), glm::vec3(0, 1, 0)); for (int i = 0; i < 3; i++){ for (int j = 0; j < 3; j++){ diff --git a/src/interaction/interactionhandler.cpp b/src/interaction/interactionhandler.cpp index 889a05d0bd..0a032ffa2a 100644 --- a/src/interaction/interactionhandler.cpp +++ b/src/interaction/interactionhandler.cpp @@ -367,9 +367,9 @@ void InteractionHandler::orbit(const float &dx, const float &dy, const float &dz glm::vec3 cameraRight = glm::cross(_camera->viewDirection(), cameraUp); glm::mat4 transform; - transform = glm::rotate(dx * 10.f, cameraUp) * transform; - transform = glm::rotate(dy * 10.f, cameraRight) * transform; - transform = glm::rotate(dz * 10.f, _camera->viewDirection()) * transform; + transform = glm::rotate(glm::radians(dx * 100.f), cameraUp) * transform; + transform = glm::rotate(glm::radians(dy * 100.f), cameraRight) * transform; + transform = glm::rotate(glm::radians(dz * 100.f), _camera->viewDirection()) * transform; //get "old" focus position