NL:Mkgmap
| Links |
|---|
| Documentatie (en) |
| Ontwikkeling (en) |
| Download kaarten (en) |
Dit is een vertaling van de Engelse pagina van 04-08-2009 10:18.
Dit programma converteert OpenStreetMap-gegevens naar een kaart die kan worden geladen op een Garmin GPS-ontvanger. Het programma converteert de gegevens in één stap, zonder afhankelijk te zijn van een ander programma.
Het doel van het project is om OpenStreetMap-gegevens te nemen en het in mijn Garmin Legend Cx te zetten om me te laten zien tijdens het mappen wat al gedaan is en wat niet. Bovendien is het gewoon leuk om je net gemaakte kaart gebruikt te zien worden.
Mkgmap heeft Java 1.5 nodig, dus het zou overal waar JOSM beschikbaar is moeten werken.
Het is geschreven door Steve Ratcliffe. Bugs of opmerkingen kun je naar me e-mailen of je kunt ze toevoegen aan de discussiepagina (en).
Contents |
Downloaden
De downloads zijn nu beschikbaar als tar-files (die voor Windows-gebruikers makkelijker kunnen zijn) en gecomprimeerde tar-bestanden. De inhoud van beide archieven is gelijk.
- De huidige stabiele versie is 1067
Grote veranderingen sinds 858:
- Routeren vanaf .osm-bestanden geïmplementeerd
- Veel verbeteringen in de routering
- Download
- Versie 1067: Zip-archief mkgmap-r1067.zip, tar-archief mkgmap-r1067.tar.gz (stabiel, neem deze als de nieuwste niet werkt)
- Nieuwste versie: mkgmap-latest.tar.gz (de nieuwste, meestal goed maar soms zijn er problemen)
- Broncode Broncode
Het heeft Java 1.6 nodig (nou ja, het werkt nu nog met 1.5, maar binnenkort waarschijnlijk niet meer). Als jouw computer Java nog niet heeft, installeer het dan hier.
Een map maken
- Maak eerst een bestand met OSM-gegevens. Ik doe dat door op te slaan vanuit JOSM. Je kunt dit bestand noemen zoals je wilt — ik gebruik data.osm in het voorbeeld. Je kunt ook een grotere kaart krijgen met XAPI, op deze manier (voorbeeld voor de Midlands):
wget http://www.informationfreeway.org/api/0.6/*[bbox=-3.5,51.5,-1.0,53.5] -O data.osm
of
curl -L "http://www.informationfreeway.org/api/0.6/map?bbox=-3.5,51.5,-1.0,53.5" -o data.osm
- Open de opdrachtprompt en ga naar je Mkgmap-map. Voer dan het volgende commando uit:
java -jar mkgmap.jar [opties] data.osm
- Dit geeft een bestand met de naam 63240001.img
Het is mogelijk dat de applicatie crasht na een tijdje, vooral als je een groot gebied omzet, met de foutmelding Exception in thread "main" java.lang.OutOfMemoryError: Java heap space. Als dat gebeurt, moet je de grootte van het Java-geheugen vergroten:
java -Xmx512M -jar mkgmap.jar [options] data.osm
Dit commando geeft 512Mb geheugen aan het proces.
Opties
Voor grotere kaarten zou je sommige details van de standaard-kaart willen aanpassen. Er zijn hiervoor opties die je aan kunt passen. Als je heel veel opties aan wilt passen, is het meestal makkelijker om deze opties in een bestand te zetten en de -c-optie te gebruiken. For a complete list see the complete option list (en).
Gebruik: mkgmap [opties...] <file.osm> Opties:
- --help=onderwerp
Geef help weer over het gegeven onderwerp. Als het onderwerp is weggelaten, wordt een lijst met onderwerpen weergegeven.
- -c bestandsnaam
Specificeer een configuratie-bestand in plaats van opties. In het bestand is iedere optie een nieuwe regel, verder net als op de opdrachtprompt, behalve dat er geen ';--' voor hoeft te staan.
- -n name
- --mapname=naam
Verander de bestandsnaam van de kaart. Garmin-kaarten krijgen een naam van 8 cijfers. De standaardnaam is 63240001. Je kunt deze het best wijzigen als je een kaart voor anderen gaat maken die anderen ook gaan gebruiken, zodat de naam uniek is en er geen verwarring met andere ontstaat. Let op: voer alleen de naam in, zonder de ".img"-extensie, want anders geeft Mkgmap een foutmelding.
- --description=tekst
Stelt de beschrijving van de kaart in. Dit wordt weergegeven in QLandkarte, MapSource en op een GPS-ontvanger enz.
- --country-name
Stelt de naam van het land in. Standaard "UNITED KINGDOM".
- --country-abbr
Stelt de afkorting van de landnaam in. Standaard "GBR".
- --region-name
Stelt de naam van de regio in. Standaard heeft de kaart geen regionaam.
- --region-abbr
Stelt de afkorting van de regionaam in. Standaard heeft de kaart geen regionaam-afkorting.
Label-opties:
- --latin1
Deze optie zorgt ervoor dat het gebruik van niet-ASCII-karakters wordt toegestaan in straatnamen. Wat er wordt ondersteund op de GPS is afhankelijk van het apparaat. Sommige apparaten kunnen bijvoorbeeld alleen ASCII aan. Als deze optie niet aan staat, converteert Mkgmap sommige tekens met accenten naar tekens zonder accenten als dat mogelijk is.
- --charset=naam
Gebruik de aangegeven karakterset.
- --code-page=nummer
Gebruik de aangegeven codepagina.
- --lower-case
Deze optie zorgt ervoor dat namen kleine letters kunnen bevatten. Let op: dit werkt niet op veel (de meeste, alle?) Garmin-ontvangers.
Stijl-opties:
Zie ook de aangepaste stijl-documentatie.
- --style=naam
Gebruik een andere stijl dan de standaard.
- --style-file=bestand
Geef een extern bestand aan waar de stijl vandaan moet komen. "bestand" kan een map of een zip-archief zijn waarin de stijl zit. Het kan ook een URL zijn. Als er meer dan één stijl in het zip-archief is, kan het --style-commando worden gebruikt om de juiste stijl te selecteren. Je kunt hier ook een map-features.csv-bestand opgeven om ervoor te zorgen dat Mkgmap backwards-compatibel blijft. Zie de aangepaste stijl-documentatie.
- --list-styles
Maak een lijst met alle beschikbare stijlen.
- --levels=level-code
Verander de manier waarop de levels op de kaart corresponderen met de zoom-niveaus op de GPS. Zie de aangepaste stijl-documentatie. Standaard "0=24, 1=22, 2=21, 3=19, 4=18, 5=16", dit kan echter veranderen.
- --name-tag-list=lijst
Geef de tag op die wordt gebruikt om de naam aan te geven. Dit is nuttig voor een kaart in een andere taal. Je kunt een lijst ingeven en de eerste beschikbare tag zal worden gebruikt (bijv. --name-tag-list=name:nl,int_name,name).
- --map-features=bestand
Oude optie. Gebruik in plaats hiervan de --style-file-optie.
Opties over de productbeschrijving:
- --family-id
Dit is een geheel getal dat de familie kaarten identificeert.
- --product-id
Dit is een geheel getal dat een product in een familie identificeert. Normaal gewoon 1.
- --series-name
- --family-name
- --area-name
- --overview-mapname
Allerlei opties:
- --block-size=nummer
Verandert de blokgrootte die gebruikt wordt in de gegenereerde kaart. Er is normaal gesproken geen reden om dit te doen.
- --net
Maak een bestand zodat "Plaats op weg" ondersteund wordt.
- --gmapsupp
Maak een gmapsupp.img-bestand, dat ook kan bestaan uit meerdere gmapsupp.img (je moet ze naar de mkgmap-map kopiëren), dat naar een Garmin-apparaat kan worden geladen in de USB-modus.
java -jar mkgmap.jar --gmapsupp corsica.img cyprus.img mallorca.img malta.img tenerife.img
- --ignore-osm-bounds
Negeer "bounds"-elementen in OSM-bestanden.
- --road-name-pois[=GarminCode]
Genereer een POI voor iedere weg met een naam. Standaard is de code 0x640a. Je kunt ook een andere code ingeven met deze optie.
- --tdbfile
Maak een .tdb-bestand.
- --draw-priority=prioriteit
Als twee kaarten hetzelfde gebied bestrijken, geeft deze optie aan welke kaart "bovenop" wordt getekend. Hogere prioriteiten worden getekend bovenop lagere prioriteiten.
- --transparent
Maak de kaart transparant, zodat je kaarten die onder deze kaart liggen. Handig voor hoogtelijnen die bovenop andere kaarten moeten komen.
- --version
Geef het versienummer van het programma.
Installeren
- Laad dit naar je Garmin GPS-ontvanger. Garmin-modellen zoals de Legend Cx kunnen in de "USB Mass Storage"-modus worden gezet, zodat ze als een nieuwe stationsletter (Windows) of bestandsssysteem (Unix/Linux) verschijnen. In dat geval kopieer je gewoon de kaart naar het bestand Garmin/gmapsupp.img. Maak de map Garmin aan als die nog niet aanwezig is.
- User:Tms13: Als je GPS verwijderbare geheugenkaarten gebruikt, zou het sneller kunnen zijn om die kaart uit de GPS te halen en hem direct in een kaartlezer te beschrijven - veel Garmin-apparaten hebben USB 1.1; een USB 2.0-kaartlezer zal ten minste 5 keer zo snel zijn, is mijn ervaring.
- Als je een ouder apparaat hebt met een seriële connectie dat kaarten weergeeft, kun je het .img-bestand uploaden naar de Garmin met Sendmap.
- Je kunt ook twee of meer kaarten in één map samenvoegen met Sendmap of gmaptool.
- Het programma QLandkarte kan worden gebruikt om te uploaden naar GPSmap 60CSx en de nieuwste versie werkt ook op mijn Legend Cx.
Bekende problemen
Momenteel bekende problemen.
Zoeken naar straten
Op dit moment weten we niet hoe je de kaart zo moet maken dat gebruikers erop kunnen zoeken naar straatnamen met de ingebouwde zoekfunctie. Hacks, zoals voor iedere straat een POI maken, zijn voorgesteld (zie discussiepagina).
Kustlijn
De kustlijn wordt wel weergegeven, maar eigenlijk zouden er zee-polygons moeten zijn.
Te groot gebied
Als je Mkgmap probeert te gebruiken op een te groot gebied, lukt dat niet. Je moet het OSM-bestand in kleinere stukjes splitsen. Zo werkt dat:
java -Xmx1000m -jar splitter.jar file.osm
- Laat Mkgmap de resulterende bestanden converteren, bijvoorbeeld:
java -Xmx1000m -jar mkgmap.jar -c template.args
Ontwikkeling
Er is een wiki-pagina over de ontwikkeling (en), vooral over OSM-gebruik.
Er is ook een externe [2].
Licentie
De software is gelicenseerd onder de GPL, versie 2. De kaarten die hij produceert moeten gelicenseerd worden volgens de bron van de data; voor OSM is dit Creative Commons CC-BY-SA 2.0. Er is daarom geen conflict wat betreft de licentie met betrekking tot andere mogelijkheden om kaarten te maken.
GUI's
Op dit moment zijn er ten minste vier pogingen om een GUI voor Mkgmap te maken, zodat gebruikers op knoppen kunnen klikken in plaats van commando's te onthouden:
- OSM Composer - een GUI bovenop mkgmap, om het proces van het maken van Garmin-kaarten van OSM en SRTM te vergemakkelijken.
- MkgmapGUI van freegeographytools - slechts voor Windows, gesloten broncode, alleen OSM naar IMG.
- Mkgmapgui van activityworkshop - Java, open broncode, geeft simpele toevang tot conversiefuncties en kan IMG-bestanden combineren.
- DoMyMaps - volgens User:Lao opgeschort
Scripts
Voor bash-gebruikers: een bash-script.
Links
- http://www.parabola.me.uk/mkgmap/ - Download en nieuws
- mkgmap/dev - Pagina over ontwikkeling
- mkgmap/routing - Het maken van routeerbare kaarten
- OSM Map On Garmin - Overzicht over het maken van kaarten voor Garmin.
- OSM_Map_On_Garmin/POI_Types - Lijst van POI-typen en hoe die eruit zien op verschillende apparaten
- OSM Map On Garmin/Download - Download IMG-bestanden van OSM-gegevens.
- Image:Putney-on-gps.jpg - Een kaart van Putney op een Venture Cx, gemaakt door User:Gravitystorm
- Image:Qlandkarte sueddeutschland.png - Een kaart van Zuid-Duitsland, gezien met QLandkarte
- mkgmap/i18n - The internationalization page.
- User:Computerteddy - The World ready to use with Garmin GPS, made with mkgmap from (mostly in German Language)
- OSM Map On Garmin/Cycle map - Making a cycle map with mkgmap.



