vendredi 7 septembre 2012

Intégration des VAC Suisses dans Air Navigation Pro

Suite à mon billet au sujet de la sortie de l'AIP VFR Suisse en version électronique, en voici un dédié à l'intégration des cartes VAC et AREA de cet AIP dans Air Navigation Pro (ANP), version iOS.

VAC d'Yverdon ouverte dans Air Navigation Pro.


Je reste pas fan de la manière tronquée et un peu lourde dont s'ouvrent les documents PDF dans Air Navigation Pro, mais il peut être pratique d'y accéder sans devoir changer d'application.


Edit du 15.05.2013 : l'AIP Suisse est disponible de puis quelques mois sous forme d'abonnement annuel payant dans Air Navigation Pro. Le gros avantage de cet abonnement est que les cartes VAC sont gépréférencées et s'insèrent dans le fond de carte (OACI ou autre), tout en restant également consultables sous forme de PDF.


Insert de la VAC géoréférencée de Neuchâtel LSGN sur le fond de carte OACI.

Ce mode d'affichage est alors bien plus pratique à utiliser que les documents PDF et les mises à jour mensuelles sont gérées depuis Air Navigation.

La suite de ce billet s'adresse du coup à ceux qui reçoivent le CD distribué par Skyguide et qui renoncent aux cartes géoréférencées proposées par Xample, l'éditeur d'Air Navigation.


Pour les utilisateurs de PC.


Voici donc une nouvelle version de mon batch file qui, comme précédemment, transfère l'intégralité de l'AIP VFR Suisse sur mon disque dur (en réalité ma Dropbox), dans des répertoires correspondant aux chapitres de la version papier à laquelle je suis habitué. Ce qui est nouveau, c'est que ce script crée maintenant également dans un répertoire dédié de mon disque dur une arborescence contenant les cartes VAC et AREA de l'AIP Suisse, formatées pour Air Nav Pro.

Ensuite, lorsque je veux mettre à jour mon iPad, je recopie simplement cette arborescence dans le répertoire Documents\Airport charts d'Air Navigation Pro par l'intermédiaire du serveur WebDav (voir le manuel d'ANP pour établir la connexion). Enfin, je presse sur la touche qui lui fait recréer la table d'index.

Ne pas oublier de recréer la table d'index après la mise à jour.

Cette façon de procéder relève d'un choix personnel : ainsi je mets dorénavant à jour mon AIP directement dans ma Dropbox lorsque je reçois le CD - l'entier de l'AIP m'est alors disponible depuis n'importe quel ordinateur connecté au web - et je mets à jour mon iPad séparément, quand cela m'arrange. Libre à vous toutefois de faire pointer votre routine directement dans le répertoire d'ANP de votre iPad par l'intermédiaire du serveur WebDav, sans passer par le disque dur ou la Dropbox. Attention toutefois : les fonctions copy et xcopy de DOS peuvent poser problème pour copier vers un serveur WebDAV, il peut alors être judicieux d'utiliser plutôt une fonction comme Robocopy.

De même, j'ai choisi de ne pas recopier les ADINFO, puisque je reprends déjà l'intégralité de l'AIP VFR dans ma tablette (dans l'application GoodReader), mais il est très facile de compléter la routine de sorte de les avoir aussi dans ANP.

VAC d'Yverdon disponible en cliquant sur l'aérodrome.

Le batch file est directement disponible ici depuis ma Dropbox, à sauvegarder où vous voulez. Voici également le fichier ICAO_code_list.txt, à recopier dans le répertoire de destination de votre AIP (ici E:\AIP_Suisse).

Pour ceux qui préfèrent générer le batch file eux-mêmes, le code figure ci-dessous. J'indique en gras dans le code les adjonctions se rapportant à Air Navigation Pro.

LAUNCH_AIP_UPDATE.bat

(DEBUT DU CODE A RECOPIER CI-DESSOUS)


@echo off

rem *****************************
rem faites vos modifications ici
rem
set cdrom="g:"
set target="E:\AIP_Suisse"
set targetanp="E:\AirNavPro"
rem *****************************

for /f "delims=" %%a in ('dir "%cdrom%\eVFRM\" /ad /b') do set "update=%%a"
echo Update release is "%update%"
echo.

rem ***************************
rem folders tree check/creation
rem ***************************

if exist "%target%\AGA" (
rem echo OK, AGA folder exists.
FOR %%A IN (%target%\AGA\*.*) DO DEL %%A
) else (
MD "%target%\AGA"
echo AGA folder created
)
if exist "%target%\AMDT" (
rem echo OK, AMDT folder exists.
FOR %%A IN (%target%\AMDT\*.*) DO DEL %%A
) else (
MD "%target%\AMDT"
echo AMDT folder created
)
if exist "%target%\COM" (
rem echo OK, COM folder exists.
FOR %%A IN (%target%\COM\*.*) DO DEL %%A
) else (
MD "%target%\COM"
echo COM folder created
)
if exist "%target%\COR" (
rem echo OK, COR folder exists.
FOR %%A IN (%target%\COR\*.*) DO DEL %%A
) else (
MD "%target%\COR"
echo COR folder created
)
if exist "%target%\GEN" (
rem echo OK, GEN folder exists.
FOR %%A IN (%target%\GEN\*.*) DO DEL %%A
) else (
MD "%target%\GEN"
echo GEN folder created
)
if exist "%target%\MAP" (
rem echo OK, MAP folder exists.
FOR %%A IN (%target%\MAP\*.*) DO DEL %%A
) else (
MD "%target%\MAP"
echo MAP folder created
)
if exist "%target%\RAC" (
rem echo OK, RAC folder exists.
FOR %%A IN (%target%\RAC\*.*) DO DEL %%A
) else (
MD "%target%\RAC"
echo RAC folder created
)
if exist "%target%\SUP" (
rem echo OK, SUP folder exists.
FOR %%A IN (%target%\SUP\*.*) DO DEL %%A
) else (
MD "%target%\SUP"
echo SUP folder created
)
if exist "%target%\VAC" (
rem echo OK, VAC folder exists.
FOR %%A IN (%target%\VAC\*.*) DO DEL %%A
) else (
MD "%target%\VAC"
echo VAC folder created
)
if exist "%target%\VFR GUIDE" (
rem echo OK, VFR GUIDE folder exists.
) else (
MD "%target%\VFR GUIDE"
echo VFR GUIDE folder created
)

rem ***************************
rem fetch and rename VAC files
rem ***************************

echo.
echo Copying VAC files
pushd "%cdrom%\eVFRM\%update%\chart\"
for %%a in ("LS_ADINFO_*") do (
for /f "tokens=1-4,* delims=_" %%b in ("%%a") do (
for /f "tokens=2" %%z in ('find /i "%%e" ^< "%target%\ICAO_code_list.txt"') do ( echo copying %target%\VAC\%%z_%%e_%%f"
copy /b /y "%%a" "%target%\VAC\%%z_%%e_%%f"

if exist "%targetanp%\%%e" (
rem echo OK, %%e folder exists.
) else (
MD "%targetanp%\%%e"
echo %%e folder created
)
echo copying %targetanp%\%%e\%%e_%%z_%%f
copy /b /y "%%a" "%targetanp%\%%e\%%e_%%z_%%f"

)
)
)
popd echo.
rem ***************************
rem fetch and rename ADINFO files
rem ***************************
echo.
echo Copying ADINFO files
pushd "%cdrom%\eVFRM\%update%\full\"
for %%a in ("LS_ADINFO_*") do (
for /f "tokens=1-5 delims=_." %%b in ("%%a") do (
for /f "tokens=2" %%z in ('find /i "%%e" ^< "%target%\ICAO_code_list.txt"') do (
IF /i "%%f"=="pdf" (
echo copying %target%\VAC\%%z_%%e_ADINFO.%%f"
copy /b /y "%%a" "%target%\VAC\%%z_%%e_ADINFO.%%f"
) ELSE (
echo copying %target%\VAC\%%z_%%e_%%f_ADINFO.pdf"
copy /b /y "%%a" "%target%\VAC\%%z_%%e_%%f_ADINFO.pdf"
)
)
)
)
popd
rem ***************************
rem fetch remaining files
rem ***************************
echo.
echo copying other PDF files, may take a little time, please wait...
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_AGA*.pdf" "%target%\AGA" >nul
copy /b /y "%cdrom%\eVFRM\%update%\chart\LS_AGA*.pdf" "%target%\AGA" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_COM*.pdf" "%target%\COM" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_COR*.pdf" "%target%\COR" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_GEN*.pdf" "%target%\GEN" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_MAP*.pdf" "%target%\MAP" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_RAC*.pdf" "%target%\RAC" >nul
copy /b /y "%cdrom%\eVFRM\%update%\full\LS_VFR*.pdf" "%target%\" >nul

copy /b /y "%cdrom%\eVFRM\%update%\AMDT\*.*" "%target%\AMDT\" >nul
copy /b /y "%cdrom%\eVFRM\%update%\SUP\*.*" "%target%\SUP\" >nul
copy /b /y "%cdrom%\eVFRM\%update%\VFG\*.*" "%target%\VFR GUIDE\" >nul

echo.

rem ***************************
rem copy update profile
rem ***************************

echo copying update information
FOR %%A IN (%target%\*.xml) DO DEL %%A
copy /b /y "%cdrom%\eVFRM\eVFRM_list.xml" "%target%\Last_update_%update%.xml"

echo.
echo Update number %update% done.
pause


(FIN DU CODE A RECOPIER CI-DESSUS)

Pour fonctionner, ce batch file a encore besoin de 4 choses supplémentaires :

1) tout en haut du texte, dans la zone indiquée par rem faites vos modifications ici, il faut renseigner la lettre de votre lecteur de CD-ROM (chez moi : G).

2) juste en-dessous, il faut renseigner le répertoire de destination de l'AIP sur votre disque dur (ici E:\AIP_Suisse). Si ce répertoire n'existe pas, il faut le créer avant d'exécuter le batch file.

3) encore en-dessous, il faut renseigner le répertoire de destination des cartes formatées pour ANP (chez moi : E:\AirNavPro). Si ce répertoire n'existe pas, il faut le créer avant d'exécuter le batch file.

4) dans le répertoire de destination de l'AIP que vous aurez indiqué au point 2, il faut enfin créer un fichier texte (clic droit, nouveau >, Document texte) dans lequel vous recopiez le code ci-dessous, et que vous renommez ICAO_code_list (attention à la casse et aux "_"). L'extension de ce fichier reste .txt et il est important que ce fichier soit placé dans le répertoire cible que vous avez indiqué au point 2. Ce fichier est disponible en Dropbox ici.

ICAO_code_list.txt

(DEBUT DU TEXTE A RECOPIER CI-DESSOUS)

LSPM AMBRI
LSPA AMLIKON
LSZE BAD_RAGAZ
LFSB BALE_MULHOUSE
LSXB BALZERS
LSTB BELLECHASSE
LSZB BERN
LSGB BEX
LSZP BIEL_KAPPELEN
LSZF BIRRFELD
LSZQ BRESSAUCOURT
LSZC BUOCHS
LSZU BUTTWIL
LSZJ COURTELARY
LSPD DITTINGEN
LSGE ECUVILLENS
LSZI FRICKTAL_SCHUPFART
LSGG GENEVE
LSZG GRENCHEN
LSGT GRUYERES
LSXG GSTEIGWILER
LSZN HAUSEN_AM_ALBIS
LSGP LA_COTE
LSPL LANGENTHAL
LSGL LAUSANNE
LSXL LAUTERBRUNNEN
LSGC LES_EPLATURES
LSXY LEYSIN
LSZL LOCARNO
LSZT LOMMIS
LSZA LUGANO
LSZO LUZERN_BEROMUNSTER
LSTR MONTRICHER
LSTO MOTIERS
LSGN NEUCHATEL
LSPO OLTEN
LSER RARON
LSGR REICHENBACH
LSGK SAANEN
LSZS SAMEDAN
LSXV SAN_VITTORE
LSPF SCHAFFHAUSEN
LSZX SCHANIS
LSGS SION
LSZV SITTERDORF
LSZK SPECK_FEHRALTORF
LSZR ST_GALLEN_ALTENRHEIN
LSXA TAVANASA
LSZW THUN
LSPN TRIENGEN
LSXU UNTERVAZ
LSPV WANGEN_LACHEN
LSPH WINTERTHUR
LSGY YVERDON
LSEZ ZERMATT
LSZH ZURICH
LSTZ ZWEISIMMEN

(FIN DU TEXTE A RECOPIER CI-DESSUS)


Pour les utilisateurs de MAC.


J'ai évoqué ce script équivalent, qui formate aussi les VAC en vue d'un chargement dans Air Navigation Pro (ANP).

Il existe également l'application Etap (disponible sur Dropbox), écrite par Brett Anthoine, du GVM de Bex, et qui récupère automatiquement en quelques clics les cartes VAC et AREA du CD pour les intégrer dans Air Navigation Pro, au travers du serveur WebDav.

L'utilisation en est simplissime :
- Lancer l'application
- Cliquer sur "Select source" et choisir le dossier qui contient le evfrm
- Activer le serveur webdav sur Air Nav Pro
- Noter la bonne adresse IP
- Cliquer sur "Upload"
- Attendre que tous les terrains aient le petit vu à droite

Pour les utilisateurs d'Android.


Je ne possède ni tablette Android, ni cette version d'ANP et ne peux par conséquent donner de marche à suivre détaillée. Toutfois, si la version Android d'ANP est capable d'afficher des documents au format PDF, il doit forcément être possible d'y transférer les VAC en modifiant mon batch file de sorte que le format des noms de répertoires et de fichiers corresponde aux spécifications propres à la version Android - se référer le cas échéant au manuel d'ANP.

Good luck !