首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MKRoadWidthAtZoomScale in iOS 6?

MKRoadWidthAtZoomScale in iOS 6?
EN

Stack Overflow用户
提问于 2013-02-01 08:56:23
回答 2查看 955关注 0票数 7

来自MKRoadWidthAtZoomScale的文档

不应使用此函数检索iOS 6及更高版本中的道路宽度。

是否还可以使用另一个函数,还是iOS 6中缺少的功能?

如果您不应该使用该函数,那么它没有被废弃是很奇怪的。

EN

回答 2

Stack Overflow用户

发布于 2013-02-28 12:53:56

我会猜测它没有被反对,因为功能会在某个时候被重新加入。该函数在iOS 6中仍然工作,因为它在调用时不会造成崩溃,尽管输出并不有用。

如果您查看(Apple) Maps应用程序,您可以看到当您缩放到方向路径时,路径的宽度会在最大的缩放级别上增加。道路的宽度在这些高变焦水平上也会增加。显然,苹果公司内部有一种方法,可以知道放大时道路有多宽。也许它还没有经过全面的测试。

万一有人认为你还可以使用这个函数,下面是建议的道路宽度,从完全放大(MKZoomScale = 1)开始,然后放大。

代码:

代码语言:javascript
复制
for (float zoomScale=1; zoomScale>0.00001; zoomScale /= 2) {
    NSLog(@"zoomScale: %f Road Width: %f", zoomScale, MKRoadWidthAtZoomScale(zoomScale));
}

结果:

代码语言:javascript
复制
zoomScale: 1.000000 Road Width: 21.000000
zoomScale: 0.500000 Road Width: 32.000000
zoomScale: 0.250000 Road Width: 60.000000
zoomScale: 0.125000 Road Width: 96.000000
zoomScale: 0.062500 Road Width: 176.000000
zoomScale: 0.031250 Road Width: 288.000000
zoomScale: 0.015625 Road Width: 448.000000
zoomScale: 0.007812 Road Width: 768.000000
zoomScale: 0.003906 Road Width: 1536.000000
zoomScale: 0.001953 Road Width: 2048.000000
...

至于替换函数,我建议只创建一些值,这些值在最高的2或3缩放级别上运行良好,并且使用低于该值的常量值。

这是苹果地图的路径覆盖在低和高缩放。您可以看到,替代路线并没有考虑较大的道路宽度,但主要的路线宽度是点上。更改路由不会影响替代路由宽度。

票数 3
EN

Stack Overflow用户

发布于 2014-03-11 08:37:51

从iOS 7.1开始,在有关MKRoadWidthAtZoomScale的文档中不再有任何警告。它是在MKOverlayRenderer.h中定义的,这是在iOS 7.0中引入的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14642665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档