【问题标题】:How do magnitude, accuracy, and proximity relate to each other with regards to CLLocationAccuracy关于 CLLocationAccuracy,幅度、准确性和接近度如何相互关联
【发布时间】:2018-03-09 20:16:50
【问题描述】:

我想知道CLLocationAccuracy 对象的幅度值是否代表以米为单位的距离。在Xcode docs 中是这样描述的:

描述:这个值的大小。 //这个值是准确的 价值?

对于任何值 x,x.magnitude.sign 是 .plus。如果 x 不是 NaN, x.magnitude 是 x 的绝对值。全局 abs(:) 函数 当您需要查找绝对值时,它提供了更熟悉的语法。 另外,因为 abs(:) 总是返回相同类型的值, 即使在一般情况下,使用函数而不是幅度 鼓励财产。

清单 1 让 targetDistance: Double = 5.25 让 throwDistance: Double = 5.5

让边距 = targetDistance - throwDistance // 边距 == -0.25 // margin.magnitude == 0.25

// 使用 'abs(_:)' 而不是 'magnitude' print("Missed the target by (abs(margin)) 米。") // 打印“错过目标 0.25 米。”

大小与距离有什么关系?我可以看到它与原始的 proximity 值不同,因为它高于 3。

例如(来自测试的控制台输出):

[CLBeacon (uuid:12345678-B644-4520-8F0C-720EAF059935, major:1, minor:3, proximity:3 +/- 5.39m, rssi:-71)] //a beacon that is being ranged
major: 1
minor: 3
accuracy: 5.38695083568272

2.64546246474154 --- magnitude

您可以看到准确度为 5.3869...接近度值为 3...幅度为 2.6454 - 它们之间的关系如何?

【问题讨论】:

  • CLLocationAccuracy 只是 Double 的 typedef,所以幅度只是 Double 的幅度,这是文档所说的绝对值。

标签: ios core-location ibeacon


【解决方案1】:

准确度值尝试估计距离信标的距离(以米为单位)。几年前,苹果支持工程师在一个私人苹果论坛上证实了这一点,这与我的测试是一致的。该属性的文档说是“在信标设备上引用测量设备的位置的单位为米的 sigma 水平精度。” 这仅仅意味着 iOS 的最佳猜测是您与信标是关于以米为单位的精度值。

proximity 值只是一个枚举,它表示以下值及其原始整数等效项:

unknown      0
immediate    1
near         2
far          3

这些基本上是从准确度字段派生的距离“桶”。 0-0.5 的精度将使您立即接近。 0.5-3 米的准确度值将使您接近,而准确度值 > 3 将使您远离。如果无法计算精度,则返回未知(在这种情况下通常返回 -1。)

“幅度”问题中显示的文档是关于与绝对值相关的数学函数。它与信标无关,与 CLBeacon 的准确性和接近度无关。

【讨论】:

  • 出色的答案,一如既往。每当我看到关于 iBeacons 的写得很好、内容丰富的答案时,我敢打赌你就是作者。 :)(已投票。)
  • 糟糕的是,对于信标读数,准确度实际上意味着距离,而对于位置管理器来说,准确度读数是一个“混乱圈”(描述可能的区域的圆的半径)在允许错误之后,实际上可能会定位读数。)
【解决方案2】:
  • 准确性只是为您提供数据准确性的价值。

    至少对于 CLLocation,我们使用不同的参数,例如 kCLLocationAccuracyKilometer 等。文档地址:CLLocation.desiredAccuracy

  • 距离很明显,距离信标有多近(距离:3 +/- 5.39m)在 3 到 5.4 米之间。

  • 一般意义上的量级只是一个绝对值,但不确定它如何适合您的问题...除非有人能纠正我,否则它肯定没用。

【讨论】:

    猜你喜欢
    • 2011-12-13
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 1970-01-01
    • 2012-01-22
    相关资源
    最近更新 更多