2014-05-12 4 views
0

iPhone 용 오프라인지도 앱을 만들고 있습니다 (MKMapKit 사용). 그것은 국가의 명부가있을 것이다. 사용자가 국가를 선택하면 모든 타일이 다운로드되어 iPhone에 저장됩니다. Open Street Map을지도 제공 업체로 사용하겠습니다.Open Street Map에서 국가 별 타일을 모두 다운로드하십시오.

(나는 대량 다운로드가 금지되어 있지만 한 국가의 타일은 꽤 작고 (약 200MB), 한 번만 다운로드된다는 점을 감안하면 적어도 은 문제라고 생각하지 않습니다.)

타일 URL을 다운로드하고 저장하기 위해 템플릿 URL @"http://c.tile.openstreetmap.org/{z}/{x}/{y}.png"을 사용할 것입니다. 내 문제는 어느 타일이 어느 나라에 속해 있는지를 판단하고 다운로드 할 것을 결정하는 방법을 모른다는 것입니다.

나는 다른 대답으로 this link을 찾았지만 .pbf 파일 만 다운로드 할 수 있습니다 (어떤 내용인지는 모릅니다). 대륙 별.

답변

2

첫 번째 : 실제로 모든 줌 레벨에서 모든 타일을 잡으려면 다시 OSM Tile Usage Policy을주의해서 읽어야합니다. 모든 타일을 한 번만 다운로드하려면 (개발자 환경 용) existing downloaders을 사용하면 원하는 국가를 선택하고 다운로드 할 수 있습니다. 이렇게하면 1000 개의 작은 이미지가있는 디렉토리가 생겨 며칠이 걸릴 수 있습니다.

더 나은 방법은 스타일링에 대한 완전한 제어를 제공하고 커뮤니티 자원을 강조하지 않는 자신의 (데스크톱 또는 서버 기반) 타일 렌더링 체인을 설정하는 것입니다. 서버 기반 렌더링 스택을 설정하는 방법에 대한 자세한 자습서는 www.switch2osm.org를 참조하십시오.

0

is 문제입니다. 200MB의 타일을 한 번만 다운로드하는 것은 의심의 여지가 있습니다. 트래픽이 아니라 타일이 rendered이어야합니다. 그러나 당신을 정확하게 이해한다면, 모든 사용자는이 200MB를 다운로드 할 것입니다.

대신 당신은 MAM 약 downloading raw data ( PBF 인)과 하나 render your own raster tiles가 이미 제안 생각, 또는 OsmAndNavit 같은 다른 인기있는 애플 리케이션에 의해 수행과 같은 벡터지도를 작성해야합니다.