Salut,
Voilà ce que j'en ai fait, regarde un peut les résultats et si tu peux
l'améliorer. Il y a un bug avec les voies qui reviennent dans la commune
d'origine, à voir si c'est est acceptable.
SELECT
id
FROM
(
SELECT
highway.id,
highway.linestring,
ST_ClosestPoint(highway.linestring, ST_Intersection(admin.linestring,
highway.linestring)) AS intersection
FROM
relations
JOIN relation_members ON
relation_members.relation_id = relations.id AND
relation_members.member_type = 'W'
JOIN ways AS admin ON
admin.id = relation_members.member_id AND
ST_NPoints(admin.linestring) > 1
JOIN ways AS highway ON
-- les ways qui ne sont pas des autoroutes, qui ont un tag name et
qui sont > a 1km
highway.tags?'highway' AND
NOT highway.tags->'highway' IN ('proposed', 'motorway', 'trunk',
'motorway_link', 'trunk_link') AND
highway.tags?'name' AND
ST_Length(highway.linestring, false) > 1000 AND
ST_NPoints(highway.linestring) > 1 AND
-- avec une intersection
ST_Intersects(admin.linestring, highway.linestring)
WHERE
relations.tags?'type' AND
relations.tags->'type' = 'boundary' AND
relations.tags?'boundary' AND
relations.tags->'boundary' = 'administrative' AND
relations.tags?'admin_level' AND
relations.tags->'admin_level' = '8' AND
relations.tags?'ref:INSEE'
) AS t
WHERE
-- la taille de l'intersection par rapport a la longueur de la voie
est significative
ST_Line_Locate_Point(linestring, intersection) > 0.1 AND
ST_Line_Locate_Point(linestring, intersection) < 0.9
;
Le 16/05/2015 16:26, didier2020 a écrit :
c'est mieux avec la requete ...
Le samedi 16 mai 2015 à 16:25 +0200, didier2020 a écrit :
j'ai bati un truc a partir de la requete de christian
sur une base osmosis .
j'ai pas réussi a aggreger les communes - longueur du way dans la
commune.
Le samedi 16 mai 2015 à 11:42 +0200, Frédéric Rodrigo a écrit :
Le 15/05/2015 18:36, Christian Quest a écrit :
Suite à cet échange et à une demande de didier2020, j'ai sorti un CSV
des highway qui portent un nom et qui croisent plusieurs communes.
Les motorway ont été retiré, et c'est trié par nombre de communes
croisées, puis par kilométrage décroissant.
La liste des codes INSEE des communes croisées est indiquée.
C'est ici: http://osm105.openstreetmap.fr/~cquest/routes.csv
A affiner pour une future analyse osmose ?
Si vous avais une requête qui tourne sur base osmosis je prends.
_______________________________________________
Talk-fr mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/talk-fr
_______________________________________________
dev-fr mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/dev-fr