2012-08-12 2 views
1

MKMapView 내부에 디스플레이하기 위해 SQLite 데이터베이스 내에 다수의 포인트 피처를 저장하고 있습니다. 인덱스/퍼포먼스 이유로 위도/경도 대신에 맵의 투영에 좌표를 사전 계산하고 저장하고 싶습니다. 그러나이 데이터베이스를 파이썬에서 외부 적으로 만들므로 단순히 MKMapPointForCoordinate() 함수를 사용할 수는 없습니다. MKMapView에서 사용되는 투영법은 무엇입니까? 설명서에는 mercator projection이지만 예상 한대로 web mercator 프로젝션으로 표시되지 않습니다. Lat/Lon에서 X/Y 좌표를 계산하려면 어떻게해야합니까?MKMapView에서 사용되는 투영법은 무엇입니까?

+0

코드를 게시하면 문제를 더 잘 이해하는 데 도움이됩니다. –

답변

3

개인적으로 나는 잘못된 각도에서 문제에 접근하고 있다고 느낍니다. '색인/성능상의 이유로'위도/경도 좌표를 저장하고 싶지 않다고 말합니다. 이러한 이유는 무엇입니까?

데이터베이스 내부의 지리적 좌표의 저장, 인덱싱 및 쿼리는 일반적인 문제가 아닙니다. 그것들은 단순히 두 개의 십진수이며 인덱싱과 쿼리는 매우 간단합니다. 파일에지도 관련 데이터를 저장할 때

, 당신은 항상 값 (위도와 경도) 좌표 저장해야합니다 및 :

애플은 또한 당신은 단지 자신의 문서에 좌표가 아닌 MKMapPoints을 저장하는 말 지도 지점이 아닙니다.

아마도 당신은 데이터베이스에 저축 좌표를 갖는 몇 가지 문제점을 공유 할 수 있습니까?

+0

설명서에서 Apple의 권장 사항에 대한 귀하의 요지를 말합니다. 나는 이것을 보지 못했다. 그들은 미래에 예측을 바꿀 수있는 자유를 갖기 위해 아마도 이것을 할 것입니다. 아직도, 당신은 투상을 알고 싶을 수도 많은 이유가있다. 직사각형 타일로 지형지 물을 집계하여 쿼리 속도를 높이고 싶습니다. 타일이 매핑 좌표에 있으면 훨씬 잘 작동합니다. –

1

저는 제작 한 오버레이 타일이 해당 투영에 있고 적합하기 때문에 webmercator라고 확신합니다. 그러나 다른 참석자들이 말했듯이, 당신은 위도/경도로 보관하는 것이 좋습니다. 위도/경도로 결과를 쿼리하려면 꽤 좋은 출발점을 제공하십시오. 적도를 떠나기 때문에 그리드는 사각형이 아니지만 직사각형입니다.

관련 문제