diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2016-11-25 09:13:14 +0100 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2016-11-25 09:13:14 +0100 |
commit | 97f80ccc1fed421665ee49745e230a7fb63f226a (patch) | |
tree | 9de66fe34bab9a55d2f10ba5e6694167390d70c4 /logic | |
parent | 50d3b377880049aebfd69c4c6f956b0f8d5326dd (diff) |
Revert "logic, gui: remove relative translation disable axis"opentrack-2.3-rc99p15
This reverts commit 9fb8b48027ac8c03628955da2b186de88745e348.
Diffstat (limited to 'logic')
-rw-r--r-- | logic/main-settings.hpp | 10 | ||||
-rw-r--r-- | logic/tracker.cpp | 16 |
2 files changed, 20 insertions, 6 deletions
diff --git a/logic/main-settings.hpp b/logic/main-settings.hpp index ecb7cd5c..53c5fae1 100644 --- a/logic/main-settings.hpp +++ b/logic/main-settings.hpp @@ -67,9 +67,11 @@ struct main_settings { bundle b, b_map; axis_opts a_x, a_y, a_z, a_yaw, a_pitch, a_roll; - value<bool> tcomp_p, tcomp_disable_tz; + value<bool> tcomp_p, tcomp_disable_tx, tcomp_disable_ty, tcomp_disable_tz; + value<bool> tcomp_disable_src_yaw, tcomp_disable_src_pitch, tcomp_disable_src_roll; value<bool> tray_enabled, tray_start; value<int> camera_yaw, camera_pitch, camera_roll; + value<bool> use_camera_offset_from_centering; value<bool> center_at_startup; value<int> center_method; key_opts key_start_tracking, key_stop_tracking, key_toggle_tracking, key_restart_tracking; @@ -88,12 +90,18 @@ struct main_settings a_pitch(b, b_map, "pitch", Pitch), a_roll(b, b_map, "roll", Roll), tcomp_p(b, "compensate-translation", true), + tcomp_disable_tx(b, "compensate-translation-disable-x-axis", false), + tcomp_disable_ty(b, "compensate-translation-disable-y-axis", false), tcomp_disable_tz(b, "compensate-translation-disable-z-axis", false), + tcomp_disable_src_yaw(b, "compensate-translation-disable-source-yaw", false), + tcomp_disable_src_pitch(b, "compensate-translation-disable-source-pitch", false), + tcomp_disable_src_roll(b, "compensate-translation-disable-source-roll", false), tray_enabled(b, "use-system-tray", false), tray_start(b, "start-in-tray", false), camera_yaw(b, "camera-yaw", 0), camera_pitch(b, "camera-pitch", 0), camera_roll(b, "camera-roll", 0), + use_camera_offset_from_centering(b, "use-camera-offset-from-centering", false), center_at_startup(b, "center-at-startup", true), center_method(b, "centering-method", true), key_start_tracking(b, "start-tracking"), diff --git a/logic/tracker.cpp b/logic/tracker.cpp index 5733166a..a5892dd0 100644 --- a/logic/tracker.cpp +++ b/logic/tracker.cpp @@ -300,15 +300,21 @@ void Tracker::logic() if (s.tcomp_p && !get(f_tcomp_disabled)) { + const double tcomp_c[] = + { + double(!s.tcomp_disable_src_yaw), + double(!s.tcomp_disable_src_pitch), + double(!s.tcomp_disable_src_roll), + }; euler_t value_(value(TX), value(TY), value(TZ)); t_compensate(euler_to_rmat( - euler_t(value(Yaw) * d2r, - value(Pitch) * d2r, - value(Roll) * d2r)), + euler_t(value(Yaw) * d2r * tcomp_c[0], + value(Pitch) * d2r * tcomp_c[1], + value(Roll) * d2r * tcomp_c[2])), value_, value_, - false, - false, + s.tcomp_disable_tx, + s.tcomp_disable_ty, s.tcomp_disable_tz); if (is_nan(value_)) nanp = true; |