gpt4 book ai didi

ios7 - 理解MapKit坐标系的困难

转载 作者:行者123 更新时间:2023-12-04 00:39:16 25 4
gpt4 key购买 nike

我阅读了苹果文档

"A map point is an x and y value on the Mercator map projection" A point is a graphical unit associated with the coordinate system of a UIView

Point 和 MKPoint 在逻辑上有什么区别?我显然需要 CGPoint 来在屏幕上显示一些东西。那么为什么 MapKit 需要 MKMapPoint?

最佳答案

事实是 CGPointMKMapPoint结构恰好存储两个名为 x 的浮点值和 y是无关紧要的。

它们之所以被赋予不同的名称,是因为它们在逻辑上处理不同的坐标系、变换、范围和比例。

2D 世界地图需要一个大的、固定的坐标系,允许将纬度和经度转换为 map 上的一个固定点,而不管当前部分是什么显示在屏幕上。

范围MKMapPoint值很大,因为它们需要以足够高的分辨率(远远超出屏幕尺寸)表示世界坐标。

但是,您并不完全需要关心 MKMapPoint 的实际 .有时,您可能需要转换 CLLocationCoordinate2DMKMapPoint (或相反)但你不需要担心这些值,也不应该存储它们(文档建议不要这样做,因为将纬度和经度转换为 2D 投影的内部投影计算可能会在 iOS 版本之间发生变化).

您对 MKMapPoint 的使用仅基于您正在处理 map 的 2D 投影独立设备的屏幕尺寸或当前显示的 map 部分。


I obviously need CGPoint to display something on the screen.

是的,但是在添加注释或覆盖时,您通常会处理 CLLocationCoordinate2D值并让 map View 根据需要进行转换。

关于ios7 - 理解MapKit坐标系的困难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21094369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com