在理解MKMapPoint
时,有人能指出正确的方向吗?
据我所知,它与在2D表面上铺设地球表面有关。但我不明白每个"指向"衡量?
有人能在代码中给我一个例子吗?
答案 0 :(得分:1)
没有太多东西..只是一个在2D地图上显示点的结构......这里是文档所说的..
MKMapPoint二维地图投影上的一个点。
typedef struct { 双x; 双y; MKMapPoint;
字段x沿x轴的点的位置 地图。 y沿y轴的点的位置 地图。讨论如果投影地球的曲面 在平坦的表面上,你得到的是一个二维版本的 经度线看起来平行的地图。这种地图经常是 用于同时显示地球的整个表面。一个 MKMapPoint数据结构代表了这个二维点 地图。
地图点的实际单位与使用的基础单位相关联 绘制MKMapView的内容,但你永远不需要 直接担心这些单位。您主要使用地图点 简化使用坐标复杂的计算 曲面上的数值。通过转换为地图点,您可以 在平坦表面上执行这些计算,这通常很多 更简单,然后根据需要转换回来。你可以映射 使用MKMapPointForCoordinate和坐标值和地图点 MKCoordinateForMapPoint函数。
将地图相关数据保存到文件时,应始终保存 坐标值(纬度和经度)而不是地图点。
可用性适用于iOS 4.0及更高版本。在MKGeometry.h中声明
答案 1 :(得分:0)
如果你想在具有特定真实世界大小的地图上绘制某些内容,例如缩放,那么在你的计算中,你会将任意给定长度(以米为单位)与MKMapPointsPerMeterAtLatitude(...)
的结果相乘得到MKMapPoint单位的大小。
如果地图仅显示地球的一小部分,MKMapPointsPerMeterAtLatitude(...)
将为地图中涉及的所有纬度提供大致相同的常数值。在这种情况下,您可以简单地使用地图中间的纬度作为此函数的参数。
答案 2 :(得分:0)
另请参阅文档中的墨卡托投影用于转换。这是一个额外的观察:北极(y)轴方向似乎与标准墨卡托投影的方向相反(正方向向下而不是向上)。