2012-11-03 2 views
1

나는 OSM의 API, XAPI 및 Overpass를 가지고 놀았습니다. 그러나 필요한 정보를 얻을 수는 없습니다. 거리의 모든 정보 노드를 얻는 것입니다. 여기에 예를 OpenStreetMap에서 거리에 대한 모든 정보 얻기

: http://www.openstreetmap.org/browse/way/5671291

이 (뉴욕에서) "와트 거리"라는 방법의 정보를 제공하지만, 모든 거리, 그것의 단지 부분이 아니다.

다른 부분 : 이 다른 OSM "방법"

에 분할 일부 거리로 발생 http://www.openstreetmap.org/browse/way/46116390

"이상을 갖는 동일한 거리의 모든 노드를 얻을 수있는 방법이 있나요 길 건너편에 모든 좌표를 가져 오는 "편도"?

감사합니다

답변

0

당신은 거리 이름을 조회하고 같은 이름을 가진 모든 방법을 얻기 위해 시도 할 수 있습니다. 그런 다음 모든 개별 노드를 가져갈 수 있으며 원하는 것을 보유해야합니다. 나는 Nominatim이 그 매핑을 수행하지만 당신이 언급 한 api에 익숙하지 않다는 것을 알고 있습니다.

또 다른 (아마도 더 성가신) 방법은 길의 노드를보고 그들이 어떤 방식으로 참여하는지 보는 것입니다. 예를 든다면 노드 42426060은 찾고있는 두 가지 방법의 일부입니다. 해당 노드의 방법을 쿼리하고 이름에 따라 일치시킬 수 있다면 자신을 병합 할 수 있습니다.

+0

나는 같은 이름으로 모든 길을 얻는 것에 대해 생각했지만 : 1) 거리 이름이 항상 같지는 않습니다 ("Rue de la Vie"및 "Rue la Vie"사례를 보았습니다) 2) 모든 "길"이 같은 노드에 연결되어있는 것은 아니므로 가장자리가 다른 노드와 연결되어야하는지를 아는 것은 힘든 수학적 작업이 될 것입니다. – FlamingMoe

+0

첫 번째 예제와 같은 문제를 결코 풀지 않을 것이라고 생각합니다 (Rue de la Vie). 이름이 다르거 나 다른 정보가 있으면 누가 처음에 병합해야한다고 말합니까? 하나 또는 두 개의 글자를 다르게 할 수있는 복잡한 일치 기능을 작성할 수는 있지만 많은 작업이 필요합니다 ... 다른 예에서는 실제로 연결되지 않은 거리를 병합하고 싶습니까 (그러나 같은 이름을 가짐).)? 당신의 질의가 제한적이라면, OSM 자체에서 실수를 바로 잡을 수도 있습니다 (그 이름 교정은 환영받을 것입니다) – Origin

관련 문제