我现在想要如何将经度,纬度转换为iPhone编程中等效的xy坐标组件。 (我只使用CoreLocation编程,并希望在没有任何地图的情况下在iPhone屏幕上显示一个点。)
感谢
答案 0 :(得分:3)
确切的转换取决于您想要显示的地球的哪个部分,并且沿着经度的拉伸根据纬度而变化,至少在Mercator中。
话虽如此,即使您不想显示实际的MapKit地图,最简单的方法是创建MKMapView并将其保留在一边。如果您设置要在其上正确显示的区域(通过设置region
属性),则可以使用convertCoordinate:toPointToView:
从经度和纬度映射到2d屏幕位置。
请注意,MKMapView会调整您设置的区域,以便对其给出的视口有意义(例如,如果您给它一个短胖矩形的区域,但它的视图是一个高大的薄矩形,它'选择覆盖整个短脂肪矩形的最小区域,但是是一个高大的薄矩形的形状),所以如果指定一个左上角是特定地理位置的区域,请不要混淆,但是那个地理位置不是'在视图的左上角。