OpenCellID

Kolesár András kolesar.andras at gmail.com
2015. Okt. 4., V, 12:31:45 UTC


Zseniális új funkció jelent meg az új JOSM-ben (r8800): közvetlenül tud 
adatot letölteni az overpass szerverről. Az alábbi lekérdezéssel a 
http://cellavadasz.openstreetmap.hu/ oldalon használt szűrőfeltétellel 
lehet lekérni pontokat a kijelölt területről:

type:node AND (man_made=tower or man_made=mast or 
"communication:mobile_phone"=*) AND "communication:mobile_phone"!=no

Ez a sor a felső egysoros szövegmezőbe másolandó, majd a "lekérdezés 
készítése" gomb készíti el az Overpass QL formátumú lekérdezést, akárcsak a 
webfelületen.

Az új letöltési forma lehetőséget ad az API kiválasztására is. Megjegyzi a 
legutoljára használt url-t, a legördíthető lista elemei pedig 
kiegészíthetők a JOSM download.overpass.servers beállításában. Ez azért 
nagyon jó, mert így az OpenCellID adatait letöltő API címe is megadható itt:

Overpass szerver: http://kolesar.turistautak.hu/osm/opencellid/api/

Másképp szólítja meg a szervert, de könnyen értelmezhető, gyorsan fel is 
készítettem rá az API-t. Innentől kezdve kifejezetten kellemes méretű, több 
soros ablakban szerkeszthetők a lekérdezés paraméterei. Az ide írt 
paramétereket nem kell egy sorba ömleszteni, soronként értelmezi őket:

mnc=01
norawoutside

A párbeszédablak legfelső sorába írt, eredeti célja szerint overpass wizard 
formátumú szűrőfeltételeket a JOSM nem küldi el a szervernek, valamint a 
"lekérdezés készítése" gombot sem érdemes az OpenCellID API felé használni, 
mert nem érti meg a nyelvezetét. Ehelyett a nagy szövegmezőben adjátok meg 
a paramétereket a fenti formában, az megy a szerver felé.

Az OpenCellID API továbbra is használható a korábbi módon, a szokásos 
letöltéssel, de ezt legfeljebb régi JOSM verziókhoz ajánlom, az új 
lehetőség sokkal kényelmesebb. Nem kell az OSM API címét változtatgatni a 
letöltések előtt, valamint a paraméterek is állítgathatók a terület 
kijelölésével azonos párbeszédablakban.

A paraméterezés régi és új módja egyszerre is használható, mivel az API az 
url-ben megadott adatokat is értelmezi, működik tehát így is:

Overpass lekérdezés: mnc=01
Overpass szerver: 
http://kolesar.turistautak.hu/osm/opencellid/api-norawoutside/

Fontos, hogy az url végén / jel legyen, mert a JOSM közvetlenül ehhez fűzi 
az Overpass szervereken használt interpreter címét, enélkül hibát ad.

A paramétereket még nem dokumentáltam nyilvánosan, kiolvasható a 
forráskódból a $params[' szórészletre keresve.

https://github.com/kolesar-andras/opencellid-osm-api/blob/master/map.php

Üdv:
András
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.openstreetmap.org/pipermail/talk-hu/attachments/20151004/235c1b7e/attachment.htm>


További információk a(z) Talk-hu levelezőlistáról