mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-03-18 11:30:32 -05:00
First version to update OpenSpace to the new SGCT version
This commit is contained in:
@@ -72,8 +72,8 @@ glm::vec3 MouseController::mapToCamera(glm::vec3 trackballPos) {
|
||||
|
||||
void MouseController::trackballRotate(int x, int y) {
|
||||
// Normalize mouse coordinates to [0,1]
|
||||
float width = static_cast<float>(sgct::Engine::instance()->getActiveXResolution());
|
||||
float height = static_cast<float>(sgct::Engine::instance()->getActiveYResolution());
|
||||
float width = static_cast<float>(sgct::Engine::instance()->getCurrentXResolution());
|
||||
float height = static_cast<float>(sgct::Engine::instance()->getCurrentYResolution());
|
||||
glm::vec2 mousePos = glm::vec2((float)x / width, (float)y / height);
|
||||
|
||||
mousePos = glm::clamp(mousePos, -0.5, 1.5); // Ugly fix #1: Camera position becomes NaN on mouse values outside [-0.5, 1.5]
|
||||
@@ -167,7 +167,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
|
||||
if (action == MouseAction::Press){
|
||||
_leftMouseButtonDown = true;
|
||||
double mouseX, mouseY;
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
_previousCursorPos[MouseButtons::ButtonLeft] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
|
||||
}
|
||||
else if (action == MouseAction::Release) {
|
||||
@@ -179,7 +179,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
|
||||
if (action == MouseAction::Press){
|
||||
_rightMouseButtonDown = true;
|
||||
double mouseX, mouseY;
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
_previousCursorPos[MouseButtons::ButtonRight] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
|
||||
}
|
||||
else if (action == MouseAction::Release) {
|
||||
@@ -191,7 +191,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
|
||||
if (action == MouseAction::Press){
|
||||
_middleMouseButtonDown = true;
|
||||
double mouseX, mouseY;
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
|
||||
_previousCursorPos[MouseButtons::ButtonMiddle] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
|
||||
}
|
||||
else if (action == MouseAction::Release) {
|
||||
@@ -203,7 +203,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
|
||||
}
|
||||
|
||||
void OrbitalMouseController::move(float x, float y) {
|
||||
int winID = sgct::Engine::instance()->getActiveWindowPtr()->getId();
|
||||
int winID = sgct::Engine::instance()->getCurrentWindowPtr()->getId();
|
||||
double mouseX, mouseY;
|
||||
sgct::Engine::instance()->getMousePos(winID, &mouseX, &mouseY);
|
||||
_currentCursorPos = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
|
||||
|
||||
Reference in New Issue
Block a user