CMAltimeter奇数据

时间:2014-10-03 07:51:40

标签: ios cmaltimeter

我有一个应用程序记录来自CMAltimeter startRelativeAltitudeUpdatesToQueue:block的数据。录音很好但有些数据很奇怪。这是我用于录制的非常简单的片段。

NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[self.altitude startRelativeAltitudeUpdatesToQueue:queue withHandler:^(CMAltitudeData *altitudeData, NSError *error) {
        dispatch_async(dispatch_get_main_queue(), ^ {
            NSLog(@"Altitude: %f", altitudeData.relativeAltitude.floatValue);
        });
    }];

在城市中行走时进行录制,我得到一些奇怪的值。你可以看到它像我从+7米到-225米的自由落体。如文件中所述,海拔高度相对于第一个海拔记录为零。

有人解释我理解CMAltimeter的工作原理是否有问题吗?或者这是一个错误吗?

由于

2014-10-03 09:09:02.669 XXXXXXXXX[1811:13772492] altitude: 9.252784729003906
2014-10-03 09:09:02.669 XXXXXXXXX[1811:13772492] altitude: 9.252784729003906
2014-10-03 09:09:02.669 XXXXXXXXX[1811:13772492] altitude: 8.666885375976562
2014-10-03 09:09:02.669 XXXXXXXXX[1811:13772492] altitude: 7.081024169921875
2014-10-03 09:09:02.669 XXXXXXXXX[1811:13772492] altitude: -28.24831390380859
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -61.20027160644531
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -28.24831390380859
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -40.86483764648438
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -40.86483764648438
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -40.86483764648438
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -45.53067016601562
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -53.98106384277344
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -64.6231689453125
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -53.98106384277344
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -28.13791656494141
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -28.13791656494141
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -92.41580200195312
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -146.3153533935547
2014-10-03 09:09:02.670 XXXXXXXXX[1811:13772492] altitude: -160.0170745849609
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -181.5329132080078
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -181.5329132080078
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -181.5329132080078
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -199.3322296142578
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -193.2239837646484
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -199.3322296142578
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -209.9459381103516
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -209.9459381103516
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -187.6910858154297
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -187.6910858154297
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -197.9417877197266
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -201.6117706298828
2014-10-03 09:09:02.671 XXXXXXXXX[1811:13772492] altitude: -201.6117706298828
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -201.6117706298828
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -225.4467010498047
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -225.4467010498047
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -225.4467010498047
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -190.1396331787109
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -190.1396331787109
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -220.1163177490234
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -220.1163177490234
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -217.6054229736328
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -216.1069793701172
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -216.1069793701172
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -216.1069793701172
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -220.0596771240234
2014-10-03 09:09:02.672 XXXXXXXXX[1811:13772492] altitude: -208.4894256591797
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -208.4894256591797
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -181.7436370849609
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -120.3368835449219
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -37.50768280029297
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -37.50768280029297
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -37.50768280029297
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -35.98821258544922
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -35.98821258544922
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -33.94368743896484
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -33.94368743896484
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -25.50093841552734
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -25.50093841552734
2014-10-03 09:09:02.673 XXXXXXXXX[1811:13772492] altitude: -25.50093841552734
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: -51.27220153808594
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: -16.14826202392578
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 2.517410278320312
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 3.932975769042969
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 4.590446472167969
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 6.611000061035156
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 6.611000061035156
2014-10-03 09:09:02.674 XXXXXXXXX[1811:13772492] altitude: 5.907508850097656

3 个答案:

答案 0 :(得分:0)

您的搜索结果很可能是由于您的代码中存在一个小错误:

NSLog(@"Altitude: %f", altitudeData.relativeAltitude.floatValue);

应该是:

NSLog(@"Altitude: %f", altitudeData.relativeAltitude.doubleValue);

格式化程序'%f'需要一个双精度值。

答案 1 :(得分:0)

气压计根据压力变化计算相对高度,因此天气变化会使压力发生变化,从而改变相对高度。

答案 2 :(得分:-1)

我的理解是%f期望浮动。 %lf需要加倍