History

Revert "Enabling programmatic access to the IPD scale"

Brad Davis committed 11 years ago

Commit 8090bc81 parent 0afaf8421 files · +81 −281Browse files

Showing the changes to interface/src/scripting/HMDScriptingInterface.cpp (1 of 21 files). Show all

Unified · Split

interface/src/scripting/HMDScriptingInterface.cpp+22−28
@@ -10,56 +10,50 @@ · 9 unmodified lines
1010 //
1111
1212 #include "HMDScriptingInterface.h"
13−
14−#include <QtScript/QScriptContext>
15−
1613 #include "display-plugins/DisplayPlugin.h"
1714 #include <avatar/AvatarManager.h>
18−#include "Application.h"
1915
20−HMDScriptingInterface::HMDScriptingInterface() {
16+HMDScriptingInterface& HMDScriptingInterface::getInstance() {
17+ static HMDScriptingInterface sharedInstance;
18+ return sharedInstance;
19+}
20+
21+bool HMDScriptingInterface::getHUDLookAtPosition3D(glm::vec3& result) const {
22+ Camera* camera = Application::getInstance()->getCamera();
23+ glm::vec3 position = camera->getPosition();
24+ glm::quat orientation = camera->getOrientation();
25+
26+ glm::vec3 direction = orientation * glm::vec3(0.0f, 0.0f, -1.0f);
27+
28+ const auto& compositor = Application::getInstance()->getApplicationCompositor();
29+
30+ return compositor.calculateRayUICollisionPoint(position, direction, result);
2131 }
2232
2333 QScriptValue HMDScriptingInterface::getHUDLookAtPosition2D(QScriptContext* context, QScriptEngine* engine) {
34+
2435 glm::vec3 hudIntersection;
25− auto instance = DependencyManager::get<HMDScriptingInterface>();
26− if (instance->getHUDLookAtPosition3D(hudIntersection)) {
36+
37+ if ((&HMDScriptingInterface::getInstance())->getHUDLookAtPosition3D(hudIntersection)) {
2738 MyAvatar* myAvatar = DependencyManager::get<AvatarManager>()->getMyAvatar();
2839 glm::vec3 sphereCenter = myAvatar->getDefaultEyePosition();
2940 glm::vec3 direction = glm::inverse(myAvatar->getOrientation()) * (hudIntersection - sphereCenter);
3041 glm::quat rotation = ::rotationBetween(glm::vec3(0.0f, 0.0f, -1.0f), direction);
3142 glm::vec3 eulers = ::safeEulerAngles(rotation);
3243 return qScriptValueFromValue<glm::vec2>(engine, Application::getInstance()->getApplicationCompositor()
33− .sphericalToOverlay(glm::vec2(eulers.y, -eulers.x)));
44+ .sphericalToOverlay(glm::vec2(eulers.y, -eulers.x)));
3445 }
3546 return QScriptValue::NullValue;
3647 }
3748
3849 QScriptValue HMDScriptingInterface::getHUDLookAtPosition3D(QScriptContext* context, QScriptEngine* engine) {
3950 glm::vec3 result;
40− auto instance = DependencyManager::get<HMDScriptingInterface>();
41− if (instance->getHUDLookAtPosition3D(result)) {
51+ if ((&HMDScriptingInterface::getInstance())->getHUDLookAtPosition3D(result)) {
4252 return qScriptValueFromValue<glm::vec3>(engine, result);
4353 }
4454 return QScriptValue::NullValue;
4555 }
4656
47−void HMDScriptingInterface::toggleMagnifier() {
48− qApp->getApplicationCompositor().toggleMagnifier();
49−}
50−
51−bool HMDScriptingInterface::getMagnifier() const {
52− return Application::getInstance()->getApplicationCompositor().hasMagnifier();
53−}
54−
55−bool HMDScriptingInterface::getHUDLookAtPosition3D(glm::vec3& result) const {
56− Camera* camera = Application::getInstance()->getCamera();
57− glm::vec3 position = camera->getPosition();
58− glm::quat orientation = camera->getOrientation();
59−
60− glm::vec3 direction = orientation * glm::vec3(0.0f, 0.0f, -1.0f);
61−
62− const auto& compositor = Application::getInstance()->getApplicationCompositor();
63−
64− return compositor.calculateRayUICollisionPoint(position, direction, result);
57+float HMDScriptingInterface::getIPD() const {
58+ return Application::getInstance()->getActiveDisplayPlugin()->getIPD();
6559 }