Re: [osm-hu] Szilárd burkolatos utak keresése
Imre Samu
pella.samu at gmail.com
2018. Dec. 30., V, 00:42:49 UTC
>Abban segítesz, hogy mi a szintaktika:
-> ha valamely úttípusokat (pl. primary, secondary stb.) ki szeretném zárni
>- illetve ha csak megadott úttípusokra keresek (pl. unclassified, service
stb.)
kizárásosok felsorolása (regexp): * !~ *
[highway!~"primary|secondary|tertiary|residential|footway|steps|cycleway"]
csak az adott felsorolások érdekelnek(regexp) : *~*
[surface~"asphalt|concrete|paved|paving_stones"]
+ létezzen az adott kulcs ( ha ez nincs a példában, akkor az aszfaltozott
focipályákat is beleveszi - mert nincs higway tagjük .. )
[highway]
lásd példa - amiben egybe van kombinálva: https://overpass-turbo.eu/s/EPJ
[adiff:"2018-11-29T00:00:00Z","2018-12-29T18:00:00Z"][timeout:900];
nwr({{bbox}})
[surface~"asphalt|concrete|paved|paving_stones"]
[highway!~"primary|secondary|tertiary|residential|footway|steps|cycleway"]
[highway]
;
compare(delta:t["surface"]);
out geom meta;
>- és egy adott user által (pl. én) szerkesztett utakat ki szeretném zárni
az adiff-el az a gond, hogy 2 állapotot lát,
nem látja, hogy a 2 időpont közötti 10 szerkesztésből , mind a 10 a tiéd
volt, vagy volt pont egy olyan, amit egy másik szerkesztő csinált
és pont ő változtatta meg a surface tag-et.
(legalábbis én így értelmezem :
https://github.com/drolbr/Overpass-API/issues/396 )
viszont szinkódokat (style) a userekre lehet tenni és akkor meg tudod
különböztetni azt, amelyiket a t2-es pillanatban te szerkesztetted utoljára
.
félkész példa - csak a way-eket és pár usert szinez át:
https://overpass-turbo.eu/s/EPM
[adiff:"2018-11-29T00:00:00Z","2018-12-29T18:00:00Z"][timeout:900];
nwr({{bbox}})
[surface~"asphalt|concrete|paved|paving_stones"]
[highway!~"primary|secondary|tertiary"]
[highway]
;
compare(delta:t["surface"]);
out geom meta;
{{style:
way[@uid=906236] { color:green; fill-color:green; }
way[@uid=2077889] { color:blue; fill-color:blue; }
way[@uid=2800067] { color:azure; fill-color:orange; }
way[@uid=2839753] { color:aqua; fill-color:red; }
}}
valami ilyesmit kell látni:
[image: image.png]
persze különbőző szinkódokkal a surface és a highway tageket is meg tudod
különböztetni.
Az adiff azért trükkös ; rengeteg függőség van. főleg ott, hogy az
állapotokat hogyan kalkulálja.
(pl. uid-knél bekavarhat, hogyha egy relation - way-ének a node-ját
picit valaki arréb mozgatja , de se a way se a relation nem módosul;
viszont a geojson igen ;
de hogy ilyenkor mit látunk a geojson - meta adatainál - azt ki kellene
kisérletezni - mert amúgy lehet hogy 3 különböző user-t látsz. a n/w/r
-on (
üdv,
Imre
Szem <szembiketeam at gmail.com> ezt írta (időpont: 2018. dec. 29., Szo,
22:00):
> Hamar nyomtam a küldésre...
>
> 2018.12.29. 21:54 keltezéssel, Szem írta:
>
> Most már működött!
> Abban segítesz, hogy mi a szintaktika:
> - ha valamely úttípusokat (pl. primary, secondary stb.) ki szeretném zárni
> - illetve ha csak megadott úttípusokra keresek (pl. unclassified, service
> stb.)
>
>
> - és egy adott user által (pl. én) szerkesztett utakat ki szeretném zárni
>
> Ezzel talán csökkenthető az átnézendő utak száma és a keresési idő.
>
> 2018.12.29. 19:10 keltezéssel, Imre Samu írta:
>
> >Köszönöm! Jól hangzik! Csak éppen nálam most nem működött, de ez lehet,
> hogy vmi overpass hiba? Percekig csak keresett, aztán leállítottam...
>
> előfordulhat.
>
> az aktuális terheléstől és a lekérdezési területtől is nagymértékben függ
> a válaszidő.
> De mivel itt 2 időpillanatot (+ node + way + relation ) + 4 különböző
> surface értéket kell lekérdezni - emiatt 2-4 perces válaszidő is normális.
> ez nem az a 10 másodperces lekérdezés.
>
> vagyis:
> - bbox/area -nál minél kisebb területet állíts be
> - egy timeout se árt ( de ha van timeout, akkor az hátrébb sorolja a
> prioritásnál ; de legalább le fog futni )
> - és türelem is kell. ( nem 10 másodperc. és közben ne indits
> párhuzamosan egy másik lekérdezést )
>
> ahogy látom az előző Sasad-i sscriptem nem lett tökéletes ( kevertem benne
> az area és a bbox-ot )
> kéretik inkább ezt használni: https://overpass-turbo.eu/s/EPz
>
> ebben már van timeout-is, ez lefut nálad:
>
>
> [adiff:"2018-11-29T00:00:00Z","2018-12-29T18:00:00Z"][timeout:900];
> area[name="Sasad"];
> (
> nwr(area)[surface=asphalt];
> nwr(area)[surface=concrete];
> nwr(area)[surface=paved];
> nwr(area)[surface=paving_stones];
> );
> compare(delta:t["surface"]);
> out geom meta;
>
>
>
>
>
>
>
> Szem <szembiketeam at gmail.com> ezt írta (időpont: 2018. dec. 29., Szo,
> 17:48):
>
>> Köszönöm! Jól hangzik! Csak éppen nálam most nem működött, de ez lehet,
>> hogy vmi overpass hiba? Percekig csak keresett, aztán leállítottam...
>>
>> 2018.12.29. 15:19 keltezéssel, Imre Samu írta:
>>
>>
>> hátha ..
>>
>> >Nagyon jó lenne, ha egy területről le tudnám kérdezni azokat a szilárd
>> burkolatú (leginkább: asfalt, concrete, esetleg: paved, paving_stones)
>> utakat,
>> >amelyek egy megadott dátum után kapták meg ezt a burkolatot vagy ezen
>> dátum lettek felszerkesztve (újként létrehozva) eleve ilyen szilárd
>> burkolattal.
>>
>> az adiff+ compare tag-al - olyat lehet, hogy detektálja - a surface
>> címke változását ( törlés, módosítás, új )
>>
>> [adiff:"2018-12-01T00:00:00Z","2018-12-29T00:00:00Z"];
>> (
>> nwr[surface=asphalt]({{bbox}});
>> nwr[surface=concrete]({{bbox}});
>> nwr[surface=paved]({{bbox}});
>> nwr[surface=paving_stones]({{bbox}});
>> );
>> compare(delta:t["surface"]);
>> out geom meta;
>>
>>
>> https://overpass-turbo.eu/s/EPf
>>
>> de ez se tökéletes, mert
>> - a 2 szilárd közötti állapotváltozást is detektálja. vagyis benne lesz
>> az "asfalt"-ról "concrete" -re változás is.
>> - benne lehetnek az út törlések
>> - és a surface címke leszedése is.
>>
>> Ha nyitott végű intervallumot szeretnél, akkor módosítsd az adiff-részt
>> pl. erre: *[adiff:"2018-12-01T00:00:00Z"];*
>>
>> ha minden surface változás érdekel - 2018-12-01 -től.
>>
>> [adiff:"2018-12-01T00:00:00Z"];
>> nwr[surface]({{bbox}});
>> compare(delta:t["surface"]);
>> out geom meta;
>>
>> https://overpass-turbo.eu/s/EPh
>>
>> az "nwr" - a node + way + relation -okat is nézi
>>
>> Ez valami új dolog, bővebben:
>> https://dev.overpass-api.de/blog/sliced_time_and_space.html#compare
>>
>> üdv,
>> Imre
>>
>>
>> Szem <szembiketeam at gmail.com> ezt írta (időpont: 2018. dec. 29., Szo,
>> 11:12):
>>
>>> Szia!
>>>
>>> Köszi. A két listával az a gond, hogy ha sikerül is valamit kihozni
>>> belőle, elveszti a térképi jelölést, és már ehhez is rengeteg munka kell.
>>>
>>> Miután én egyáltalán nem értek ehhez, vmi ilyesmi szűrőt tákoltam össze:
>>> [out:json];
>>> (
>>> way
>>> [surface=asphalt]
>>> ({{bbox}});
>>> way
>>> [surface=concrete]
>>> ({{bbox}});
>>> way
>>> [surface=paved]
>>> ({{bbox}});
>>> way
>>> [surface=paving_stones]
>>> ({{bbox}});
>>> );
>>> way._(newer:"2018-09-01T00:00:00Z");
>>> out body;
>>> >;
>>> out skel qt;
>>>
>>> Ezzel az a gond, hogy megmutat minden utat, amelyen bármilyen
>>> változtatás történt az adott dátum óta, így pont a lényeg nem látszik.
>>>
>>> 2018.12.28. 23:50 keltezéssel, Miklos Vajna írta:
>>> > Szia!
>>> >
>>> >> Ha lehetséges ilyen szűrőt létrehozni az overpass-ban, akkor az is jó
>>> >> lehet, ha van más (egyszerű halandó számára érthető) felület, akkor
>>> biztos
>>> >> az is. Korábban már próbálkoztam az overpass-ban, de nem tudtam
>>> >> elkülöníteni azokat az utakat, melyek módosítva lettek ugyan, de már
>>> előtte
>>> >> is aszfaltosak voltak.
>>> > Én úgy próbálnám, hogy lekérem egy múltbeli időpontban ezt a listát,
>>> > majd a mostanit és utána tetszőleges helyi eszközzel (Excel, stb, vagy
>>> > csak egy script) már szűrhető, hogy mik azok amik tényleg csak a
>>> mostani
>>> > változatban burkoltak.
>>> >
>>> > Ilyesmit próbáltál? Vagy ennél konkrétabb választ vártál?
>>> >
>>> > Ha igen, mi volt az overpass lekérdezésed, amit tovább kéne reszelni?
>>> >
>>> >> Ha ez off topic, akkor válaszoljatok légyszi privátban.
>>> > Szerintem nem off. :)
>>> >
>>> > Üdv,
>>> >
>>> > Miklós
>>> >
>>>
>>> --
>>> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
>>> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
>>> ---
>>> Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok
>>> szolgáltatásbeli openstreetmap-hungary csoportra.
>>> Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való
>>> leiratkozáshoz küldjön egy e-amailt a(z)
>>> openstreetmap-hungary+unsubscribe at googlegroups.com címre.
>>> További lehetőségekért látogasson el a(z)
>>> https://groups.google.com/d/optout címre.
>>>
>> --
>> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
>> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
>> ---
>> Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok
>> „openstreetmap-hungary” csoportjára.
>> Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való
>> leiratkozáshoz küldjön egy e-amailt a(z)
>> openstreetmap-hungary+unsubscribe at googlegroups.com címre.
>> További lehetőségekért látogasson el ide:
>> https://groups.google.com/d/optout.
>>
>> --
>> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
>> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
>> ---
>> Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok
>> „openstreetmap-hungary” csoportjára.
>> Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való
>> leiratkozáshoz küldjön egy e-amailt a(z)
>> openstreetmap-hungary+unsubscribe at googlegroups.com címre.
>> További lehetőségekért látogasson el ide:
>> https://groups.google.com/d/optout.
>>
> --
> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
> ---
> Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok
> „openstreetmap-hungary” csoportjára.
> Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való
> leiratkozáshoz küldjön egy e-amailt a(z)
> openstreetmap-hungary+unsubscribe at googlegroups.com címre.
> További lehetőségekért látogasson el ide:
> https://groups.google.com/d/optout.
>
> --
> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
> ---
> Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok
> „openstreetmap-hungary” csoportjára.
> Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való
> leiratkozáshoz küldjön egy e-amailt a(z)
> openstreetmap-hungary+unsubscribe at googlegroups.com címre.
> További lehetőségekért látogasson el ide:
> https://groups.google.com/d/optout.
>
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.openstreetmap.org/pipermail/talk-hu/attachments/20181230/cfee0b95/attachment.htm>
--------- következő rész ---------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 187743 bytes
Desc: nem elérhető
URL: <http://lists.openstreetmap.org/pipermail/talk-hu/attachments/20181230/cfee0b95/attachment.png>
További információk a(z) Talk-hu levelezőlistáról