Amazon Best VPN GoSearch

OnWorks-favicon

mkgmap-splitter - Online in de cloud

Voer mkgmap-splitter uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht mkgmap-splitter die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


mkgmap-splitter - tegelsplitter voor mkgmap

KORTE INHOUD


mkgmap-splitter [opties] bestand.osm > splitter.log

PRODUCTBESCHRIJVING


mkgmap-splitter splitst een .osm-bestand dat grote, goed in kaart gebrachte gebieden bevat, in een getal
van kleinere tegels, zodat ze passen binnen de maximale grootte die wordt gebruikt voor het Garmin-kaartenformaat. Daar
zijn ten minste twee verwerkingsfasen vereist. De eerste fase is om te berekenen welk gebied
elke tegel moet dekking bieden, gebaseerd op de verdeling van knooppunten. De tweede fase schrijft uit
de knooppunten, wegen en relaties uit het originele .osm-bestand in afzonderlijke kleinere .osm-bestanden
bestanden, één voor elk gebied dat in fase één is berekend. Met optie
--keep-compleet=waarworden twee extra fasen gebruikt om gebroken wegen en polygonen te vermijden.

De twee belangrijkste kenmerken zijn:

· Tegels van variabele grootte om een ​​groot aantal kleine bestanden te voorkomen.

· Tegels sluiten precies aan, zonder overlap of gaten.

Als u een groot gebied wilt splitsen, heeft u veel geheugen op uw computer nodig. Een paar
Met opties kunt u configureren hoeveel geheugen u nodig heeft. Met de standaardparameters heb je nodig
ongeveer 4-5 bytes voor elk knooppunt en elke weg. Dit klinkt niet veel, maar het zijn er ongeveer 1700
miljoen knooppunten in het hele planeetbestand en je kunt dus niet de hele planeet in één verwerken
pass-bestand op een 32-bits machine met behulp van dit hulpprogramma, aangezien de maximale Java-heapruimte 2G is. Het
is mogelijk met 64 bit Java en ongeveer 7 GB heap of met meerdere passen.

Het Europa-extract van Cloudmade of Geofabrik kan indien gewenst binnen de 2G-limiet worden verwerkt
voldoende geheugen hebben. Met de standaardopties is Europa opgesplitst in ongeveer 750 tegels.
Het Europa-extract is ongeveer de helft van de grootte van het volledige planetenbestand.

Aan de andere kant zal een enkel land, zelfs een goed in kaart gebracht land zoals Duitsland of Groot-Brittannië, dat wel doen
mogelijk zijn op een bescheiden machine, zelfs een netbook.

GEBRUIK


Splitter vereist Java 1.6 of hoger. Het basisgebruik is als volgt.

mkgmap-splitter bestand.osm > splitter.log

Als u minder dan 2 GB geheugen op uw computer heeft, moet u het geheugen verkleinen -Xmx optie door
het instellen van de omgevingsvariabele JAVA_OPTS.

JAVA_OPTS="-xmx512m" mkgmap-splitter bestand.osm > splitter.log

Dit zal een aantal .osm.pbf-bestanden opleveren die kunnen worden gelezen mkgmap(1). Er zijn
ook andere bestanden geproduceerd:

De template.args bestand is een bestand dat kan worden gebruikt met de -c optie van mkgmap dat zal
compileer alle bestanden. Je kunt het gebruiken zoals het is, of je kunt het kopiëren en bewerken om het op te nemen
uw eigen opties. In plaats van dat elke beschrijving bijvoorbeeld "OSM Map" is, zou deze ook "NW
Schotland" al naar gelang het geval.

De gebieden.lijst bestand is de lijst met begrenzingsvakken die zijn berekend. Als je wilt dat je
kunt u dit gebruiken bij een volgend gesprek met de splitter via de --gespleten bestand optie om te gebruiken
precies dezelfde gebieden als de vorige keer. Dit kan handig zijn als u regelmatig een kaart maakt
en de tegelgebieden van maand tot maand hetzelfde willen houden. Het is ook nuttig om te vermijden
de tijd die nodig is om het bestand elke keer opnieuw te genereren (momenteel ongeveer een derde van het totale bestand).
de tijd die nodig is om de splitsing uit te voeren). Natuurlijk, als de kaart voldoende groeit, wordt een van de tegels gebruikt
Bij overstorten moet u de oppervlakten opnieuw berekenen.

De gebieden.poly bestand bevat de grenspolygoon van de berekende gebieden. Zie optie
--polygoon-bestand hoe dit gebruikt kan worden.

De dichtheden-out.txt bestand wordt geschreven als er geen gesplitst bestand is opgegeven en bevat foutopsporing
alleen informatie.

U kunt ook een gecomprimeerd .osm-bestand met gzip of bz2 gebruiken als invoerbestand. Let daar op
dit kan de splitter aanzienlijk vertragen (vooral geldt voor bz2) omdat
het decomprimeren van het .osm-bestand kan behoorlijk wat CPU-kracht vergen. Als dat waarschijnlijk het geval is
Als u een bestand meerdere keren verwerkt, kunt u het bestand waarschijnlijk beter naar een van de volgende converteren
de binaire formaten pbf of o5m. Het o5m-formaat is sneller te lezen, maar vereist meer ruimte
op de schijf.

OPTIES


Er zijn een aantal opties om dingen af ​​te stemmen die u misschien wilt proberen.

--grens-tags=snaar
Een door komma's gescheiden lijst met tagwaarden voor relaties. Wordt gebruikt om multipolygoon te filteren
en grensrelaties voor de verwerking van probleemlijsten. Zie ook optie
--gezocht-admin-niveau. Standaard: gebruik-uitsluitingslijst

--cache=snaar
Afgekeurd, doet nu niets meer

--beschrijving=snaar
Stelt de beschrijving in waarin moet worden geschreven template.args bestand.

--geonames-bestand=snaar
De naam van een GeoNames-bestand dat moet worden gebruikt voor het bepalen van tegelnamen. Typisch
steden15000.zip van geonamen ⟨http://download.geonames.org/export/dump⟩.

--houden-compleet=boolean
Gebruiken --keep-complete=false om twee extra programmafasen tussen de uit te schakelen
splitsing en de laatste distributiefase (niet aanbevolen). De eerste fase, genaamd
gen-probleemlijst, detecteert alle manieren en relaties die de grenzen overschrijden
een of meer uitvoerbestanden. De tweede fase, genaamd handle-problem-list, verzamelt
de coördinaten van deze wegen en relaties en berekent daarmee alle uitvoerbestanden
zijn gekruist of ingesloten. De informatie wordt doorgegeven aan de laatste dist-fase
drie tijdelijke bestanden. Dit vermijdt gebroken polygonen, maar houd er rekening mee dat dit vereist is
om de invoerbestanden minstens twee keer extra te lezen.

Geef het niet op met --overlappen tenzij je daar een goede reden voor hebt.

Standaard: waar

--mapid=int
Stel de bestandsnaam in voor de gesplitste bestanden. In het voorbeeld wordt het eerste bestand aangeroepen
63240001.osm.pbf en de volgende zal zijn 63240002.osm.pbf enzovoort.

Standaard: 63240001

--max-gebieden=int
Het maximale aantal gebieden dat in één keer kan worden verwerkt tijdens de
tweede fase van verwerking. Dit moet een getal zijn tussen 1 en 4096. Hogere getallen
betekenen minder passages over het bronbestand en dus een snellere algehele verwerking, maar
vereisen ook meer geheugen. Als u merkt dat u onvoldoende geheugen heeft, maar dit niet wilt
om je te vergroten --max-nodes waarde, probeer dit dan te verlagen. Het veranderen van dit testament
hebben geen effect op het resultaat van de splitsing, het is puur om u geheugen te laten inruilen
voor prestaties. Merk op dat de eerste fase van de verwerking een vast geheugen heeft
overhead, ongeacht waar dit op is ingesteld, dus als u onvoldoende geheugen heeft
voor de gebieden.lijst bestand wordt gegenereerd, moet u uw -Xmx
waarde of verklein de grootte van het invoerbestand dat u probeert te splitsen.

Standaard: 512

--max-nodes=int
Het maximale aantal knooppunten dat zich in een van de resulterende bestanden kan bevinden. De standaard
is redelijk conservatief, je zou het flink kunnen verhogen voordat je een 'kaart' krijgt
te grote berichten. Er is niet veel geëxperimenteerd. Ook hoe groter dit
waarde, hoe minder geheugen er nodig is tijdens de splitsingsfase.

Standaard: 1600000

--max-threads=waarde
Het maximale aantal threads dat wordt gebruikt door mkgmap-splitter.

Standaard: 4 (automatisch)

--gemengd=boolean
Specificeer dit als het invoerosm-bestand knooppunten, wegen en relaties met elkaar vermengd heeft of
de ID's zijn niet strikt gesorteerd. Om de prestaties te verbeteren, gebruikt u de osmose sorteren
functie.

Standaard: false

--geen-bijsnijden=boolean
Knip geen lege ruimte langs de randen van tegels af. Deze optie wordt genegeerd wanneer
--polygoon-bestand is gebruikt.

Standaard: false

--aantal-tegels=waardesnaar
Een doelwaarde die wordt gebruikt als er geen gesplitst bestand is opgegeven. Het splitsen gebeurt zo
het opgegeven aantal tegels wordt geproduceerd. De --max-nodes waarde wordt genegeerd als dit het geval is
optie wordt gegeven.

--uitvoer=snaar
Het formaat waarin de uitvoerbestanden zijn geschreven. Mogelijke waarden zijn xml, pbf,
o5m, en simuleren. De standaardwaarde is pbf, wat de kleinste bestandsgrootte oplevert.
Het o5m-formaat is sneller om te schrijven, maar creëert ongeveer 40% grotere bestanden. De
De simulatieoptie is bedoeld voor foutopsporingsdoeleinden.

--uitvoer-dir=pad
De map waarnaar de splitter de uitvoerbestanden moet schrijven. Als het opgegeven
pad naar een map bestaat niet, mkgmap-splitter probeert het te creëren. Standaard ingesteld op
de huidige werkmap.

--overlapping=snaar
Verouderd sinds r279. Met --keep-complete=false, mkgmap-splitter zou moeten bevatten
knooppunten buiten het selectiekader, zodat mkgmap kan netjes precies bijsnijden
grens. Deze parameter bepaalt de grootte van die overlap. Het is in kaarteenheden, a
Er wordt standaard 2000 gebruikt, wat ongeveer 0.04 graden breedte- of lengtegraad betekent.
If --keep-compleet=waar is actief en --overlappen wordt gegeven, wordt er een waarschuwing afgedrukt
omdat deze combinatie zelden zinvol is.

--polygoon-desc-bestand=pad
Een osm-bestand (.o5m, .pbf, .osm) met benoemde manieren die grenspolygonen beschrijven met
OSM-manieren met tagsnaam en mapid.

--polygoon-bestand=pad
De naam van een bestand dat een begrenzende polygoon bevat in de osmosepolygoonbestandsindeling
. mkgmap-splitter gebruikt dit bestand bij het berekenen van de oppervlakten. Er wordt eerst gerekend
een raster met behulp van het gegeven --oplossing. Het invoerbestand wordt gelezen en voor elk knooppunt wordt a
teller wordt verhoogd voor het betreffende rastergebied. Als het invoerbestand een
begrenzingskader: dit wordt op het raster toegepast, zodat knooppunten zich buiten het begrenzingskader bevinden
worden genegeerd. Vervolgens wordt, indien gespecificeerd, de grenspolygoon gebruikt om dat raster op nul te zetten
elementen buiten het begrenzende polygoongebied. Als het polygoongebied(en) beschrijft(en)
een rechtlijnig gebied met niet meer dan 40 hoekpunten, mkgmap-splitter zal proberen om
maak uitvoerbestanden die precies in het gebied passen, anders zal het bij benadering zijn
het veelhoekgebied met rechthoeken.

--precomp-zee=pad
De naam van een map met vooraf gecompileerde zeetegels. Indien gegeven, mkgmap-
splitter zal de vooraf samengestelde zeetegels op dezelfde manier gebruiken als mkgmap doet. Gebruik
dit als u een polygoonbestand of --no-trim=waar en mkgmap creëert leeg
*.img-bestanden gecombineerd met een bericht dat begint met "Er is niet genoeg ruimte in een single
Garmin-kaart voor alle invoergegevens".

--probleem-bestand=pad
De naam van een bestand met wegen en relaties waarvan bekend is dat ze problemen veroorzaken
in het splitsingsproces. Gebruik deze optie als --voltooid houden vergt te veel tijd of
geheugen en --overlappen lost je probleem niet op.

Syntaxis van het probleembestand:

manier: # opmerking...
relaas: # opmerking...

voorbeeld:

manier: 2784765 # Ferry Guernsey - Jersey

--probleemrapport=pad
De naam van een bestand waarin de gegenereerde problemenlijst moet worden geschreven
--voltooid houden. De parameter wordt genegeerd als --keep-complete=false. Je kunt hergebruiken
dit bestand met de --probleembestand parameter, maar doe dit alleen als u dezelfde gebruikt
waarden voor --max-nodes en --oplossing.

--resolutie=int
De resolutie van de dichtheidskaart die tijdens de eerste fase is geproduceerd. Een waarde tussen
1 en 24. De standaardwaarde is 13. Voor het verhogen van de waarde naar 14 is vier keer zoveel nodig
geheugen in de gesplitste fase. De waarde wordt genegeerd als a --gespleten bestand is gegeven.

--zoeklimiet=int
Zoeklimiet in split-algo. Hogere waarden kunnen betere splitsingen opleveren, maar dit zal duren
langer.

Standaard: 200000

--split-bestand=pad
Gebruik de eerder berekende tegelgebieden in plaats van ze helemaal opnieuw te berekenen.
Het bestand kan de indeling .list of .kml hebben.

--status-freq=int
Geeft elke keer de hoeveelheid geheugen weer die door de JVM wordt gebruikt --status-freq seconden. Stel =0 in
uitschakelen.

Standaard: 120

--stop-na=snaar
Debugging: stop na een bepaalde programmafase. Kan worden gesplitst, gen-probleemlijst, of
handle-probleem-lijst. De standaardinstelling is dist, wat betekent dat alle fasen moeten worden uitgevoerd.

--wanted-beheerdersniveau=snaar
Specificeert de laagste admin_level-waarde van grensrelaties die behouden moet blijven
compleet. Wordt gebruikt om grensrelaties te filteren voor de verwerking van probleemlijsten. De
standaardwaarde 5 betekent dat grensrelaties compleet blijven wanneer de
admin_level is 5 of hoger (5..11). De parameter wordt genegeerd als
--keep-complete=false. Standaard: 5

--write-kml=pad
De naam van een kml-bestand waarnaar de gebieden moeten worden weggeschreven. Dit is een aanvulling op
gebieden.lijst (die altijd wordt uitgeschreven).

Speciale opties

--versie
Als de parameter --versie vind je ergens in de opties, mkgmap-splitter wil
druk gewoon de versie-informatie af en sluit af. Versie-informatie ziet er als volgt uit:

splitter 279 compiled 2013-01-12T01:45:02+0000

--help Als de parameter --help vind je ergens in de opties, mkgmap-splitter wil
print een lijst met alle bekende normale opties samen met een korte hulp en exit.

TUNING


Afstemmen voor de beste prestaties

Een paar tips voor degenen die het gebruiken mkgmap-splitter om grote bestanden te splitsen.

· Voor snellere verwerking met --keep-compleet=waar, converteer het invoerbestand naar het o5m-formaat
met:

osmconverteren --drop-versie bestand.osm -o=bestand.o5m

· De optie --drop-versie is optioneel, het reduceert het bestand tot de gegevens die nodig zijn
by mkgmap-splitter en mkgmap.

· Als u nog steeds slechte prestaties ervaart, onderzoek dan splitter.log. Zoek het woord
Verspreiden van. Mogelijk vindt u zoiets in de volgende regel:

Verwerking van 1502 gebieden in 3 passages, 501 gebieden tegelijk

Dit betekent dat de splitter de invoerbestandsinvoer drie keer moet lezen omdat de --max-gebieden
parameter was veel kleiner dan het aantal gebieden. Als je genoeg heap hebt, stel dan in
--max-gebieden waarde naar een waarde die hoger is dan het aantal gebieden, bijv
--max-gebieden=2048. uitvoeren mkgmap-splitter opnieuw en je zou het moeten vinden

Verwerking van 1502 gebieden in één enkele doorgang

· Meer gebieden vereisen meer geheugen. Zeker weten dat mkgmap-splitter heeft genoeg hoop
(verhogen -Xmx parameter) zodat het niet veel tijd in de prullenbak verspilt
collector (GC), maar houd zoveel mogelijk geheugen vrij voor de I/O-caches van het systeem.

· Indien beschikbaar, gebruik twee verschillende schijven voor het invoerbestand en de uitvoermap, vooral. wanneer je
gebruik het o5m-formaat voor invoer en uitvoer.

· Als je gebruikt mkgmap r2415 of hoger en schijfruimte is geen probleem, overweeg om deze te gebruiken
--uitvoer=o5m om de verwerking te versnellen.

Afstemming op lage geheugenvereisten

Als uw machine minder dan 1 GB vrij geheugen heeft (bijvoorbeeld een netbook), kunt u deze nog steeds gebruiken mkgmap-
splitter, maar mogelijk moet u geduld hebben als u de parameter gebruikt --voltooid houden en
wil een bestand splitsen zoals duitsland.osm.pbf of een grotere. Verlaag indien nodig het aantal
van parallel verwerkte gebieden tot 50 met de --max-gebieden parameter. Je moet gebruiken
--keep-complete=false bij het splitsen van een gebied als Europa.

OPMERKINGEN


· Er is niet langer een bovengrens voor het aantal gebieden dat kan worden uitgevoerd (voorheen
het waren 255). Meer gebieden betekenen alleen maar dat er potentieel meer passen nodig zijn via de .osm
bestand, en daarom duurt het langer voordat de splitter wordt uitgevoerd.

· Er is niet langer een limiet op het aantal gebieden waartoe een weg of relatie kan behoren (voorheen
het was 4).

Gebruik mkgmap-splitter online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad




×
advertentie
❤️Koop, boek of koop hier — het is gratis, en zo blijven onze diensten gratis.