From a714d9dea7ccb6d745a9859cf96a7f9ae7e97d7c Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Mon, 27 Feb 2017 07:35:58 +0100 Subject: logic/tracker: invert before applying camera angle --- logic/tracker.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/logic/tracker.cpp b/logic/tracker.cpp index 743c887d..2c052f08 100644 --- a/logic/tracker.cpp +++ b/logic/tracker.cpp @@ -229,6 +229,13 @@ void Tracker::logic() const euler_t rot = r2d * c_mult * rmat_to_euler(rotation); euler_t pos = euler_t(&value[TX]) - t_center; + // don't invert after t_compensate + // inverting here doesn't break centering + + for (int i = 0; i < 6; i++) + if (m(i).opts.invert) + value(i) = -value(i); + t_compensate(real_rotation.camera.t(), pos, pos, false, false, false); for (int i = 0; i < 3; i++) @@ -238,13 +245,6 @@ void Tracker::logic() } } - // don't invert after t_compensate - // inverting here doesn't break centering - - for (int i = 0; i < 6; i++) - if (m(i).opts.invert) - value(i) = -value(i); - logger.write_pose(value); // "corrected" - after various transformations to account for camera position nanp |= is_nan(value); -- cgit v1.2.3