gpt4 book ai didi

ios - iOS 6 中的 MKRoadWidthAtZoomScale?

转载 作者:可可西里 更新时间:2023-11-01 03:33:10 25 4
gpt4 key购买 nike

来自 MKRoadWidthAtZoomScale 的文档:

You should not use this function to retrieve road widths in iOS 6 and later.

是否有其他功能可以替代使用,或者这只是 iOS 6 中缺少的功能?

奇怪的是,如果您不应该使用该功能,那么它没有被弃用。

最佳答案

我敢猜测它没有被弃用,因为该功能将在某个时候重新添加。该函数在 iOS 6 中仍然有效,因为它不会在调用时导致崩溃,即使输出没有用。

如果您查看 (Apple) map 应用程序,您会发现当您放大路线路径时,路径的宽度会在最高缩放级别增加。在那些高缩放级别下,道路的宽度也会增加。显然,Apple 有一种内部方法可以知道缩放时道路的宽度。可能还没有针对一般发布进行全面测试。

以防万一有人认为您仍然可以使用此功能,这里是建议的道路宽度,从完全放大 (MKZoomScale = 1) 和缩小开始。

代码:

for (float zoomScale=1; zoomScale>0.00001; zoomScale /= 2) {
NSLog(@"zoomScale: %f Road Width: %f", zoomScale, MKRoadWidthAtZoomScale(zoomScale));
}

结果:

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 缩放级别的值,并使用低于该级别的常量值。

这是低倍率和高倍率下的 Apple map 路线叠加图。您可以看到替代路线没有考虑较大的道路宽度,但主要路线宽度是正确的。更改路线不会影响替代路线宽度。

enter image description here

关于ios - iOS 6 中的 MKRoadWidthAtZoomScale?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14642665/

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