#!/bin/bash ## Script réalisé par Bertrand Perrier # Ce script lance flightgear en plaçant l'avion sur un parking # 04/03/17 : création # 09/03/17 : maj pathTS="/home/$USER/.fgfs/TerraSync" pathRunFG="/home/$USER/fgfs/stable" pathAircraft="/home/$USER/flightgear/aircraft" pathScenery="/home/$USER/flightgear/Le_Mans/" CallSign="fantasy7" if [ -z "$1" ]; then echo "Utilisation : $BASH_SOURCE aircraft airport online(off/on) [OPTIONS] [verbose]" echo "exemple : $BASH_SOURCE 777-200er LFPC off verbose" echo "exemple : $BASH_SOURCE ls_ac to list aircraft" fi if [ "$1" = "ls_ac" ]; then echo "liste des avions installés" echo "----------------" $pathRunFG/run_fgfs.sh --fg-aircraft=$pathAircraft --show-aircraft fi if [ -n "$1" ] && [ "$1" != "ls_ac" ]; then if [ -z "$2" ]; then echo "précisez l'OACI" echo "---------------" else aoci='echo "$2" | tr '[:lower:]' '[:upper:]'` aoci1=`echo ${aoci:0:1}` aoci2=`echo ${aoci:1:1}` aoci3=`echo ${aoci:2:1}` result=`cat $pathTS/Airports/$aoci1/$aoci2/$aoci3/$aoci.groundnet.xml | grep index=\"0\"` heading=`echo $heading | sed 's/heading=\"//' | sed 's/\"//'` lat1=`echo $result | awk -F" " '{ print $5}'` lat2=`echo $result | awk -F" " '{ print $6}'` lon1=`echo $result | awk -F" " '{ print $7}'` lon2=`echo $result | awk -F" " '{ print $8}'` heading=`echo $result | awk -F" " '{ print $9}'` lat1=`echo $lat1 | sed 's/\lat="N//'` lat1=`echo $lat1 | sed 's/\lat="S//'` lon1=`echo $lon1 | sed 's/\lon="E//'` lon1=`echo $lon1 | sed 's/\lon="O//'` lon2=`echo $lon2 | sed 's/\"//'` lat2=`echo $lat2 | sed 's/\"//'` # convertir lat et lon N43 39.362820" lon="E7 12.151500" # x + y /60 # 43,656047 7,202525 lat=$(bc <<< "scale = 6; $lat1+($lat2/60)") lon=$(bc <<< "scale = 6; $lon1+($lon2/60)") # verbose if [ -n "$4" ]; then echo "" echo "aoci : $aoci" echo "parsed : $aoci1$aoci2$aoci3" echo "" echo "result" echo "------" echo $result echo "lat1 : $lat1" echo "lat2 : $lat2" echo "lon1 : $lon1" echo "lon2 : $lon2 " echo "heading : $heading" echo "" echo "decimal" echo "-------" echo "lat : $lat" echo "lon : $lon" fi echo "lancement de FlightGear" echo "-----------------------" if [ "$3" = "on" ]; then echo "mode online" $pathRunFG/run_fgfs.sh --fg-aircraft=$pathAircraft --fg-scenery=$pathScenery --callsign=$CallSign --multiplay=out,10,mpserver01.flightgear.org,5000 --timeofday=noon --disable-ai-traffic --disable-random-objects --enable-terrasync --aircraft=$1 --lat=$lat --lon=$lon --heading=$heading else echo "mode offline" $pathRunFG/run_fgfs.sh --fg-aircraft=$pathAircraft --fg-scenery=$pathScenery --callsign=$CallSign --timeofday=noon --disable-ai-traffic --disable-random-objects --enable-terrasync --aircraft=$1 --lat=$lat --lon=$lon --heading=$heading fi fi fi