Linux>fgfs.sh
.
fgfs.sh
<-- LINUX
|
#!/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
<-- LINUX