Forum Flightgear France

Une communauté prend son envol

Vous n'êtes pas identifié(e).

Annonce

Futur nouvel inscrit, tu dois au préalable lire l'intégralité des 10 articles des règles, s'il te plaît. Tout nouveau compte qui ne respecte pas les règles sera supprimé par l'administration.

#1 6/04/2021 16:54:48

fdz
Membre
Lieu : Newbie
Inscription : 12/02/2021
Messages : 59
Site Web

Créer un parcours pour vol aux instruments

Bonjour,
débutant, j'ai longtemps cherché un moyen relativement simple pour créer un parcours en France, sans installer de logiciel complexe.
J'ai trouvé une méthode qui me convient et donc je la partage smile

Exemple de parcours entre Clermont et Toulouse:
gpsvisualizer_gpx_csv_on_map.jpg

Pour cela j'utilise un fichier GPX (clic-droit, enregistrer sous AIXM_X_IFR_FR.gpx) et le site web https://www.gpsvisualizer.com/ (clic-roulette souris pour ouvrir dans un nouvel onglet)

Dans un premier temps, aller sur https://www.gpsvisualizer.com/ et uploader le fichier GPX
La carte ci-dessus s'affiche (sans le tracé).
Symboles:
Rond vert: VOR-DME
Rond bleu: VOR
Rond gris: NDB
Triangle vert: point de report
Epingle rouge: présence d'un ILS sur l'aérodrôme

Notez la présence de l'outil Règle en bas à gauche pour calculer la distance entre 2 ou plusieurs points (clic-gauche pour ajouter un repère, clic-droit sur un repère pour le supprimer)
Survoler les points pour afficher leur nom.
Repérez les points de votre futur parcours.
Créer un nouveau fichier texte, nommer le: monparcours.gpx (par exemple)
Ouvrir le fichier AIXM_X_IFR_FR.gpx avec un éditeur de texte
Pour chaque point de votre parcours, rechercher la ligne correspondant au point dans le fichier AIXM_X_IFR_FR.gpx
Copier la ligne et coller la dans le fichier monparcours.gpx

Exemple de contenu du  fichier monparcours.gpx:
Attention, les deux premières lignes et la dernière sont obligatoires dans un fichier GPX.

<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.0" creator="notepad" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.topografix.com/GPX/1/0" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
<wpt lat="45.7859722222222" lon="3.16245"><name>CLERMONT FERRAND AUVERGNE [LFLC] 1092ft</name><ele>330</ele><sym>Airport</sym></wpt>
<wpt lat="45.7874722222222" lon="3.19219444444444"><name>CFA 114.35</name><ele>330</ele><sym>Navaid, Green</sym></wpt>
<wpt lat="45.4042777777778" lon="3.18238888888889"><name>VELIR</name><sym>Triangle, Green</sym></wpt>
<wpt lat="45.2763888888889" lon="3.17916666666667"><name>UXANA</name><sym>Triangle, Green</sym></wpt>
<wpt lat="45.1043611111111" lon="3.17480555555556"><name>MINPA</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.9570555555556" lon="3.16697222222222"><name>MOKDI</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.6083472222222" lon="3.16242777777778"><name>MEN 115.3</name><ele>1366</ele><sym>Navaid, Green</sym></wpt>
<wpt lat="44.5391666666667" lon="3.01666666666667"><name>REMDU</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.4836666666667" lon="2.90258333333333"><name>DITEV</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.4488888888889" lon="2.83333333333333"><name>ESPAL</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.3318472222222" lon="2.607175"><name>ROM 302</name><ele>639</ele><sym>Navaid, Black</sym></wpt>
<wpt lat="44.2097222222222" lon="2.33972222222222"><name>MAKIL</name><sym>Triangle, Green</sym></wpt>
<wpt lat="44.1233333333333" lon="2.16444444444444"><name>DEPES</name><sym>Triangle, Green</sym></wpt>
<wpt lat="43.9540444444445" lon="1.824175"><name>GAI 115.8</name><ele>296</ele><sym>Navaid, Blue</sym></wpt>
<wpt lat="43.6808333333333" lon="1.3098"><name>TOU 117.7</name><ele>173</ele><sym>Navaid, Green</sym></wpt>
</gpx>

Enregistrer le fichier monparcours.gpx
Aller sur  https://www.gpsvisualizer.com/
Dans le bandeau haut, cliquer sur CONVERT A FILE
Il s'agit ici de convertir le fichier GPX en CSV afin d'y ajouter quelques renseignements précieux comme par exemple l'altitude des points à partir de  modèles numériques de terrain (DEM).
gpsvisualizer_conv1_gpx_csv.jpg
1. sélectionner le format de sortie Plain Text
2. sélectionner le fichier monparcours.gpx
3. Cliquer sur CONVERT

Vous aurez alors un aperçu du fichier CSV final et la possibilité de le télécharger.
Télécharger le fichier CSV ainsi obtenu.
Nommer le: monparcours.csv
Il est nécessaire de faire une seconde conversion sur le fichier CSV obtenu avec les paramètres suivants:
gpsvisualizer_conv2_csv_csv.jpg
- Force text data to be this type: Trackpoints
- plain text delimiter: comma (virgule)
- output units: nautical
- Add estimated fields: heading
- Add estimated fields: distance
- (optionnel) Add DEM elevation data: ODP1

Le fichier CSV peut être ouvert et modifié avec un éditeur de texte.
Exemple après une double conversion du CSV, ajout de l'entête "desc", modif du name de LFLC, ajout du commentaire CLERMONT et d'un commentaire sur MEN 155.3 :

type,latitude,longitude,altitude (ft),course,distance (nmi),distance_interval (ft),sym,name,desc
T,45.785972222,3.162450000,1074.6,,0.000,,Airport,LFLC,CLERMONT FERRAND AUVERGNE - 1092ft
T,45.787472222,3.192194444,1050.2,85.9,1.252,7608.07,"Navaid, Green",CFA 114.35
T,45.404277778,3.182388889,2097.4,181.0,24.252,139752.02,"Triangle, Green",VELIR
T,45.276388889,3.179166667,2106.3,181.0,31.928,46639.15,"Triangle, Green",UXANA
T,45.104361111,3.174805556,3344.8,181.0,42.253,62734.46,"Triangle, Green",MINPA
T,44.957055556,3.166972222,2656.2,182.2,51.099,53746.89,"Triangle, Green",MOKDI
T,44.608347222,3.162427778,4533.1,180.5,72.023,127141.62,"Navaid, Green",MEN 115.3,Tourner à droite vers CAP 235
T,44.539166667,3.016666667,3566.3,236.4,79.527,45595.63,"Triangle, Green",REMDU
T,44.483666667,2.902583333,2275.9,235.7,85.450,35988.06,"Triangle, Green",DITEV
T,44.448888889,2.833333333,1866.8,234.9,89.085,22082.13,"Triangle, Green",ESPAL
T,44.331847222,2.607175000,2065.2,234.2,101.084,72910.33,"Navaid, Black",ROM 302
T,44.209722222,2.339722222,1374.7,237.6,114.745,83007.51,"Triangle, Green",MAKIL
T,44.123333333,2.164444444,1102.4,235.6,123.919,55742.93,"Triangle, Green",DEPES
T,43.954044444,1.824175000,965.9,235.4,141.809,108698.84,"Navaid, Blue",GAI 115.8
T,43.680833333,1.309800000,541.3,233.8,169.521,168380.16,"Navaid, Green",TOU 117.7

(*) distance_interval (ft) * 0.3028 / 1852 = distance (en NM) entre le point et le point précédent

Aperçu du fichier monparcours.csv sur gpsvisualizer:
gpsvisualizer_csv_on_map.jpg

Pour obtenir ce rendu,
Aller sur  https://www.gpsvisualizer.com/
Dans le bandeau haut, cliquer sur MAKE A MAP
gpsvisualizer_csv_to_map.jpg
Sélectionner les paramètres ci-dessus et cliquer sur Draw the map

- Le paramètre Colorize by: Distance permet d'obtenir la distance entre les points (dans les info-bulles), utile si non présente dans le CSV
- Le paramètre Track list: Names and descriptions permet d'afficher la case à cocher Tracks (utile pour masquer ou passer le calque en avant plan)
- Le paramètre  Draw tracks as waypoints: Yes, with no name permet d'afficher les points sur le tracé
- Le paramètre Force plain text to be this type: Trackpoints permet de relier les points par un segment
Sur la carte, en bas à gauche, cliquer sur l'icone Graph pour afficher la courbe d'élévations
Cliquer sur l'échelle du graphique pour changer les unités de mesure (dommage, il n'y a pas le NM)
Passer la souris sur la courbe pour afficher l'altitude d'un point
Sur la carte, cliquer sur un point pour afficher les informations relatives à ce point (info-bulle)
Il est possible d'ajouter des informations aux points dans le fichier monparcours.csv , après la dernière virgule.
Par exemple, il peut être intéressant d'ajouter la distance entre le point et le point précédent.
Ces informations apparaîtront dans l'info-bulle.

Il est possible d'afficher plusieurs fichiers sur la carte.
Pour cela, sur la page MAKE A MAP, reprendre les paramètres précédents et ajouter, par exemple, en File n° 2, le fichier AIXM_X_IFR_FR.gpx
Changer les paramètres selon besoin (ex: map type=OpenstreetMap+relief, option Colorize by=none)
Astuce: une fois la carte affichée, décocher et re-cocher la case "Tracks", cela permet de mettre les points du CSV en avant plan et ainsi de les rendre cliquables et donc d'afficher les info-bulles wink
Le calque de carte OpenAIP est également intéressant.

Pour aller plus loin,
Gpsvisualizer propose des outils de calculs dont le calcul de distance entre deux points.
Pour cela, dans le bandeau haut, cliquer sur Calculators
Dans le cadre Calculate the great circle distance between two points,
Reporter par exemple les coordonnées de LFLC et de CFA 114.35 se trouvant dans le fichier monparcours.csv
Calculer et éventuellement reporter la distance dans le fichier monparcours.csv, après la dernière virgule de la ligne CFA 114.35
Sauvegarder le csv. Cette distance apparaitra dans l'info-bulle de CFA 114.35

Enfin, petites cerises sur la gateau:
Il est possible d'uploader le fichier monparcours.gpx sur le site https://www.windy.com/ pour afficher la vitesse du vent ou le METAR d'un aéroport.
Pour uploader un fichier GPX, aller dans le menu "Burger" en haut à gauche, puis télécharger un fichier KML, GPX, etc
windy_gpx_metar.jpg

Enfin, avec SDVFR, si on place le fichier GPX dans le répertoire /Android/data/fr.skydreamsoft.sdvfr/files/perso/
alors on peut le charger sur la carte via le menu Navigation > Outils > Actions > Charger :
sdvfr_gpx.jpg
Rappel: pour envoyer la position avion de Flightgear vers SDVFR, ajouter le paramètre:
--generic=socket,out,1,255.255.255.255,49002,udp,foreflight-xgps
Et dans SDVFR, activer l'option Mode Simulateur

Voilà, ça parait un poil compliqué au premier abord mais finalement, après deux essais, ça roule smile
Ce tuto est également disponible en cliquant ici

Dernière modification par fdz (Hier 10:43:58)


Linux Mint Debian Edition 4 - Flightgear version 2020.4.0 compilé et Flightgear version 2020.3.6 appImage
HP ProBook 4530s - Intel Core i5-2430M - 8Go Ram - Carte graphique Intel HD 3000 et Radeon HD 7400M Series
- Non pilote -

Hors ligne

#2 6/04/2021 22:07:27

f-toro
Administrateur
Lieu : LFLA
Inscription : 16/12/2007
Messages : 2 831

Re : Créer un parcours pour vol aux instruments

C'est plus qu'un truc ou une astuce, c'est un vrai tuto, bien documenté !

C'est pourquoi je me suis permis de le déplacer pour qu'il ait plus d'impact.

Chapeau fdz !


André. anciennement taureau89_9
Debian Testing Amd64. CM Sabertooth 990FX, FX8350, 32 Go Ram DDR3 1866 Mhz, GTX 750ti 2Go, DD 2To Sata 3, THRUSTMASTER T.Flight StickX, FG 2020.4.0 Git.

Hors ligne

#3 7/04/2021 12:41:38

dany93
Administrateur
Lieu : Région Parisienne
Inscription : 5/07/2009
Messages : 3 556

Re : Créer un parcours pour vol aux instruments

Bonjour,

Impressionnant ! Bravo fdz smile

Dany


FG 2020.3.0 (et 2019.2.0), OSG 3.4.2, Linux Mint 18 (64b), Quad Q6600 (2.4 GHz), RAM 8Go DDR2, GEFORCE GTX 650 1GB
Boeing 787-8 (YASim, avec nickyivyca, aco)
Hangar avions Patten (PAF) Robin  DR400 JSBSim, Douglas DC3 JSBSim, CAP10B, Tecnam P92 JSBSim.

Hors ligne

#4 7/04/2021 17:24:59

fdz
Membre
Lieu : Newbie
Inscription : 12/02/2021
Messages : 59
Site Web

Re : Créer un parcours pour vol aux instruments

merci aux admins,
le plus impressionnant, c'est le gars (Adam Schneider) qui a créé le site gpsvisualizer smile
Faudrait que je lui demande pourquoi il faut faire une seconde passe sur le fichier CSV pour que les "estimated fields" soient bien pris en compte...


Linux Mint Debian Edition 4 - Flightgear version 2020.4.0 compilé et Flightgear version 2020.3.6 appImage
HP ProBook 4530s - Intel Core i5-2430M - 8Go Ram - Carte graphique Intel HD 3000 et Radeon HD 7400M Series
- Non pilote -

Hors ligne

#5 10/04/2021 10:58:47

fdz
Membre
Lieu : Newbie
Inscription : 12/02/2021
Messages : 59
Site Web

Re : Créer un parcours pour vol aux instruments

Bonjour,
je lui ai envoyé un mail auquel il a répondu:

Yes, it is a multi-step process because you are converting from waypoints to tracks and then back again.  (It is an unusual situation.)

Oui, il s'agit d'un processus en plusieurs étapes, car vous convertissez des waypoints en traces, puis inversement.  (C'est une situation inhabituelle).

Je ne suis que moyennement convaincu par la réponse mais ce n'est pas très grave.

Il faut donc simplement convertir le GPX en CSV, sans option particulière puis convertir le CSV obtenu en un autre CSV avec les options désirées (DEM, Bearing, Distance, Comma, Nautical et Trackpoints).

PS: ce qui pourrait être sympa c'est de pouvoir uploader le GPX de waypoints sur les carto multijoueurs http://mpmap04.flightgear.org/ et/ou http://geoffair.org/fg/map-test2/map-test.html smile

Dernière modification par fdz (Hier 10:23:23)


Linux Mint Debian Edition 4 - Flightgear version 2020.4.0 compilé et Flightgear version 2020.3.6 appImage
HP ProBook 4530s - Intel Core i5-2430M - 8Go Ram - Carte graphique Intel HD 3000 et Radeon HD 7400M Series
- Non pilote -

Hors ligne

#6 Hier 14:46:42

ctesc356
Membre
Inscription : 18/05/2010
Messages : 3 203

Re : Créer un parcours pour vol aux instruments

Bonjour,
merci pour le partage.
Un peu compliqué... si on pense qu'on a presque tout sous la main dans fg pour "pondre" une route, map, map in browser, routemanager etc.
Le + : le profil du terrain.

La première phase (recherche de points, copie des lignes de la bd) est assez fastidieuse.
Voilà un petit script python qui simplifie le boulot:

#!/usr/bin/python3

file = open('AIXM_X_IFR_FR.gpx', "r")
lines=file.readlines()    #lecture fichier bd
file.close()
route = open('route.txt', "r")
rte=route.readlines()   #lecture fichier route
route.close()
sortie=open('parcours.gpx', "w")    #raz fichier sortie
sortie=open('parcours.gpx', "a")
i=0
for wp in rte:
   wp=wp.rstrip('\n')   #suppression des lf
   for line in lines:
      line=line.rstrip('\n')
      if i < 2:
         sortie.write(line)  #ecriture des 2 lignes entête
         sortie.write("\n")
         i=i+1
      elif wp in line:
            print(line)
            sortie.write(line)    #ecriture lignes route
            sortie.write("\n")
            break
sortie.write("</gpx>")    #ligne fin
sortie.close()

- dans le dossier contenant "AIXM_X_IFR_FR.gpx" créer un fichier "route.txt"
- y écrire la route sous la forme: (ne pas entrer des wp "pin, red" (ILS) ça provoquerait des doublons)

LFLC
CFA 114.35
VELIR
UXANA
MINPA
MOKDI
MEN 115.3
REMDU
DITEV
ESPAL
ROM 302
MAKIL
DEPES
GAI 115.8
TOU 117.7

- lancer le script (dans ce même dossier) qui crée le fichier "parcours.gpx" utilisable pour la suite...

Sans garantie du gouvernement et bien-sûr perfectible... wink


Intel i5 3570 3.4Mhz, Nvidia GTX 660, 8Go Ram, Linux Mint/Debian testing

Hors ligne

#7 Hier 16:20:12

fdz
Membre
Lieu : Newbie
Inscription : 12/02/2021
Messages : 59
Site Web

Re : Créer un parcours pour vol aux instruments

Bonjour ctesc356,
script testé et approuvé smile

Je ne connais pas python mais à la lecture du script: "elif wp in line:" je comprends que l'instruction recherche la chaine "wp" dans la chaine "line", ce qu'on pourrait traduire par: si "line" contient "wp" alors...

Tu peux l'améliorer en encadrant la chaine cherchée par <name> et </name> , avant d'effectuer la recherche dans la ligne.
Exemple: wp = "<name>" + wp + "</name>"
Ainsi, si l'utilisateur, pour un VOR ou un NDB n'écrit pas la fréquence dans le fichier route.txt, le script ne trouvera pas la ligne.

Exemple: MEN 115.3
Si dans le fichier route.txt, l'utilisateur écrit simplement MEN alors le script retournera plusieurs lignes:
SOMEN
MEN 115.3
FAMEN
etc...

J'ai fait une petite une modif pour les Navaids, le script fonctionne même sans la fréquence ou avec les 3 premiers chiffres de la fréquence.
Et une modif dans le même genre concernant la recherche d'aéroports.
Cela permet de n'écrire que le code OACI de l'aéroport dans le fichier texte.

Enfin, puisque le fichier cible se nomme "parcours.csv" autant nommer le fichier route "parcours.txt" et le script "parcours.py" , histoire d'uniformiser les noms de fichiers smile

PS: as tu testé l'envoi de fichier GPX sur SDVFR et de suivre ton vol avec SDVFR ?


Script amélioré:

#!/usr/bin/python3

file = open('AIXM_X_IFR_FR.gpx', "r")
lines=file.readlines()    #lecture fichier bd
file.close()
route = open('parcours.txt', "r")
rte=route.readlines()   #lecture fichier route
route.close()
sortie=open('parcours.gpx', "w")    #raz fichier sortie
sortie=open('parcours.gpx', "a")
i=0
for wp in rte:
   wp=wp.rstrip('\n')   #suppression des lf
   
   ap = wp # pour la recherche des aeroports: "LFLC"
   sym="<sym>Airport"

   na = wp # pour la recherche des navaids : "MEN"
   if len(wp) == 3:
      na="<name>" + na + " "
      sym="<sym>Navaid"

   naf = wp # pour la recherche des navaids avec le debut de la frequence mais sans la décimale: "MEN 115"
   if len(wp) == 7:
      naf="<name>" + naf
      sym="<sym>Navaid"

   wp = "<name>" + wp + "</name>"  # pour une recherche à l'identique
   
   for line in lines:
      line=line.rstrip('\n')
      if i < 2:
         sortie.write(line)  #ecriture des 2 lignes entête
         sortie.write("\n")
         i=i+1
      elif wp in line or (ap in line and sym in line) or (na in line and sym in line) or (naf in line and sym in line)  :
            print(line)
            sortie.write(line)    #ecriture lignes route
            sortie.write("\n")
            break
sortie.write("</gpx>")    #ligne fin
sortie.close()

Dans ce fichier parcours.txt ,  j'ai remplacé CFA 114.35 par CFA 114 , et  GAI 115.8 par GAI. Le script trouve quand même ses petits.

LFLC
CFA 114
VELIR
UXANA
MINPA
MOKDI
MEN 115.3
REMDU
DITEV
ESPAL
ROM 302
MAKIL
DEPES
GAI
TOU 117.7

Dernière modification par fdz (Hier 18:36:50)


Linux Mint Debian Edition 4 - Flightgear version 2020.4.0 compilé et Flightgear version 2020.3.6 appImage
HP ProBook 4530s - Intel Core i5-2430M - 8Go Ram - Carte graphique Intel HD 3000 et Radeon HD 7400M Series
- Non pilote -

Hors ligne

#8 Hier 17:37:40

ctesc356
Membre
Inscription : 18/05/2010
Messages : 3 203

Re : Créer un parcours pour vol aux instruments

fdz a écrit :

PS: as tu testé l'envoi de fichier GPX sur SDVFR ?

Oui, ça fonctionne, j'ai la route et mon avion fg sur la tablette wink


Intel i5 3570 3.4Mhz, Nvidia GTX 660, 8Go Ram, Linux Mint/Debian testing

Hors ligne

#9 Hier 18:10:39

fdz
Membre
Lieu : Newbie
Inscription : 12/02/2021
Messages : 59
Site Web

Re : Créer un parcours pour vol aux instruments

j'ai amélioré le script, cette fois ci pour les navaids. Même sans la fréquence, ça fonctionne (en espérant qu'il n'y ait pas deux Navaids de même nom mais avec une fréquence différente).
Merci à toi pour la "trame" en python wink

Dans gpsvisualizer, ces options sont également assez pratiques wink
gpsvisualizer_wp_list_names.jpg
Waypoints labels: affiche les étiquettes de tous les points sur la carte
List of markers: affiche une liste contenant le nom des points. En sélectionnant un élément dans la liste, le focus se positionne directement sur le point.

Dernière modification par fdz (Hier 19:05:23)


Linux Mint Debian Edition 4 - Flightgear version 2020.4.0 compilé et Flightgear version 2020.3.6 appImage
HP ProBook 4530s - Intel Core i5-2430M - 8Go Ram - Carte graphique Intel HD 3000 et Radeon HD 7400M Series
- Non pilote -

Hors ligne

Pied de page des forums