首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在iPhone算法上实现水平罗盘?

在iPhone算法上实现水平罗盘?
EN

Stack Overflow用户
提问于 2010-03-27 01:47:54
回答 4查看 1.8K关注 0票数 0

如果你正朝东(90度),水平罗盘看起来就像这样。

代码语言:javascript
运行
复制
85----90---95

如果你正面临西北方向355度的问题,它应该是这样的:

代码语言:javascript
运行
复制
350----355---0

当你转动指南针时,这个数字应该从0 -> 360 -> 0开始循环。

所以,我的问题是,您将如何在iPhone上实现这样的视图?我有几个想法:

  1. 用所有的数字和勾标制作一个长图像,并在指南针的航向改变时向左/向右移动,
  2. 将视图中的部分创建为瓷砖,并在指南针的航向与罗盘的航向移动时附加它们,并根据需要在其上写入数字。

你会怎么解决这个问题?我主要是寻找算法的建议,但如果你有代码或伪代码演示,这也是有帮助的。

EN

Stack Overflow用户

发布于 2010-09-10 06:40:02

您只需要实现位置管理器功能,就可以找到iPhone所指向的确切方向。

所以,你可以检查这个:

代码语言:javascript
运行
复制
CLLocationManager *locationManager;
[locationManager startUpdatingHeading];

当您调用startUpdatingHeading()时,它将调用"- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading“方法,需要从位置管理器重写该方法。

这就是你可以找到的方向,iPhone 3GS是指向newHeading.magneticHeading或newHeading.trueHeading。

你会惊讶于你能得到同样的方向,就像磁罗盘给你的一样。

票数 -1
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2527829

复制
相关文章

相似问题

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