Overpass - do wyciągania danych z OSM

Overpass działa w przeglądarce, więc jeśli tylko przeglądarka w Twoim telefonie w ogóle obsłuży stronę, to Overpass będzie działać tak samo.
Z tym, że chyba nadal nie da się overpassem wyciągać notatek.

Ja nie, jak coś chciałem sprawdzać po drodze, to sobie to oznaczałem na mapie przy planowaniu podróży.

Czy negacja regexów dla kluczy jest wspierana? Dokumentacja mówi, że tak, a mi nie chce działać.

Mi działało. Nie próbujesz w ten sposób wykryć braku klucza, prawda?

Czy jest jakiś sposób, aby wyciągnąć wszystkie dane dla bboxa danego powiatu/gminy?

Możesz przeformułować pytanie?
Bo nie rozumiem, co chcesz właściwie osiągnąć.

http://overpass-turbo.eu/s/lkX

W kreatorze wpisz coś w stylu “name=* in rzeszowski” to dla powiatu, a “Rzeszów” dla gminy. Jeśli zaś nazwa gminy i powiatu używana w overpass’ie się pokrywają to trzeba by było znaleźć numer relacji która jest reprezentacją danej gminy/powiatu i wpisać zamiast nazwy “name=* in XXXXXXX”.

Pięknie dziękuję za odpowiedzi. Przykład od wowika jest tym czego szukałem :slight_smile:

Czy jakiś magik wie dlaczego taka kwerenda (znajdź węzły i linie w Gdyni z name:* ale bez name) nie działa jak powinna?

[out:json][timeout:25];
{{geocodeArea:Gdynia}}->.searchArea;
(
  node[!"name"][~"^name\:"~"."](area.searchArea);
  way[!"name"][~"^name\:"~"."](area.searchArea);
);
out body;
>;
out skel qt;

Edit: Gdy zmienię “Gdynia” na “pomorskie” to zwrócone wcześniej węzły nie załapują się, co trochę przeczy logice.

jakie pomorskie? Województwo pomorskie.

Geokoder działa tak samo w obu przypadkach. Pominąłem “województwo” odruchowo, bo wcześniej Alt+O otwierało okno wczytania zapisanej kwerendy :stuck_out_tongue:

W sumie to “pomorskie” jest wpisane dla obszaru jako “short_name” także mogło by wychwycić, że taki obszar istnieje. Ciekawe czemu tak nie robi.

Postawiłem serwer Overpass’a, który zawiera dane tylko z Polski i aktualizuje się co minutę.

Adres dla Overpass Turbo:

//osm-cdn.vink.pl/api/

Dla zapytań bezpośrednich:

http://osm-cdn.vink.pl/api/interpreter

Sprawdźcie proszę, czy wszystko działa jak trzeba :slight_smile: wszelkie głosy ważne.

Dla chętnych - postawione w Dockerze z pomocą tego obrazka

Niestety 404 na

http://osm-cdn.vink.pl/api/

Wszystko się zgadza. Usługa działa pod adresem:

http://osm-cdn.vink.pl/api/interpreter

Natomiast jak sprawdzałem Overpass Turbo, to on sam dokleja interpreter, więc w Overpass Turbo trzeba podać bez interpreter.

Witam,
Czy istnieje możliwość “wyciągnięcia” danych: kodu pocztowego i jego (średniej?!) lokalizacji dla obszaru Polski?

Overpass zdaje się nie ma żadnych funkcji aggregujących/operujących na geometrii. Posłużyłbym się postgisem, np.:


SELECT ST_Buffer(ST_ConcaveHull(ST_Collect("way"), 0.99),1) AS geom,  
ST_Area(ST_Buffer(ST_ConcaveHull(ST_Collect("way"), 0.99),1))/1000000 AS area, 
"addr:postcode" FROM (
  SELECT "addr:postcode", "way" FROM planet_osm_point WHERE "addr:postcode" IS NOT NULL GROUP BY "addr:postcode", "way"
  UNION
  SELECT "addr:postcode", ST_Centroid("way") FROM planet_osm_polygon WHERE "addr:postcode" IS NOT NULL GROUP BY "addr:postcode", "way"
  ) AS dupa
GROUP BY "addr:postcode";

co wizualizuje się +/- następująco:

G.

Ciekawe czy dałoby radę przerobić to na diagram Woronoja albo jeszcze lepiej k-najbliższych sąsiadów (k-NN). Wtedy nie byłoby dziur.

https://postgis.net/docs/ST_VoronoiPolygons.html - ćwiczenia zostawię pytającemu :slight_smile:

G.

Dziękuję gsapijaszko.
Spróbuję skorzystać z Twojej rady. Co prawda jeszcze nie wiem jak (Qgis dopiero “liznąłem”), ale popróbuję.
Na moje potrzeby wystarczą dane “z dziurami”.