\title{QLandkarte}
\author{par Oliver Eichler, traduit par Sidonie Christophe}
\maketitle

Pour g\'erer et manipuler vos donn\'ees g\'eographiques personnelles, il existe beaucoup de bons outils open source comme GPSBabel\footnote{\url{http://www.gpsbabel.org}} et GPSMan\footnote{\url{http://www.ncc.up.pt/gpsman/}}, mais aucun n'utilise les cartes vecteurs propri\'etaires de Garmin. QLandkarte remplit cette fonction
et vous permet de visualiser ces cartes avec vos donn\'ees g\'eographiques depuis votre r\'ecepteur Garmin GPS.
QLandKarte utilise la librairie Qt v4.2 de la soci\'et\'e Troll Tech pour la programmation du GUI et la librairie Proj4 pour toutes les projections 2D.

\begin{figure}[h]
	\includegraphics[width=.8\columnwidth]{project_spotlight/eichler/shot1}
	\caption{\label{fig:QLandkarte-after-startup}QLandkarte apr\`es d\'emarrage}
\end{figure}



\section{Fonctionnalit\'es}
\begin{itemize}
	\item Mod\`eles support\'es :
	\begin{itemize}
		\item GPSMap 60CS, 60Cx, 60CSx
		\item eTrex Legend C
	\end{itemize}
	\item Import de collections de cartes (n\'ecessite des fichiers {*}.tdb, carte de base et "basemap and map tiles")
	\item Chargement de simple "map tiles" (Format {*}.img)
	\item Affichage de la carte et information sur l'objet proche du curseur
	\item Recherche de lieux via Google Maps
	\item Recherche de g\'eocaches via www.opencaching.de
	\item Cartes :
	\begin{itemize}
		\item Charger des cartes dans l'appareil
		\item T\'el\'echarger une s\'election de carte depuis l'appareil
		\item Charger / Sauvegarder une s\'election de carte depuis/vers des fichiers GPX
	\end{itemize}
	\item Points de cheminement :
	\begin{itemize}
		\item Charger/t\'el\'echarger des points de cheminement 
		\item Cr\'eer/d\'eplacer/\'editer des points de cheminement
		\item Charger/sauvegarder des points de cheminement depuis/vers des fichiers GPX
	\end{itemize}
	\item Trac\'es :
	\begin{itemize}
		\item T\'el\'echarger des trac\'es
		\item Visualiser l'information sur un trac\'e et le profil d'\'el\'evation
		\item Fusionner/d\'ecouper des trac\'es
		\item Purger/supprimer les points de trac\'e
		\item Charger/sauvegarder des trac\'es depuis/vers des fichiers GPX
	\end{itemize}
	\item Imprimer des cartes au format PDF ou papier
\end{itemize}

\section{Aper\c{c}u}


La Figure \ref{fig:QLandkarte-after-startup} pr\'esente QLankarte juste apr\`es le d\'emarrage de l'application. Le mode de fonctionnement et le type de curseur
peuvent \^etre modifi\'es au clavier ou \`a la souris dans le menu en haut \`a gauche. Les donn\'ees de l'utilisateur seront list\'ees dans les onglets en-dessous.

Il y a trois modes principaux: cartes, points de cheminement et trac\'es. Les touches utilis\'ees pour chacun de ces modes sont affich\'ees dans la Figure \ref{fig:Function-Modes}. Les touches F1 \`a F4 correspondent \`a des fonctions qui permettent de naviguer dans la carte. Un zoom dynamique peut \^etre r\'ealis\'e en utilisant la molette de la souris.

Chaque mode principal a son propre mode de dialogue dans l'onglet listant les donn\'ees disponibles de l'utilisateur. Les donn\'ees s\'electionn\'ees peuvent \^etre supprim\'ees avec la touche DEL
 en r\`egle g\'en\'erale.


\begin{figure}[h]
	\includegraphics[width=1\columnwidth]{project_spotlight/eichler/shot2_1-3}
	\caption{\label{fig:Function-Modes}Modes de fonctionnement}
\end{figure}

\subsection{Mode Carte}

Dans le 'Mode Carte' la collection courante de cartes peut \^etre s\'electionn\'ee dans la liste de choix dans le haut de l'onglet.
Pour charger les cartes dans l'appareil elles doivent \^etre s\'electionn\'ees en cliquant dessus dans l'espace de visualisation de la carte.
Les tuiles s\'electionn\'ees depuis l'ensemble des collections sont list\'ees dans l'arborescence.

\subsection{Mode Points de cheminement}

La Figure \ref{fig:Waypoint-Properties} pr\'esente la bo\^ite de dialogue concernant les propri\'et\'es du point de cheminement. A c\^ot\'e des champs habituels comme le symbole, le nom et la position, une distance de proximit\'e et un lien vers une page Web peuvent \^etre renseign\'es. Le lien est actif et ouvrira un navigateur.

\begin{figure}[h]
	\includegraphics[width=1\columnwidth]{project_spotlight/eichler/shot3}
	\caption{\label{fig:Waypoint-Properties}Propri\'et\'es du points de cheminement}
\end{figure}

Un double clic dans la liste des points de cheminement centrera la carte autour du point de cheminement s\'electionn\'e. Le mode 'D\'eplacer le point de cheminement' est assez complexe et n\'ecessite une attention particuli\`ere. Un clic gauche sur un point de cheminement va le coller au curseur. Une bande entre la position initiale et la position courante
mettra en \'evidence la distance entre les azimuts avant et arri\`ere. Regardez la Figure \ref{fig:Moving-a-Waypoint}. A ce moment, il est possible de changer de mode vers les fonctions de navigation, permettant \`a l'utilisateur de d\'eplacer sa carte jusqu'\`a la zone d\'esir\'ee. 
Une fois revenu au mode 'D\'eplacer le point de cheminement', celui-ci peut \^etre supprim\'e par un second clic gauche ou l'op\'eration se termine par un clic droit.

\begin{figure}[h]
	\includegraphics[width=1\columnwidth]{project_spotlight/eichler/shot4}
	\caption{\label{fig:Moving-a-Waypoint}D\'eplacer un Waypoint}
\end{figure}

\subsection{Mode Trac\'e}

Dans la Figure \ref{fig:Track-Info-View} QLandkarte fonctionne en 'Mode Trac\'e'. La visualisation des informations sur le trac\'e est activ\'ee. Un double clic dans la liste des trac\'es entrainera un zoom dans la vue 'carte' sur le trac\'e s\'electionn\'e. 

Le trac\'e est affich\'e sous forme d'un chapelet de points dans la carte, sous forme d'un profil d'\'el\'evation et sous forme d'une table. Les trois vues sont li\'ees ensemble, donc si un point du trac\'e est s\'electionn\'e dans l'une d'entre elles, il sera mis en surbrillance dans les autres aussi.
La visibilit\'e des points du trac\'e peut \^etre modifi\'ee avec la touche DEL dans la vue 'table'. Cela cr\'eera un ombrage sur les points dans la table et les emp\^echera d'\^etre ajout\'es au trac\'e.

Une s\'election multiple de trac\'es peut \^etre combin\'ee en une nouvelle s\'election. Le trac\'e s\'electionn\'e peut \^etre d\'ecoup\'e \`a chaque point. 
QLandkarte ne d\'etruira pas les donn\'ees originales. Cela cr\'eera deux nouveaux trac\'es comme copies de l'original.


\begin{figure}[h]
	\includegraphics[width=1\columnwidth]{project_spotlight/eichler/shot5}
	\caption{\label{fig:Track-Info-View}Vue Info du Trac\'e}
\end{figure}

\section{D\'eveloppement}

Le projet a atteint une \'etape satisfaisant les envies initiales de l'auteur. Cela ne veut pas n\'ecessairement dire que l'application est mature et compl\`ete.

Il manque encore \`a QLankarte la gestion d'un certain nombre de mod\`eles Garmin. Cela fournit d\'ej\`a un plug-in pour les mod\`eles pour permettre un d\'eveloppement d\'ecentralis\'e sur plusieurs d\'eveloppeurs. D\'evelopper un pilote est plus simple qu'il n'y para\^it. Il y a un petit tutorial sur la page d'accueil de QLandkarte.

Une t\^ache restante est de porter QLandkarte sur d'autres plateformes comme Windows ou Mac. Cela ne devrait pas \^etre un probl\`eme pour les plateformes little-endian. Cependant cela fera trop de travail pour les plateformes  big-endian vu que le format IMG est encod\'e dans un format little-endian et que le d\'ecodeur adresse directement les donn\'ees pour pr\'eserver les performances. C'est pourquoi un portage big-endian devrait compenser les p\'enalit\'es de performance sur la permutation des octets en optimisant le code du d\'ecodeur.

Les d\'eveloppeurs int\'eress\'es sont les bienvenus pour discuter de tout \c{c}a et envoyer leurs patches sur la liste de diffusion utilisateur de QLandkarte.\footnote{\url{http://sourceforge.net/mail/?group\_id=183501}}

\address{Dipl.-Ing. (FH) Oliver Eichler\\
  L'auteur a fait des \'etudes en Ing\'enierie Electronique\\
  \`a Regenburg et travaille depuis 1997\\
  comme freelance principalement "focused on digital subscriber lines".\\
\url{http://qlandkarte.sourceforge.net}\\
\email{oliver.eichler AT gmx.de}
}

%%% Local Variables:
%%% mode: latex
%%% TeX-master: main_document.tex
%%% End:

