Hu:Slippy Map

From OpenStreetMap Wiki
Jump to navigation Jump to search

A csúszó térkép (angolul slippy map) technológiával azok a modern internetes interaktív térképek készülnek, melyek nagyíthatók és pásztázhatók, mivel a megjelenített térkép arrébcsúszik, amikor a képernyőn megjelenő ábrát az egérrel vagy valamilyen kézmozdulattal megragadjuk és odébbhúzzuk.

Példa a csúszó térképre

Mi itt gyakran úgy gondolunk a csúszó térképre, mint az a konkrét térkép, ami az OpenStreetMap honlapján alapértelmezett esetben fogadja a látogatókat. Ez egy böngészhető webes felület, amely az OpenStreetMap adataiból lett kirajzolva.

Alapértelmezésben a csúszó térkép a sztenderd OpenStreetMap stílusban(en) kirajzolt csempéket mutatja, de számos más jellegzetes csempét(en) is felkínálunk önálló rétegként vagy mint amire hivatkozni lehet.

  • Nézd meg a Böngészés oldalt, ha további alapvető információkra van szükséged a csúszó térkép használatáról és a reá mutató hivatkozások készítéséről!
  • Nézd meg a saját csúszó térkép telepítése(en) oldalt, ha kíváncsi vagy, hogy miként tudnál a saját honlapodon egy efféle térképet létrehozni!
  • Nézd meg a Leaflet(en) oldalt, amely arról a szoftverről szól, amit a „mi csúszó térképünkhöz” használunk (az oldal leírja azt is, hogyan tudod a saját honlapodon használni a szoftvert)!
  • Nézd meg a Csúszó térkép MediaWiki kiterjesztés(en) oldalt, ha az érdekel, miként tudod ebbe a wikibe a csúszó térképet beágyazni!

Technikai részletek

A csúszó térkép egy ajaxos összetevő. A felhasználók böngészőiben fut egy JavaScript program, ami a háttérben dinamikusan kéri le a kívánt térképeket a szerverről, anélkül, hogy az egész HTML oldalt mindig újra letöltené. Ez adja a finoman csúsztatható és nagyítható böngészés élményét. Ennek a gyakorlati végrehajtásáról egy javascript könyvtár gondoskodik, ami vagy az OpenLayers(en), vagy a Leaflet(en). A térkép nagy képe sok kis négyzet alakú képből áll össze, amiket „csempéknek(en)” hívunk. Ezeket kis képeket a „csempeszerver” rajzolja ki és küldi el a felhasználóknak.

A csempék kirajzolása

A kirajzolás folyamata – vagyis vektoros adatokból raszteres térképadatok előállítása, egy kiválasztott stílus szerinti bitmap kép létrehozása – egy eléggé erőforrás-igényes folyamat. Sok különféle kirajzoló(en)-szoftver beállítással valósítható meg. A csempeszerver tipikusan nem valós időben rajzolja ki a csempéket minden egyes felhasználó számára, aki éppen akkor a térképet böngészi. Ehelyett a csempék időben folyamatosan rajzolódnak ki és egy merevlemezen tárolódnak. Mégis viszonylag kevés kirajzolóprogramról bizonyosodott be, hogy a világtérképek rendszeres frissítése során nagy adatforgalmat generál.

Az OpenStreetMap „sztenderd” csempeszervere

A „sztenderd” OpenStreetMap stílus létrehozására a Mapnik nevű kirajzolóprogramot használjuk. A Mapnik sok más külső partnerhez tartozó térkép kirajolásban közreműködik, pl. a Kerékpárostérkép(en) vagy a Tömegközlekedési térkép(en), az ezeket alkotó jellegzetes csempék(en) az OSM nyitólap csúszó térképéről érhetők el.

A sztenderd csempék a tile.openstreetmap.org webcímen érhetők el. Az OpenStreetMap sztenderd csempéinek csempeszervere által kezelt adatbázis egy perc különbséggel frissül, így a legtöbb adatmódosulást néhány percen belül ki kellene rajzolnia. Korábban ez az adatbázis a heti Planet.osm(en) adathalom alapján frissült, ami szerda reggelenként (GMT/BST) történt. Képzeld csak el, milyen lehetett, amikor ilyen sokat kellett várni arra, hogy megjelenjenek a szerkesztések! Ez volt csak a szép világ! A teljes bolygónyi adathalom alkalmankét még ma is importálásra kerül, hogy a kijavíthassuk a módosítások végrehajtásában maradt hibákat.

Az OpenStreetMap mapnikos kirajzolása egy Apache modul révén történik, amit mod tile(en)-nak hívnak, és kifejezetten az OSM nagy erőforrásigényéhez készült. Ugyanez végzi a gyorsítótárban való tárolást és az újrarajzolási kérések sorbarendezését. Minden csempe egy időbélyeggel rendelkezik, ami azt mutatja, hogy mikor rajzolták meg, és van egy „piszkos” (dirty) nevű jelölőváltozója, ami az újrarajzolás szükséges voltát mutatja. A kirajzoló program az alábbi szabályok szerint végzi a munkáját:

  • Ha megváltozik az OSM adatbázis, akkor a rendszer megpróbálja a vonatkozó csempét „piszkosként” megjelölni.
  • Amikor ránézel egy csempére, ellenőrzi, hogy az régebbi-e három napnál. Ha igen, akkor megjelöli „piszkosként”.
  • A háttérben futó kirajzoló program minden „piszkos” csempét kirajzol.

Így az a terület, amit senki sem néz meg, nem lesz gyakran kirajzolva. A csempék nagyjából érdeklődés vagy a figyelem nagysága szerinti sorrendben kerülnek kirajzolásra. Ha egy csempe „piszkosként” lett megjelölve, akkor a terület alatt fekvő részcsempék még nem lettek automatikusan „piszkosként” megjelölve.

Ha a „More OpenStreetMap coming soon...” üzenetet kapod egy csempe megnézésekor, az azt jelenti, hogy az adott csempéhez még nem érkezett adat, és a szerver nem tudja még kirajzolni a kérésedre. Vagyis a kirajzolása várakozik. A csempe státusát a csempe URL-je[1] segítségével kérdezheted le. Például a

URL-lel elérhető csempe esetében egyszerűen hozzábiggyesztjük az URL-hez a /status szöveget:

és megkapjuk a létrehozás időpontját valamint a „piszkossági” jelölőváltozó értékét.

Amennyiben ki akarod kényszeríteni valamelyik csempe újrarajzolását, te is megjelelölheted „piszkosként”, ha a /dirty szöveget illeszted a csempe URL-je végére:

Tiles@Home

Régebben kínáltunk egy „Osmarender” nevű jellegzetes réteget is, ami az Osmarender(en) kirajzoló rendszert használta és a Tiles@home(en) nevű elosztott kirajzoló rendszeren futott. Ez a projekt félbeszakadt és az „Osmarender” réteg már nem érhető el a továbbiakban, bár még bárki készíthet magának egyedi kirajzoltatást az Osmarenderrel(en).

Lásd még

Saját csúszós térkép létrehozása(en)
Hogyan tehetsz a saját honlapodra térképet a különféle csúszós térképes API-k felhasználásával és más módszerekekel?
Statikus térképképek(en)
Egy <img /> címke használatával beágyazott álló térképképek.
Csempék(en)
Csempedefiníciók és különféle kapcsolódó hivatkozások.
A csúszós térkép csempenevei(en)
Valamely csempe nevének kiszámítása (a .png fájl URL-je) ismert koordináták alapján (nagyítás, x, y).
URL sablonok a Mapnik, Osmarender(en) (Tiles@Home(en)), OpenCycleMap(en), CloudMade(en) és a MapQuest(en) számára.
Böngészés
Alapvető felhasználási útmutató az Openstreetmap.org honlapon lévő csúszós térképhez
Rétegek URL-parémeterei(en)
Hogyan működnek a rétegek a honlapon (amit az OpenLayers(en) állít elő).
Sztenderd csemperéteg(en)
A https://www.openstreetmap.org/ oldalon látható Sztenderd réteg felhasználó-centrikus leírása.

Jegyzetek

  1. A csempe URL-je a következőképpen kapható meg:
    • a Firefox böngésző „Eszközök” menüjében válaszd ki az „Oldal adatai” megtekintését, és a felugró ablakban a „Média” fül alatt láthatod felsorolva a képernyőn látható csempék URL-jét.
    • az Internet Explorer böngészó csak az „Elem vizsgálata” (vagy valami ilyesmi) lehetőséget kínálja fel. Válaszd ki, majd a jobb-egérgombbal kattints a DOM-Explorer kijelölt kódjára! Másold át a kódot a böngésző címsorába úgy, hogy ott csak a PNG fájl URL-je legyen!