Begrippen: routes, tracks, waypoints en meer

Het is voor de beginner niet altijd even duidelijk: routes, tracks, sporen, waypoints, favorieten, GPX, GDB…
Op deze pagina probeer ik het een en ander uit te leggen. Ik begin met de basisconcepten, en ga daarna dieper op de materie in. Het verhaal zal op een gegeven moment erg technisch worden, maar om precies te begrijpen waarom bijvoorbeeld BaseCamp op een bepaalde manier werkt en waarom dit kan afwijken hoe een toestel daarmee omgaat, is het noodzakelijk om bepaalde zaken tot in detail te beschrijven.

Waypoint

Een waypoint is een locatie die je op de kaart markeert. Dat kan een adres zijn, een bestaande bijzonderheid op de kaart, een nuttig punt of een willekeurig ander punt op de kaart.
In bepaalde toestellen worden waypoints “Favorieten” genoemd. Je kunt waypoints voorzien van een naam, commentaar, adresgegevens, telefoonummer, nabijheidswaarschuwing en een symbool.
BaseCamp biedt een uitgebreide keuze aan symbolen, maar toestellen ondersteunen lang niet alle symbolen (dit verschilt per toestel). Een nabijheidswaarschuwing is handig als je een seintje wilt krijgen als je in de buurt komt; helaas werkt dit alleen in outdoortoestellen. Een workaround voor zowel de symbolen als de nabijheidswaarschuwing is het converteren van waypoints naar een POI-bestand met JaVaWa RTWtool; dan kun je wel elk waypointsymbool gebruiken, en werkt de waarschuwing ook op zūmo’s en nüvi’s.

Route

Routes gebruik je voor het navigeren met de GPS. Routes kun je met BaseCamp aanmaken, waarbij er onderscheid gemaakt kan worden tussen ‘berekende routes’ en ‘directe routes’. Bij een berekende route laat je het aan BaseCamp over om de juiste weg te vinden tussen begin- en eindpunt, waarbij je kunt sturen door viapunten toe te voegen. Een berekende route volgt altijd de in de kaart bekende wegen. Een directe route is niet meer dan een verzameling rechte lijnen tussen de viapunten die je aangeeft. Als je een kaart hebt die geen autoroutering ondersteunt krijg je altijd een directe route. Daarnaast kun je er ook voor kiezen om de autoroutering uit te zetten in BaseCamp.
Je toestel zal bij het volgen van de route afslagaanwijzingen geven. Bij voorkeur maak je de route op dezelfde kaart als die in je toestel zit; veel toestellen zullen deze dan ongewijzigd overnemen. Routes gemaakt op andere kaarten zulln herberekend worden op de kaart in het toestel, waarbij het mogelijk is dat er afwijkingen ontstaan.
Een punt van aandacht: er zijn nogal wat websites die routes aanbieden, maar waar het in werkelijkheid tracks zijn. dit maakt nogal wat uit voor de bruikbaarheid (zie ook onder ‘

Track

Wordt ook wel ‘spoor’ genoemd. Als je je toestel laat bijhouden waar je geweest bent, legt het een reeks punten vast, met daaraan een aantal gegevens gekoppeld: coördinaten, tijdstip, hoogte en (afhankelijk van toestel en extra randapparatuur) zaken als temperatuur, hartslag en cadans. Die reeks punten vormen samen een track.
Je kunt ook tracks tekenen in BaseCamp; de punten krijgen uiteraard coördinaten, als je een geschikte kaart hebt ook de hoogte, maar de rest van de genoemde gegevens niet.
Je kunt een track gebruiken om te navigeren. In een outdoortoestel is het dan gewoon een kwestie van het lijntje volgen; aanwijzingen zul je echter niet krijgen. De zūmo’s uit de 5×0 serie, de 660, de 3×0 serie en de 590 zijn in staat om een route te berekenen op basis van een track. Het toestel zal daarbij de track zo goed mogelijk voigen (dan moeten er wel wegen in de buurt liggen).
Een is track niet kaartafhankelijk.

GPX

Het GPX-formaat is een universeel uitwisselingsformaat; niet alleen Garmin gebruikt het, maar ook fabrikanten van andere GPS-toestellen. Het formaat is gebaseerd op de XML-standaard. Je kunt zo’n bestand in een text-editor bekijken. Als je gegevens overzet naar een toestel, wordt daarvoor een GPX-bestand gebruikt.
Een GPX-bestand bevat vaak maar een enkel item (waypoint, route of track), maar het kan ook meerdere van die items in elke mogelijke combinatie bevatten. Aan de naam van het bestand kun je niet zien wat erin zit; die zul je dus eerst moeten openen in BaseCamp of in bijvoorbeeld JaVaWa RTWtool om dat te achterhalen.

GDB

Het GDB-formaat is Garmin-specifiek, en kan in essentie dezelfde zaken bevaten als een GPX-bestand, alleen is het een binair formaat. Toestellen kunnen er niet mee overweg; alleen BaseCamp, MapSource en o.a. JaVaWa RTWtool. Vanwege het binaire formaat zijn GDB-bestanden een stuk kleiner dan GPX-bestanden met dezelfde inhoud. Bij heel grote hoeveelheden gegevens kan BaseCamp het niet aan als die in het GPX-formaat staan, terwijl het met GDB dan nog wel lukt.
Het nadeel van het GDB-formaat is dat het enigszins gedateerd is, en daardoor niet alle gegevens die aan waypoints, routes en tracks gekoppeld kunnen zijn aankan. De belangrijkste daarvan zijn ‘zachte’ viapunten en cadans- en hartslaggegevens.
BaseCamp gebruikt overigens voor de database een variant van het GDB-formaat (wat wel die extra gegevens kan bevatten).

Het GDB-formaat nader bekeken

Nu gaan we wat dieper in op het GDB-formaat, en omdat BaseCamp dit intern gebruikt, op de consequenties daarvan op het werken met gegevens in het programma.

Een GDB-bestand bevat drie soorten items: punten, routes en tracks. Een punt kan een waypoint zijn, een viapunt, een richtingpunt of een combinatie van waypoint en viapunt. Een viapunt en een richtingpunt kunnen voorzien zijn van afslaginstructies (maar niet altijd; het fijne daarvan heb ik nog niet kunnen achterhalen).

Een route bestaat naast een aantal algemene gegevens uit een reeks verwijzingen naar de eerder genoemde punten, en in een aantal gevallen is er aan zo’n puntverwijzing nog een reeks coördinaten gekoppeld; die coördinaten zijn de vormpunten welke de route de wegen netjes laat volgen. Als je bij het maken van een route op een waypoint klikt komt er geen nieuw punt, maar wordt het waypoint ‘gepromoveerd’ tot viapunt. Dit is de reden dat je een waypoint die opgenomen is in een route niet kunt verwijderen zonder dat de route herberekend wordt. Bij herberekenen blijven viapunten zoals jij je geplaatst hebt, richtingpunten en vormpunten worden automatisch opnieuw gemaakt.

Een viapunt dat je plaatst op een kaart-POI of op een ander kaartelement (weg, vlak) krijgt de kenmerken van dat kaartelement mee. Behalve naam is dat ook een uniek ID dat alleen voor dat item in die specifieke kaart geldig is. Waypoints krijgen wel de naam, maar niet het ID; in plaats daarvan krijgt het een generiek ID voor waypoints. Plaats je een viapunt niet op een kaartelement, dan zal dit meteen een waypoint worden.

Naamgeving

Elk punt moet een unieke naam hebben, routes en tracks idem (maar je kunt wel één punt, één route en één track met dezelfde naam hebben). Dit betekent dat viapunten ook allemaal een unieke naam moeten hebben; BaseCamp zet er automatisch een 1tje (2tje, 3tje…. etc) erachter als er sprake is van conflicten. Dit kan tot verwarrende situaties leiden: stel dat je een route hebt waarin een viapunt toevallig dezelfde naam heeft als die je voor een waypoint wilt gebruiken: dit gaat niet… Het verwarrende is dat je nergens een waypoint ziet staan met die naam, waardoor het naamgevingsconflict op het eerste gezicht niet verklaarbaar is.

Tracks zijn wat eenvoudiger: algemene gegevens en een reeks van coördinaten, tijdstempel en hoogte welke de trackpunten vormen.

Het GPX-formaat nader bekeken

Het toestel gebruikt echter het GPX-formaat met waypoints, routes en tracks. Er is een strikte scheiding tussen waypoints en punten in een route: je kunt de waypoints uit het GPX-bestand verwijderen (met bijv. JaVaWa RTWtool), zonder dat het routes beïnvloedt. De routepunten zijn opgeslagen in de route zelf; hier is geen sprake van verwijzingen zoals bij het GDB-formaat. Ook is hier de naamgeving niet zo strikt als in BaseCamp: je kunt op het toestel zelf gerust meerdere waypoints met dezelfde naam maken (dit kan mogelijk per model verschillen).

Een route bevat drie soorten punten: <rtept> (viapunten), <rpt> met een <subclass> (richtingpunten) en<rpt> zonder <subclass> (vormpunten), waarbij <rpt>’s subitems zijn van een <rtept>. De <subclass> is een afgeleide van het eerder genoemde unieke ID.

Met de introductie van de zūmo 350 is er nog een variant van de <rtept> bijgekomen: het stille/niet aangekondigde viapunt, wat Garmin verwarrend genoeg ‘shaping point’ noemt. Het is dus niet het klassieke vormpunt maar nog steeds een viapunt, alleen dan eentje met een extra kenmerk dat ervoor zorgt dat een zūmo 3×0 of 590 die niet zal afroepen. Voor andere toestellen (zūmo 550, 660, outdoortoestellen) zijn stille viapunten identiek aan reguliere viapunten, aangezien die dat extra kenmerk negeren *).

Als je nu BaseCamp instelt om routepunten te laten verwijderen bij verzenden van de route, dan gooit die de viapunten voorzien van dat extra kenmerk weg (de vorm van de route verandert niet omdat er altijd een richtingpunt vlakbij een viapunt staat). Dit kan alleen slagen als het toestel in staat is om een route ongewijzigd over te nemen; voorwaarde daarbij is dat het toestel dezelfde kaart gebruikt. Wordt niet aan een van beide voorwaarden (ongewijzigd kunnen overnemen, zelfde kaart) voldaan, dan zal het toestel de route herberekenen, waarbij alléén de (resterende) viapunten gebruikt worden.

Deze aanpassing van BaseCamp is niets anders dan het klassieke ‘ontvlaggen’, behalve dan dat je zelf kunt bepalen welke viapunten wel, en welke niet verwijderd moeten worden.
Let op! Als je directe routes maakt, zet dan deze optie in BaseCamp beslist uit. Directe routes bevatten namelijk alleen viapunten; geen richting- en vormpunten. Als BaseCamp de (stille) viapunten uit een directe route verwijdert, dan zul je begrijpen dat er niet veel overblijft van je route…

*) Er is nog meer…

In het GPX-bestand dat je met BaseCamp naar het toestel stuurt staat er bij de ‘zachte’ viapunten een speciaal kenmerk, waaraan een moderne zūmo kan zien dat hij dat punt niet moet aankondigen. Een 550 of 660 heeft nooit geleerd om met dat speciale kenmerk om te gaan, en negeert het daarom simpelweg.

Alle zelfgeplaatste viapunten, maar ook de door BaseCamp toegevoegde richtingpunten bevatten daarnaast een ander kenmerk wat bestaat uit een serie letters en cijfers; de zgn. Subclass. Deze subclass is al heel lang in gebruik. Wat de inhoud precies aangeeft weet alleen Garmin, maar het heeft in ieder geval een relatie met de onderliggende kaart, of preciezer: met het wegsegment waarop het routepunt staat. Hoort de subclass bij een wegsegment waaraan een adres gekoppeld is zullen de 550 en 660 een melding geven; is er geen adres aan gekoppeld, dan niet.

Nu heb ik in het verleden proberen te achterhalen of het mogelijk is om iets te veranderen aan de subclass zodat er geen melding meer komt; dit zou namelijk de ultieme ontvlagmethode opleveren: geen meldingen, maar toch een route die niet vernacheld wordt door herberekenen…
Uiteindelijk heb ik de zoektocht opgegeven en het idee opgevat dat het gewoon niet mogelijk is, en dat de subclass (behoudens wat variaties t.g.v. het type routepunt) een vast gegeven is voor een bepaald wegsegment.

En toen kwam Hans Vaessen met wat experimenten erachter dat het toch niet zo zwart/wit was met die routepunten…
Het blijkt namelijk dat wanneer je een punt op een adres plaatst en het vervolgens ‘zacht’ maakt, het toch niet aangekondigd wordt. Kijkend naar de inhoud van het GPX-bestand zie je dan dat de subclass toch verandert door het zacht maken. Het was dus in feite al jaren mogelijk om zachte viapunten te verkrijgen i.c.m. de toen gangbare toestellen, alleen heeft Garmin dat nooit ingebouwd in MapSource…
Overigens is dit een onomkeerbaar proces; als je het routepunt weer hard maakt in BaseCamp verandert de subclass niet meer terug, en zal zo’n punt nooit meer aangekondigd worden door een 550/660.

Deze methode lijkt dus ideaal voor bezitters van een 550 of 660 (bij andere toestellen zoals de zūmo 220 en outdoortoestellen werkt het trouwens niet), ware het niet dat het niet optimaal werkt: bij bestaande routes of bij routepunten die je verplaatst hebt lukt het truukje niet; alleen bij nieuw geplaatste routepunten.