从现在开始,我一直在努力CoreMotion Framework
。我想获得对应的角度Magnetic North
,当用户拥有 iOS 设备时,向其他方向移动,例如我有 iOS 设备,我目前面向北方(比如位置 A),然后我转身开始面向东方(位置乙)。现在我想要在面向位置 B中创建的角度对应于设备的磁北。
这就是我现在正在尝试的方式(在谷歌搜索时发现的某个地方)
[_motionManager startMagnetometerUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMMagnetometerData *magnetometerData, NSError *error)
{
double heading = 0.0;
double x = magnetometerData.magneticField.x;
double y = magnetometerData.magneticField.y;
//double z = motion.magneticField.field.z;
if (y > 0) heading = 90.0 - atan(x/y)*180.0/M_PI;
if (y < 0) heading = 270.0 - atan(x/y)*180.0/M_PI;
if (y == 0 && x < 0) heading = 180.0;
if (y == 0 && x > 0) heading = 0.0;
NSLog(@"Heading Angle = %f",heading);
}];
提前致谢。