Page 1 sur 1

Récupérer toutes les intersections/carrefours d'une ville ?

Publié : dim. mai 26, 2019 3:58 pm
par Winfried
Bonjour,

Tout est dans le titre : j'ai besoin de récupérer l'ensemble des carrefours dans une ville (en France).

La requête Overpass suivante ne remonte rien:

Code : Tout sélectionner

[out:json][timeout:25];

//Ma ville: 123456
rel(123456);map_to_area -> .searchArea;

(
way[highway~"^(motorway)$"](area.searchArea);
node(w)[highway=motorway_junction](area.searchArea);
);

out meta;
Une idée ?

Merci.

Re: Récupérer toutes les intersections/carrefours d'une ville ?

Publié : dim. mai 26, 2019 4:11 pm
par cquest
J'ai fait ça il y a peu pour géoréférencer une liste de caméra de surveillance à Paris.

Fait avec postgis, je ne vois pas trop comment le faire avec overpass.

Re: Récupérer toutes les intersections/carrefours d'une ville ?

Publié : dim. mai 26, 2019 4:22 pm
par Winfried
C'est difficile à faire avec PostGIS pour un newbie ?

Re: Récupérer toutes les intersections/carrefours d'une ville ?

Publié : dim. mai 26, 2019 4:29 pm
par cquest
Voici mon script:

Code : Tout sélectionner

# Requête overpass-turbo
# [out:json][timeout:60]; {{geocodeArea:Paris}}->.paris; way[highway][name](area.paris); out body;>;out skel qt;
# export le résultat en geojson depuis overpass-turbo

ogr2ogr -f postgresql PG:dbname=$USER -nln rues_paris export.geojson
psql -c "copy (select a.name as nom1, b.name as nom2,
  st_x(st_centroid(st_collect(st_intersection(a.wkb_geometry, b.wkb_geometry)))) as lon,
  st_y(st_centroid(st_collect(st_intersection(a.wkb_geometry, b.wkb_geometry)))) as lat
from rues_paris a join rues_paris b on (st_intersects(a.wkb_geometry, b.wkb_geometry) and a.ogc_fid < b.ogc_fid and a.name != b.name)
group by 1,2 order by 1,2)
to STDOUT with (format csv, header true)" > croisements_rues_paris.csv

Re: Récupérer toutes les intersections/carrefours d'une ville ?

Publié : dim. mai 26, 2019 4:30 pm
par Winfried
Merci !