diff --git a/src/modules/navigator/mission_feasibility_checker.cpp b/src/modules/navigator/mission_feasibility_checker.cpp index 4885891f88..20c0fcefb3 100644 --- a/src/modules/navigator/mission_feasibility_checker.cpp +++ b/src/modules/navigator/mission_feasibility_checker.cpp @@ -676,7 +676,6 @@ MissionFeasibilityChecker::checkDistancesBetweenWaypoints(const mission_s &missi double last_lat = (double)NAN; double last_lon = (double)NAN; - float last_alt = NAN; int last_cmd = 0; /* Go through all waypoints */ @@ -715,15 +714,16 @@ MissionFeasibilityChecker::checkDistancesBetweenWaypoints(const mission_s &missi /* do not allow waypoints that are literally on top of each other */ - } else if ((dist_between_waypoints < 0.05f && fabsf(last_alt - mission_item.altitude) < 0.05f) || - /* and do not allow condition gates that are at the same position as a navigation waypoint */ - (dist_between_waypoints < 0.05f && (mission_item.nav_cmd == NAV_CMD_CONDITION_GATE - || last_cmd == NAV_CMD_CONDITION_GATE))) { - /* waypoints are at the exact same position, - * which indicates an invalid mission and makes calculating - * the direction from one waypoint to another impossible. */ + /* and do not allow condition gates that are at the same position as a navigation waypoint */ + + } else if (dist_between_waypoints < 0.05f && + (mission_item.nav_cmd == NAV_CMD_CONDITION_GATE || last_cmd == NAV_CMD_CONDITION_GATE)) { + + /* Waypoints and gate are at the exact same position, which indicates an + * invalid mission and makes calculating the direction from one waypoint + * to another impossible. */ mavlink_log_critical(_navigator->get_mavlink_log_pub(), - "Distance between waypoints too close: %d meters", + "Distance between waypoint and gate too close: %d meters", (int)dist_between_waypoints); _navigator->get_mission_result()->warning = true; @@ -733,7 +733,6 @@ MissionFeasibilityChecker::checkDistancesBetweenWaypoints(const mission_s &missi last_lat = mission_item.lat; last_lon = mission_item.lon; - last_alt = mission_item.altitude; last_cmd = mission_item.nav_cmd; }