Ok, deze doet het wel ok:

<osm-script output="json" timeout="125">
  <union>
    <query type="way">
      <area-query ref="3600196175"/>
      <has-kv k="building"/>
    </query>
    <query type="node">
      <area-query ref="3600196175"/>
      <has-kv k="highway" v="bus_stop"/>
    </query>
  </union>
  <union>
    <item/>
    <recurse type="down"/>
  </union>
  <print mode="skeleton" order="quadtile"/>
</osm-script>

http://overpass-turbo.eu/s/4HF

Nu vervang je de area ref door 3600058004 en je krijgt de buildings/haltes van heel vlaams-brabant. Het is nutteloos om dit in een browser te draaien. Je zal de timeout ook best een stuk naar boven moeten zetten (of weglaten en default gebruiken) wil je resultaat krijgen. Het is veel data.

Je zou dit kunnen knippen door dit voor elke child relatie (subarea) van 58004 apart te doen en de resultaten samen te voegen. (het zijn er wel wat). Zie ook http://www.openstreetmap.org/relation/2524255 (kijk naar admin level 7 &/of 8 ).

Mvg,

Glenn

On 23-08-14 17:29, Glenn Plas wrote:
Zucht ... De oplossing hieronder is niet echt optimaal, als ik de bbox weglaat dan lijkt de result set te groot (405MB), dus er zit nog ergens iets dat niet juist zit in de query. Ben er 2 keer in geslaagd dit correct eruit te halen, maar de 3de keer lukt het me niet. (timeout wss).

De bounding box zou geen invloed mogen hebben op die query. maw, niet helemaal een correct antwoord van mij. Zoek wel even verder.

Glenn


On 23-08-14 17:16, Glenn Plas wrote:
On 23-08-14 16:12, niels willemot wrote:
Beste

Voor mijn thesis had ik graag wat data van open street map gehad.
Echter kan ik niet aan de codes aan uit.

Zou graag voor de provincie Vlaams Brabant de verschillende locaties van
gebouwen en de bushaltes willen.

Hallo Niels,

Alle gebouwen via Overpass is een stevige query afhankelijk van het aantal gebouwen dat eruit komen, met deze query vind je alleszinds deze al terug, niet gelimiteerd tot de provincie VL-B, maar wel door een bounding box.

<osm-script output="json" timeout="125">
  <union>
    <query type="way">
      <has-kv k="building"/>
      <bbox-query {{bbox}}/>
    </query>
    <query type="node">
      <has-kv k="highway" v="bus_stop"/>
      <bbox-query {{bbox}}/>
    </query>
  </union>
  <print mode="meta"/>
  <recurse type="down"/>
  <print mode="skeleton" order="quadtile"/>
</osm-script>

zie http://overpass-turbo.eu/s/4Ht

Om dit dan te limiteren tot vlaams brabant zoek je de relation ID voor deze : http://www.openstreetmap.org/relation/58004

Die tel je op bij 3600000000 omdat het een relatie is (zie http://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#Query_for_areas_.28is_in.29 )

Dan krijg je het getal : 3600058004

Die zet je erbij als area-query (vervang dus query)

<area-query ref="3600196175"/>

De result set is wel huge en uw browser zal wss wel moeilijk hebben, dus als je wil testen, neem dan een relatie van een gemeente, bv 'zemst':

<osm-script output="json" timeout="125">
  <union>
    <area-query ref="3600196175"/>
    <query type="way">
      <has-kv k="building"/>
    </query>
    <query type="node">
      <has-kv k="highway" v="bus_stop"/>
    </query>
  </union>
  <print mode="meta"/>
  <recurse type="down"/>
  <print mode="skeleton" order="quadtile"/>
</osm-script>

http://overpass-turbo.eu/s/4HB

En dan zie je dat het werkt (de result set wordt niet gelimiteerd tot de bbox deze keer maar door de area bepaald door de relatie.

Veel success met de thesis.

Glenn


_______________________________________________
Talk-be mailing list
Talk-be@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-be




--
"Everything is going to be 200 OK."


_______________________________________________
Talk-be mailing list
Talk-be@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-be

Reply via email to