public static void changeVehicleMode( MavLinkDrone drone, VehicleMode newMode, ICommandListener listener) { if (drone == null) return; int mavType; switch (newMode.getDroneType()) { default: case Type.TYPE_COPTER: mavType = MAV_TYPE.MAV_TYPE_QUADROTOR; break; case Type.TYPE_PLANE: mavType = MAV_TYPE.MAV_TYPE_FIXED_WING; break; case Type.TYPE_ROVER: mavType = MAV_TYPE.MAV_TYPE_GROUND_ROVER; break; } drone.getState().changeFlightMode(ApmModes.getMode(newMode.getMode(), mavType), listener); }
public static CharSequence getFlightModeLabel(Context context, VehicleMode flightMode) { if (context == null || flightMode == null) return null; switch (flightMode) { case COPTER_LOITER: // FLY return context.getText(R.string.copter_loiter_label); case COPTER_ALT_HOLD: // FLY Manual return context.getText(R.string.copter_alt_hold_label); case COPTER_RTL: // Return Home return context.getText(R.string.copter_rtl_label); case COPTER_GUIDED: // Take off // return context.getText(R.string.copter_guided_label); return null; case COPTER_AUTOTUNE: // Auto-tune return context.getText(R.string.copter_auto_tune_label); case COPTER_POSHOLD: // Position Hold return context.getText(R.string.copter_pos_hold_label); case COPTER_AUTO: // Mission return context.getText(R.string.copter_auto_label); default: return flightMode.getLabel(); } }