diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2018-03-10 18:06:43 +0100 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2018-03-10 18:35:13 +0100 |
commit | ae1913228833d10b66636f2ff4d2b7ecc70ef142 (patch) | |
tree | 0b2488fa1f57eb8b7c90dda2fb1cf07f363282e4 /logic/pipeline.hpp | |
parent | e4ecbfe821dd6826f272af4a9331a8a6318d2e1f (diff) |
logic/pipeline: immediately move to center with reltrans
Diffstat (limited to 'logic/pipeline.hpp')
-rw-r--r-- | logic/pipeline.hpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/logic/pipeline.hpp b/logic/pipeline.hpp index 82a339a3..7132a36b 100644 --- a/logic/pipeline.hpp +++ b/logic/pipeline.hpp @@ -40,7 +40,7 @@ using vec3_bool = Mat<bool, 6, 1>; class reltrans { - euler_t interp_pos, last_value; + euler_t interp_pos; Timer interp_timer; // this implements smooth transition into reltrans mode @@ -54,6 +54,8 @@ class reltrans public: reltrans(); + void on_center(); + warn_result_unused euler_t rotate(const rmat& rmat, const euler_t& in, vec3_bool disable) const; @@ -80,7 +82,7 @@ struct OTR_LOGIC_EXPORT bits void set(flags flag_, bool val_); void negate(flags flag_); - bool get(flags flag); + bool get(unsigned flag); bits(); }; @@ -130,7 +132,7 @@ private: Pose apply_center(Pose value) const; std::tuple<Pose, Pose, vec6_bool> get_selected_axis_value(const Pose& newpose) const; Pose maybe_apply_filter(const Pose& value) const; - Pose apply_reltrans(Pose value, vec6_bool disabled); + Pose apply_reltrans(Pose value, vec6_bool disabled, bool centerp); Pose apply_zero_pos(Pose value) const; // reminder: float exponent base is 2 |