GPX w OsmAnd
Wprowadzenie
GPX (GPS Exchange Format) to szeroko stosowany standard oparty na XML do przechowywania danych GPS, w tym śladów, tras i punktów trasy. OsmAnd obsługuje format GPX do importowania, eksportowania i dostosowywania danych GPS do nawigacji, umożliwiając zarówno początkującym, jak i zaawansowanym użytkownikom optymalizację ich doświadczeń.
Co wyróżnia GPX w OsmAnd?
OsmAnd rozszerza standardowy format GPX 1.1, wprowadzając własną, niestandardową przestrzeń nazw XML osmand:. Ta przestrzeń nazw umożliwia przechowywanie dodatkowych danych, takich jak:
- Ustawienia wizualne śladu (kolor, szerokość, strzałki).
- Grupowanie punktów trasy i ikony.
- Szczegółowe atrybuty trasy, w tym obliczone trasy i typy aktywności.
Czego dowiesz się z tego przewodnika?
Ten artykuł zawiera kompleksowy przegląd struktury plików GPX i funkcji w OsmAnd. Dowiesz się:
- Jak dostosowywać ślady i punkty trasy za pomocą tagów GPX.
- Zaawansowane funkcje, takie jak opisy HTML, dane z czujników i typy aktywności.
- Jak eksportować obliczone trasy i zachować ich pełną funkcjonalność.
- Konwertowanie plików GPX do formatu OBF w celu zoptymalizowanego przechowywania i zaawansowanych możliwości wyszukiwania.
Przegląd struktury GPX
Pliki GPX w OsmAnd organizują dane hierarchicznie w następujące elementy:
<gpx>- element główny pliku.<trk>- reprezentuje ślady, które zawierają:<trkseg>- segmenty śladu, które są dalej podzielone na<trkpt>(punkty śladu).
<rte>- reprezentuje trasy, w tym punkty trasy i punkty kluczowe.<wpt>- reprezentuje pojedyncze punkty trasy.
Zachowanie importu GPX
Podczas importowania pliku GPX OsmAnd tworzy pojedynczy obiekt śladu na podstawie pliku:
- Nazwa importowanego śladu jest pobierana z nazwy pliku GPX. Element
<name>wewnątrz<trk>nie jest używany jako główna nazwa śladu podczas importu. - Jeśli plik GPX zawiera wiele elementów
<trk>, OsmAnd importuje je jako segmenty tego samego śladu. W takim przypadku wartości<name>mogą być używane jako etykiety dla odpowiednich segmentów w obrębie śladu.
Dostosowywanie śladu
Parametry wyglądu śladu
W tej sekcji opisano, jak OsmAnd wyświetla ślady na mapie oraz dostępne opcje dostosowywania ich wyglądu. Opisane poniżej parametry są stosowane wewnątrz tagu <gpx> i wpływają na wszystkie ślady zawarte w pliku GPX.
| Nazwa tagu | Opis / Wartości |
|---|---|
<color> | - Definiuje kolor linii śladu na mapie. - Ciąg znaków: Kod koloru HEX #RRGGBB lub #AARRGGBB |
<width> | - Określa szerokość linii śladu. - Ciąg znaków: „thin”, „medium", „bold” (zdefiniowane przez atrybut „currentTrackWidth”) lub liczba całkowita (1-24) |
<show_arrows> | - Włącza lub wyłącza strzałki kierunku wzdłuż śladu. - Wartość logiczna: "true" / "false" |
<show_start_finish> | - Pokazuje lub ukrywa znaczniki początku i końca śladu. - Wartość logiczna: "true" / "false" |
<split_type> | - Określa typ segmentacji śladu. - Ciąg znaków: "no_split", "distance", "time" |
<split_interval> | - Ustawia interwał segmentacji śladu w oparciu o wybrany typ. - Liczba zmiennoprzecinkowa: Liczba całkowita (metry dla "distance", sekundy dla "time") |
<line_3d_visualization_by_type> | - Określa typ wizualizacji 3D dla śladu. - Ciąg znaków: "none", "altitude", "shared_string_speed", "map_widget_ant_heart_rate", "map_widget_ant_bicycle_cadence", "map_widget_ant_bicycle_power", "shared_string_temperature", "shared_string_speed", "fixed_height" |
<line_3d_visualization_wall_color_type> | - Definiuje typ koloru ściany dla wizualizacji 3D. - Ciąg znaków: "none", "solid", "downward_gradient", "upward_gradient", "altitude", "slope", "speed" |
<line_3d_visualization_position_type> | - Ustawia pozycję wizualizacji 3D względem śladu. - Ciąg znaków: "top", "bottom", "top_bottom" |
<vertical_exaggeration_scale> | - Mnożnik do skalowania wartości atrybutu line_3d_visualization_by_type. - Liczba zmiennoprzecinkowa: Domyślnie: 1.0 |
<elevation_meters> | - Określa stałą wysokość w metrach dla "fixed_height" w <line_3d_visualization_by_type>. - Liczba zmiennoprzecinkowa: Domyślnie: 1000 |
<coloring_type> | - Określa metodę kolorowania śladu. - Ciąg znaków: "solid", "speed", "altitude", "slope", "routeInfo_roadClass, "routeInfo_surface", "routeInfo_smoothness" |
<color_palette> | - Określa schemat kolorów dla śladu. - Ciąg znaków: "default" / schematy zdefiniowane przez użytkownika |
Przykład:
<gpx version="1.1" creator="OsmAnd~ 5.0.0" xmlns="https://www.topografix.com/GPX/1/1" xmlns:osmand="https://osmand.net/docs/technical/osmand-file-formats/osmand-gpx" xmlns:gpxtpx="https://www8.garmin.com/xmlschemas/TrackPointExtensionv1.xsd" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://www.topografix.com/GPX/1/1 https://www.topografix.com/GPX/1/1/gpx.xsd">
...
<extensions>
<osmand:color>#4e4eff</osmand:color>
<osmand:width>bold</osmand:width>
<osmand:show_arrows>true</osmand:show_arrows>
<osmand:split_type>distance</osmand:split_type>
<osmand:split_interval>2000.0</osmand:split_interval>
</extensions>
</gpx>
Tag „coloring_type”
Tag <coloring_type> w OsmAnd pozwala użytkownikom dostosować kolorowanie śladu w oparciu o określone atrybuty danych, zapewniając wizualny sposób interpretacji kluczowych informacji wzdłuż śladu.
| Typ | Opis | Przypadek użycia |
|---|---|---|
<solid> | Cały ślad jest wyświetlany w jednym, jednolitym kolorze określonym przez tag color. | Używaj, gdy jednolity kolor jest potrzebny dla dobrej widoczności. |
<speed> | Ślad jest kolorowany gradientem na podstawie wartości prędkości w każdym punkcie śladu (<trkpt>). Wyższe prędkości są reprezentowane przez odrębne kolory. | Idealne do aktywności takich jak jazda na rowerze lub samochodem, aby zwizualizować zmiany prędkości. |
<altitude> | Ślad jest kolorowany zgodnie z danymi o wysokości w każdym <trkpt>. Stosowany jest gradient, wskazujący różne zakresy wysokości. | Przydatne na szlakach pieszych lub górskich do podkreślenia zmian wysokości. |
<slope> | Ślad jest kolorowany na podstawie nachylenia/spadku między kolejnymi punktami śladu. Dodatnie gradienty wskazują podjazdy, a ujemne zjazdy. | Odpowiednie dla rowerzystów lub turystów pieszych analizujących trudność trasy. |
<routeInfo_roadClass> | Koloruje segmenty śladu na podstawie klasyfikacji dróg OpenStreetMap (OSM) (np. autostrada, ulica osiedlowa). | Pomaga rozróżnić różne typy dróg podczas podążania trasą. |
<routeInfo_surface> | Koloruje segmenty śladu na podstawie typu nawierzchni OSM (np. utwardzona, żwirowa, gruntowa). | Przydatne do określania warunków na trasie podczas aktywności takich jak jazda terenowa. |
<routeInfo_smoothness> | Koloruje ślad zgodnie z ocenami gładkości OSM, wskazując na chropowatość lub gładkość ścieżki (np. doskonała, zła). | Pomocne przy ocenie przejezdności trasy dla określonych pojazdów. |
Tagi GPX w interfejsie użytkownika
Tagi rozszerzeń GPX wyświetlane na dole menu kontekstowego śladu.
Wyświetlane są zarówno rozszerzenia <metadata>, jak i <gpx> <extensions>.
Tagi wyglądu są wykluczone z listy.
Obsługiwane od OsmAnd na Androida 5.0.
Dostosowywanie punktów trasy
Ta sekcja wyjaśnia, w jaki sposób OsmAnd pozwala na dostosowywanie punktów trasy w plikach GPX za pomocą ikon, kolorów i grupowania.
Ikony punktów trasy
Poniższe tagi kontrolują wygląd ikon punktów trasy w OsmAnd:
| Tag GPX | Domyślnie | Cel |
|---|---|---|
<icon> | (brak) | Określa ikonę dla punktu trasy (np. historic_castle). |
<color> | "red" | Ustawia kolor ikony za pomocą kodu HEX (np. #FF0000) lub nazwy koloru (np. "blue"). |
<background> | "circle" | Definiuje kształt tła ikony. Możliwe wartości: "circle", "square", "octagon". |
Przykład:
<wpt lat="52.5163" lon="13.3779">
<name>Brandenburg Gate</name>
<extensions>
<osmand:color>#FF5020</osmand:color>
<osmand:icon>city_gate</osmand:icon>
<osmand:background>square</osmand:background>
</extensions>
</wpt>
Grupy punktów trasy
Punkty trasy w OsmAnd mogą być sortowane w grupy na podstawie ich typu. To grupowanie pozwala użytkownikowi organizować wiele punktów trasy w określonych kategoriach, poprawiając przejrzystość i czytelność mapy.
- Definicja grupy punktów. Tag
<type>wewnątrz elementu<wpt>określa grupę punktu (np."castle","aqueduct"). - Konfiguracja grupy. Rozszerzenie
<osmand:points_groups>w elemencie<gpx>definiuje ustawienia dla każdej grupy, w tymname,color,iconibackgrounddla wszystkich punktów trasy w tej grupie.
Przykład:
<gpx>
<wpt lat="1.234" lon="5.678">
<name>Look up to see the water</name>
<type>aqueduct</type>
</wpt>
<wpt lat="5.678" lon="1.234">
<name>Beware of ghosts</name>
<type>castle</type>
</wpt>
<wpt lat="66.666" lon="66.666">
<name>The house of Beetlejuice</name>
<type>castle</type>
</wpt>
<extensions>
<osmand:points_groups>
<group name="castle" color="#FF0000" icon="historic_castle" background="circle"/>
<group name="aqueduct" color="#0000FF" icon="bridge_structure_arch" background="circle"/>
</osmand:points_groups>
</extensions>
</gpx>
Zaawansowane funkcje GPX
Typ aktywności
Począwszy od OsmAnd w wersji 4.9, możesz klasyfikować swoje ślady według typu aktywności w celu dalszej analizy i organizacji w folderach.
Lista obsługiwanych typów aktywności jest dostępna w pliku activities.json. Każda aktywność jest identyfikowana przez unikalny ID i przechowywana w rozszerzeniach <metadata> pliku GPX.
Przykład:
<metadata>
<extensions>
<osmand:activity>off_road_motorcycling_dirt_biking</osmand:activity>
</extensions>
</metadata>
HTML w opisach
Tagi HTML mogą być używane wewnątrz tagów <desc> w elementach <metadata> lub <wpt>, aby zapewnić sformatowane opisy dla śladów lub punktów trasy.
Aby uniknąć konfliktów ze składnią XML, zamień znaki specjalne w następujący sposób:
<→<>→>&→&
Przykład:
<metadata>
<desc>
<p>
The first paragraph will be displayed as <b>brief</b> description.
HTML tags are stripped in brief descriptions.
</p>
<p>
<h3>Second paragraph</h3>
<b>Hello, world!</b><br/>
<img src="..."/><br/>
<a href="...">url</a><br/>
<table> ... </table>
</p>
</desc>
</metadata>
Ważne uwagi:
- OsmAnd usuwa wszystkie tagi HTML podczas generowania krótkich opisów, pozostawiając czysty tekst.
- Do dostosowywania można używać tagów takich jak
<b>,<i>,<p>,<br/>,<a>,<img>i innych.
Tag link
Użyj tagu <link>, aby powiązać adresy URL z metadanymi, informacjami o autorze lub punktami trasy w plikach GPX OsmAnd. Ten tag może również wyświetlać obraz, gdy adres URL wskazuje na plik obrazu.
Przykłady (Link w metadanych z obrazem):
<metadata>
<link href="https://osmand.net/img/logo.png">
<text>OsmAnd Logo</text>
</link>
</metadata>
Przykłady (Link w punkcie trasy z obrazem):
<wpt lat="52.5163" lon="13.3779">
<link href="https://osmand.net/img/logo.png" />
</wpt>