MOBAC

Allikas: Tipikate Rattamatkaklubi teabebaas
Jump to navigation Jump to search

Sissejuhatus

Mobile Atlas Creator ehk Mobac on rakendus, mis võimaldab erinevatest kohtadest kaarte tirida ning nendest väga paljudes formaatides offline kaarte tekitada. Samuti on võimalik sisendina kasutada lokaalset repositooriumit.

Mobac rakendust installeerida ei ole vaja, tegemist on Java rakendusega, mille võib lahti pakkida suvalisse kohta (seejuures Windowsi Program Files kataloogi tasub pigem vältida - et ei tekiks probleemi kirjutamisõigustega). Peale alla laadimist ja lahti pakkimist tuleb käivitada fail Mobile Atlas Creator.exe.

Online kaartide allikad

Vaikimisi oskab Mobac tõmmata kaarte teatavast hulgast serveritest, neist märkimisväärsemad on erinevad OpenStreetMap variatsioonid.

Mobac toetab küll ka kaardiallikate juurde defineerimist, aga see ei käi mitte kasutajaliidese kaudu, vaid XML formaadis konfiguratsioonifailidena, mis tuleb talletada Mobac rakenduse alamkausta mapsources. Iga sinna kausta talletatav XML fail lisab Mobac rakendusele ühe allika, kust kaarte alla laadida saab, seejuures faili nimed võib valida vabalt (mõistlik on panna neile nimed, mis kaardi allikaid iseloomustavad). Selleks, et Mobac rakendus lisandunud XML faili üles leiaks, tuleb ta taaskäivitada.

Maa-ameti kaardid

Maa-ameti kaartide alla laadimiseks tuleb Mobac rakenduse alamkausta mapsources lisada järgmine XML fail (sisu on pooleldi katse-eksituse meetodil tuvastatud, seega võib-olla on ka paremaid/mõistlikumaid variante):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customWmsMapSource>
    <name>Maa-ameti WMS</name>
    <minZoom>8</minZoom>
    <maxZoom>20</maxZoom>
    <tileType>png</tileType>
    <version>1.1.1</version>
    <layers>EESTIFOTO</layers>
    <url>http://kaart.maaamet.ee/wms/alus-geo?</url>
    <coordinatesystem>EPSG:4326</coordinatesystem>
    <backgroundColor>#000000</backgroundColor>
</customWmsMapSource>

Siiski on Maa-ameti WMS teenuse kasutamisega seotud kaks olulist probleemi:

  • Mobac ei oska L-EST97 koordinaatsüsteemi, Maa-amet aga näiteks ajaloolisi kaarte WGS84-na välja ei anna.
  • Maa-ameti WMS annab aeg-ajalt vigaseid kaardiruute.

Eelevad kaks põhjust said seega aluseks, et arendada välja enda Maputils tarkvarapakett.

Tasub ka mainimist, et Mobac rakendus talletab ka preview režiimis alla laetavad kaardiosad, et samu tükke ei peaks pidevalt uuesti alla laadima. Sellega seoses on nähtud probleemi, et kui mingil hetkel kaardi alla laadimine ebaõnnestub, siis talletatakse lokaalselt vigane (tühi) kaardiruut ning edaspidi näidataksegi antud koha kohta alati seda. Kui selline probleem ilmneb, siis tuleb rakendus seisma panna, selle alamkaust tilestore maha kustutada ning uuesti käivitada.

Katsete tulemusena tundub, Maa-ameti ortofotol on suurenduse tasemel 19 kõik detailid näha ning lisa suurendus enam midagi juurde ei anna. Maapiirkondades pole võib-olla ka sel tasemel enam alati mõtet.

Google Maps kaardid

Google Maps kaartide alla laadimiseks tuleb Mobac rakenduse alamkausta mapsources lisada järgmine XML fail (sisu on pooleldi katse-eksituse meetodil tuvastatud, seega võib-olla on ka paremaid/mõistlikumaid variante):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customMapSource>
  <name>Google Map</name>
  <minZoom>8</minZoom>
  <maxZoom>20</maxZoom>
  <tileType>PNG</tileType>
  <tileUpdate>IfNoneMatch</tileUpdate>
  <url>http://mt{$serverpart}.google.com/vt/lyrs=m@176103410&x={$x}&y={$y}&z={$z}&s=Galileo&scale=1</url>
  <serverParts>0 1 2 3</serverParts>
</customMapSource>

Google Mapsi korral ilmuvad Eestis majade kontuurid nähtavale suurenduse astme 17 juures, seejuures ei ole tuvastatud, et järgmiste suurenduste korral mingit infot enam juurde tuleks (aga välistada ka muidugi ei saa). Nimetatud suurenduse aste on muide aadressiribal näha ka siis, kui Google kaarti lihtsalt veebist vaadata - seejuures suurendatakse/vähendatakse kaarti 0,25-se sammuga.

Lokaalne repositoorium

Mobac võimaldab kasutada kaartide loomiseks ka lokaalset repositooriumit. Näiteks võiks see olla abiks, kui on soov juba olemasolevaid kaarte mingisse muusse formaati teisendada. Siiski on üheks oluliseks piiranguks see, et sisendkaart peab sel juhul olema "Google projektsioonis" ehk siis kujul X, Y, Z, kus X ja Y on kaardiruudu järjekorranumbrid ning Z suurenduse tase.

Rohkem on sellest teemast kirjutatud siin, aga lühidalt tuleb mapsources kausta lisada XML fail, mille sees on kirjas kaardi nimi ja kaardi andmete kataloog.

Väljundformaadid

Orux Maps

Kaardi loomine

Orux Maps formaadis kaartide loomine ja nende kasutamine toimub ilma eriliste probleemideta. See näeb Mobac rakenduses välja nii:

  • Tuleb luua uus atlas (menüüst Atlas -> New atlas), valida sellele mingi nimi (reaalselt see nimi vist lõpplahenduses siiski välja ei paista) ning väljundformaat OruxMaps Sqlite.
  • Valida linnukestega soovitud Zoom tasemed. Üldjuhul jääb minimaalne mõistlik Zoom tase vahemikku umbes 8 (kui kaart genereeritakse terve Eesti suuruse maalapi jaoks) kuni umbes 11 (kui kaart genereeritakse näiteks jalgsimatka 20 x 20 km piirkonna jaoks). Maksimaalne tase jääb sõltuvalt kaardist, piirkonna suurusest ning mahu ja allalaadimise aja taluvuslävest üldiselt vahemikku 17 kuni 20. Selleks, et Orux Maps suudaks kaarti normaalselt suurendada-vähendada, tuleks Mobac rakenduses valida kõik suurenduse tasemed alates valitud miinimumtasemest ning kuni valitud maksimumtasemeni (tasub tähele panna ka seda, et niikuinii võtab suurema osa andmemahtu ja allalaadimise aega ära kõige suurem suurenduse tase üksinda).
  • Edasi tuleb valida alla laetav kaardi osa. Selleks saab kaarti suurendada, vähendada ja liigutada ning seejärel hiirega roosa ristküliku märkida. NB! Tundub, et uuem Mobac versioon ei lase nooleklahvidega enam kaarti liigutada. Kaarti saab liigutada hiirega, kui hoida all hiire vasakut nuppu, ristküliku joonistamine käib parema nupuga.
  • Leia üles nupp Add selection ning selle all olev Name väli. Kirjuta sinna mingi tähenduslik nimi, sest see saab reaalselt kaardi nimeks ning vajuta nupule Add selection. Valitud kaardi kihid ilmuvad Atlas Content alajaotusse.
    • Kui on soov luua korraga mitu kaarti, siis peale Add selection vajutamist on võimalik valida uus kaardi allikas, teised suurenduse tasemed ja ka muuta kaardi piirkonda (samas kui on soov saada mitu erinevat kaarti täpselt samast piirkonnast, siis lihtsalt roosat ruutu ei torgi ja nii toimibki). Seejärel tuleb ka Name lahtrisse uus nimi kirjutada ning vajutada uuesti Add selection - uus kaart ilmub Atlas Content alajaotusse. Kui ühe soojaga luuakse mitu kaarti, siis lõpptulemusena paiknevad nad siiski erinevates alamkaustades ning on üksteisest sõltumatult kopeeritavad ja kasutatavad.
  • Vajuta Create Atlas. Kaart (või kaardid) luuakse Mobac rakenduse alamkausta atlases.
  • Kui töö käigus tekib vigu Unrecoverable download errors, siis küsib Mobac peale allalaadimise lõppu, et kas tasub üldse kaarti luua (kuna osad ruudud on puudu). Võib vastata "ei" ning proovida sama kaarti uuesti luua. Sel juhul enne juba alla laetud ruudud võetakse lokaalsest andmebaasist (tilestore kataloog) ning puuduolevaid proovitakse uuesti alla laadida.
  • Eelnevaga veidi sarnane tarkusetera on see, et kui on soov sarnaste andmete pealt mitu erinevat kaarti luua (näiteks proovida, kas kõige suurem Zoom level üldse andis midagi juurde), siis on sama lugu, et võibki kaarte mitu korda luua - eelnevalt juba alla laetud ruudud võetakse lokaalsest baasist.

Valminud kaart (või kaardid) tuleb kopeerida Android seadme kataloogi oruxmaps/mapfiles ning seejärel on kaart kasutatav (kopeerida ei ole vaja atlase taseme kataloogi, vaid selle sees olev kaardinimeline kaust või mitme kaardi puhul kaustad). Orux Maps rakenduses leiab uue kaardi menüüvaliku Maps ikoon -> Switch map -> valida offline tab -> valida kaardi nimi. Kui kaardi nime kohe näha ei ole, siis aitab ülemisel ribal olev "refresh" ikoon.

Kaardi formaadi valik, suured kaardid

Tasub panna tähele, et lisaks eelpool kirjeldatud väljundformaadile OruxMaps Sqlite pakub Mobac rakendus välja ka lihtsalt OruxMaps formaadi. Nende kahe peamine nähtav erinevus on selles, et kui OruxMaps Sqlite talletab kogu kaardi andmed ühte faili, siis lihtsalt OruxMaps kasutab väga suurt hulka faile.

Tänapäevased Android seadmed kipuvad USB kaudu ühendades kasutama MTP (Media Transfer Protocol) protokolli ning mitte tulema külge kui USB Mass Storage Device. Suure hulga failide kopeerimine üle MTP on aga äärmiselt ajamahukas. See ongi põhjuseks, miks soovitasime eelpool kasutada väljundformaadina OruxMaps Sqlite, mitte lihtsalt OruxMaps.

Siiski võib välja tuua ühe teoreetilise asjaolu, mil kogu kaardi ühte faili salvestamine võib olla probleem. Nimelt kuna portatiivsuse tõttu kasutatakse telefonides (või vähemalt nende mälukaartidel) laialdaselt FAT32 failisüsteemi, mis ei võimalda üle 4 GB andmete ühte faili talletamist, siis väga suurte kaartide puhul ei pruugi OruxMaps Sqlite formaat olla kasutatav. Probleemist on ilmselt võimalik üle saada, kui kasutada suurte kaartide korral tavalist OruxMaps formaati ning üritada tekkinud suur failihulk telefonisse saada kas otse mälukaardile kirjutades või siis Android seadet USB Mass Storage režiimi sundides (tegemist on lihtsalt teoreetiliste mõtetega).

Katsed näitasid ka seda, et vaikimisi lubab Mobac rakendus ühe kihi raames alla laadida kuni 65536 kaardi ruutu (tile). Seda limiiti on võimalik suurendada menüüst Tools -> Settings -> Map size tab -> Maximum size settings -> valida suurem number. Olgu lihtsalt kirvehinnanguna öeldud, et Maa-ameti kaardi suurenduse taseme 19 korral tähendab vaikeseade 65536 seda, et alla on võimalik laadida umbes kuni 70 ruutkilomeetri suurune ala.

Lisatähelepanekud

  • On nähtud olukorda, kus Mobac rakendusega sai tehtud kaardid ja need telefonisse laetud. Seal ilmnes aga probleem, et teatavatel suurenduse tasemetel ei olnud teekonnapunktid enam päris õiges kohas. Kuna telefonis oli enne ka vana kaart sama nimega (ehk sai eelmine ära kustutatud ja uus sama nimega loodud), siis ilmselt oli probleemiks see, et OruxMaps ei olnud kaardi kalibreerimisandmeid (XML fail kaardi kaustas) uuendanud. Refresh nupp kaardi valiku ekraanil parandas asja.

Garmin Custom Map

Mobac rakendus võimaldab kaarte luua ka Garmin seadmetele, kuid tekkinud kaart ei ole kasutatav iseseisva kaardina, vaid tegemist on overlay kihiga olemasoleva kaardi peale. Sellise kihi loomine Mobac rakenduses on sarnane eelnevalt kirjeldatud OruxMaps formaadi loomisega, lihtsalt alustuseks atlase loomisel tuleb väljundformaadiks valida Garmin Custom Map (KMZ).

Täpsemalt on sellest teemast kirjutatud siin.