\chapter{Export du relevé de position}
\label{chap:export}
\section{Relevé}
ROS permet, grâce à la commande \verb|rosbag| d'exporter les données publiées sur un topic ROS pour les jouer plus tard. Pour cela on peut utiliser la commande :

\begin{minted}{bash}
rosbag record <topic> -O record.bag
\end{minted}

où \verb|<topic>| est le topic à enregistrer.

Après avoir lancé \mintinline{bash}|roscore|, on enregistre la sortie dans un format que le script de l'annexe \ref{chap:test_filter} accepte.
\begin{minted}{bash}
rostopic echo <topic> | python3 parse_topic.py 
\end{minted}

Le script \verb|parse_topic.py| accepte plusieurs arguments.

\begin{minted}
Usage: parse_topic.py [OPTIONS]

Options:
  --output TEXT       Output file
  --time / --no-time  Add the number of seconds
  --field TEXT        YAML field to store
  --help              Show this message and exit.
\end{minted}

On peut alors, dans un autre terminal, jouer l'enregistrement avec la commande suivante.
\begin{minted}{bash}
rosbag play record.bag
\end{minted}

Enfin, on peut arrêter le script \mintinline{bash}|parse_topic.py| en pressant \verb|Ctrl + C|.

\section{Script \mintinline{bash}|parse_topic.py|}
\inputminted[frame=lines,linenos,breaklines=true]{python}{scripts/parse_topic.py}