Post-traitement nmea/gps: filtrage des points, export kml/gpx

Description

Au début j'avais créé un outil de log et traitement directement pour Pocket PC (en VB.NET, ici: http://www.vbfrance.com/codes/GPS-RECUPERATION-POSITION-FICHIER-TRACE-EXPORT-KML-GPX_42310.aspx), puis finalement vu le nombre d'outils qui intègrent le NMEA en standard, je me suis finalement décidé de faire un outil de post-traitement.

Là aussi il existe des choses, mais là je peux faire exactement ce que je veux et ce dont j'ai besoin ;-)

Fonctions actuelles:
- Filtrage des points par temps: on ne conserve qu'un point toutes les n secondes
- Filtrage des points par distance: on ne conserve qu'un point tous les n mètres
- Gestion des points doubles selon une tolérance: les points proches ou confondus sont éliminés
- Export de points et lignes de tracé au format Google KML avec attributs complets plus calcul du temps écoulé et de la distance parcourue
- Export de points et lignes de tracé au format Google GPX
- Traitement multi-fichiers
- Calcul de distances entres points sur l'ellipsoïde WGS84 (formule de Vincenty)

A faire:
- Petit outil de visualisation simple avec Google Maps, y compris en local (pas besoin de Upload) - en JavaScript
- Géoréférencement de photos selon date/heure de prise de vue et d'enregistrement trace GPS (le plus proche)

Source / Exemple :


Voir zip.

Conclusion :


Ce code peut être réutilisé librement mais les notes de l'auteur/copyright doivent être conservées et un lien sur voter site vers ma page serait apprécié.
Les règles de l'OpenSource s'appliquent dans le sens que si vous apportez une modification/amélioration majeure je veux être tenu au courant et obtenir une copie du code. De même, si vous utilisez ce code dans un application commerciale, il n'y a aucun problème, mais je souhaite en être informé.

Cet outil est en cours de développement, le géoréférencement et l'export au format GIS Shape suivront, mais d'ici-là je suis intéressé par vos commentaires.

Le code est en principe assez propre et orienté classe, ce qui signifie qu'il est aisé de le réutiliser dans un autre contexte en supprimant le Form.
Ce code sera d'ailleurs bientôt utilisé comme base pour un géoservice en ligne gratuit fonctionnant sur Linux avec Mono.

Ce code est 100% de moi et ne requiert aucun autre composant que le .NET Framework 1.1 (ou+).
Comme à mon habitude et désolé pour ceux qui ne le comprennent pas, tous les noms des contrôles, variables et les ocmmentaires sont en anglais. par contre dans ce petit projet destiné à montrer le principe, je n'ai pas géré la traduction des textes et messages qui sont, eux, en français.

Mais si quelque chose n'est pas clair, utilisez les commentaires ci-dessous ou contactez-moi via mon site perso www.jray.ch

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.