gpt4 book ai didi

ios - 缩放会增加 self.map.visibleMapRect.origin.x 和 y,但为什么呢?

转载 作者:行者123 更新时间:2023-12-01 19:00:54 24 4
gpt4 key购买 nike

我通过测试发现MKMapView.visibleMapRect.origin.x向右(东)方向滚动 map 时会增加,MKMapView.visibleMapRect.origin.y向下滚动(南)方向时增加(假设北向上)。

我的问题是:为什么 MKMapView.visibleMapRect.origin.x放大时增加?

不是MKMapView原点可见区域的最左上角?那么,不会MKMapView.visibleMapRect.origin.x放大时减小,因为左上角现在在 map 上较低?
MKMapView.visibleMapRect.origin.y 是有道理的会增加,因为现在可见区域实际上比以前低。

那么为什么MKMapView.visibleMapRect.origin.x放大时增加?不应该!!

最佳答案

map View 的visibleMapRect属性是 MKMapRect .
MKMapRect使用 MKMapPoint 定义一个矩形单位。

map 的MKMapPoint网格系统是几乎覆盖整个世界的一组固定点。

原点位于左上角,大约对应于 85° N、180° W 的实际坐标。

x 轴从 0(最左/最西)开始,向右/向东正向增加到某个非常大的数字。

y 轴从 0(顶部/最北端)开始向底部/南部正向增加到某个非常大的数字。
visibleMapRect表示部分 全世界的MKMapRect map 目前正在显示。

所以visibleMapRect的由来只是 MKMapPoint在全世界的MKMapRect当前显示在 map View 的左上角。

假设您正在查看整个世界。visibleMapRect.origin可能是 x=0,y=0。
放大时,正在查看的新左上角点位于前一个左上角点的右侧。
当您进一步向右移动时,x 轴值会增加。

也许这个粗略的图表会有所帮助:

                                    x-axis  
0 ----------------------------- positive --->
________________________________________________
0 | |
: | |
: | +=============================+ |
y-axis : | |A | |
: | | +==========+ | |
: | | |B | | |
positive | | | | | |
: | | +==========+ | |
: | | | |
: | +=============================+ |
v | |
|________________________________________________|
  • 外面的矩形是整个世界的固定MKMapRect (MKMapRectWorld)。
  • 第一个带有左上角“A”的内部矩形是一些初始visibleMapRect .它的“A”可能类似于 x=5000, y=2000。
  • 左上角“B”的第二个内部矩形是一些放大的visibleMapRect .它的“B”将具有更高的 x 和更高的 y。

  • 顺便说一句,你真的不需要关心具体的 MKMapRectMKMapPoint重视自己。这个相关问题的答案也可能有所帮助: Difficulties understanding MapKit Coordinate System .

    关于ios - 缩放会增加 self.map.visibleMapRect.origin.x 和 y,但为什么呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23051328/

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