Для того что бы отобразить GPX трек на maps.google.ru требуется конвертация, можно воспользоватся простым скриптом convert.sh:
#!/bin/sh
# Запускаем скрипт так:
# sh ./convert.sh ./имя_файла.gpx
# Где имя_файла.gpx - имя с треком из Garmin
# На выходе получаем сконвертированный файл convert.kml который можно загрузить в maps.google.ru
cat <<EOF > convert.kml
<?xml version="1.0" encoding="ISO-8859-1" ?><kml xmlns="http://earth.google.com/kml/2.1">
<Document>
<name>opal.kml</name>
<Placemark>
<name>Name</name>
<visibility>0</visibility>
<description>Discription</description>
<styleUrl>#redLineBluePoly</styleUrl>
<LineString>
<tessellate>1</tessellate>
<altitudeMode>absolute</altitudeMode>
<coordinates>
EOF
cat "${1}" | sed 's/\/trkpt>/\/trkpt>\n/g' \
| sed 's/trkseg>/trkseg>\n/g' \
| grep "trkpt lat" \
| awk 'BEGIN{FS="\""}{print $4","$2",0"}' \
>> convert.kml
cat <<EOF >> convert.kml
</coordinates>
</LineString>
</Placemark>
</Document></kml>
EOF
Если количество точек трека слишком большое и мы хотим его проредить, то заменим строку скрипта:
| awk 'BEGIN{FS="\""}{print $4","$2",0"}' \
на:
| awk 'BEGIN{FS="\""}{print($4","$2",0"); getline; getline; getline; getline; getline; getline;}' \
Таким образом мы оставляем только каждую седьмую точку маршрута.
Tags: garmin