Files
scripts/Finde Einstiegsposition in GPX Track/nearestpositionontrack.sh
2024-10-14 00:08:40 +02:00

67 lines
1.6 KiB
Bash

#!/bin/bash
# Nearest Position On Track
FILE=$1
LAT=$2
LON=$3
echo "
$0 track.gpx 50.12666 8.76599
Bspw
Jakobsbrunnenstraße 14: 50.12666 8.76599
Campingplatz Bürgel: 50.12582 8.77139
"
if [ "$LAT" == "" ]; then LAT=50.12582; fi
if [ "$LON" == "" ]; then LON=8.77139; fi
if [ "$FILE" == "" ]; then exit; fi
A=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*100000)/100000; printf "%2.5f\n", $f' $LAT`
O=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*100000)/100000; printf "%2.5f\n", $f' $LON`
echo "
Prüfe 5 Nachkommastellen LAT $A LON $O"
cat $FILE | grep -n "$A" | grep "$O"
if [ "$?" == "0" ]
then
echo "nearest point"
exit
fi
A=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*10000)/10000; printf "%2.4f\n", $f' $LAT`
O=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*10000)/10000; printf "%2.4f\n", $f' $LON`
echo "
Prüfe 4 Nachkommastellen LAT $A LON $O"
cat $FILE | grep -n "$A" | grep "$O"
if [ "$?" == "0" ]
then
echo "nearest point"
exit
fi
A=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*1000)/1000; printf "%2.3f\n", $f' $LAT`
O=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*1000)/1000; printf "%2.3f\n", $f' $LON`
echo "
Prüfe 3 Nachkommastellen LAT $A LON $O"
cat $FILE | grep -n "$A" | grep "$O"
if [ "$?" == "0" ]
then
echo "nearest point"
exit
fi
A=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*100)/100; printf "%2.2f\n", $f' $LAT`
O=`perl -e '$f=$ARGV[0]; $f =~ s/,/\./; $f=int($f*100)/100; printf "%2.2f\n", $f' $LON`
echo "
Prüfe 2 Nachkommastellen LAT $A LON $O"
cat $FILE | grep -n "$A" | grep "$O"
if [ "$?" == "0" ]
then
echo "nearest point"
exit
fi
echo "nearest point is too far"