From 204f9957b0596b0606b7aef9093f1d197e477ec1 Mon Sep 17 00:00:00 2001 From: Jason Short Date: Sat, 10 Mar 2012 12:42:22 -0800 Subject: [PATCH] ACM: Added force_new_altitude call to do immediate changes in altitude and no gradual changes. --- ArduCopter/navigation.pde | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/ArduCopter/navigation.pde b/ArduCopter/navigation.pde index f46baab66a..9c4b928d5e 100644 --- a/ArduCopter/navigation.pde +++ b/ArduCopter/navigation.pde @@ -347,16 +347,21 @@ static void clear_new_altitude() alt_change_flag = REACHED_ALT; } +static void force_new_altitude(int32_t _new_alt) +{ + next_WP.alt = _new_alt; + target_altitude = _new_alt; + alt_change_flag = REACHED_ALT; +} + static void set_new_altitude(int32_t _new_alt) { if(_new_alt == current_loc.alt){ - next_WP.alt = _new_alt; - target_altitude = _new_alt; - alt_change_flag = REACHED_ALT; + force_new_altitude(_new_alt); return; } - // just to be clear + // We start at the current location altitude and gradually change alt next_WP.alt = current_loc.alt; // for calculating the delta time