- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我计划开发一个基于陀螺仪的项目,例如使用陀螺仪数据旋转opengl纹理,苹果是否发布了有关陀螺仪的示例代码或任何有关将陀螺仪与openGL集成的教程...我搜索谷歌我没有找到任何东西,除了core motion guide和 event handling guide .
更新:如果有可用的示例,请告诉我..
最佳答案
要获取陀螺仪更新,您需要创建一个运动管理器对象和可选(但推荐)的引用姿态对象
因此,在您的接口(interface)定义中添加:
CMMotionManager *motionManager;
CMAttitude *referenceAttitude;
根据文档,您应该只为每个应用程序创建这些管理器之一。我建议通过单例访问 MotionManager,但如果您只实例化您的类一次,那么您可能不需要做一些额外的工作。
然后在你的 init 方法中你应该像这样分配运动管理器对象;
motionManager = [[CMMotionManager alloc] init];
referenceAttitude = nil;
当您想要启用运动更新时,您可以创建一个enableMotion方法或仅从init方法中调用它。以下将存储初始设备姿态并使设备继续采样陀螺仪并更新其姿态属性。
-(void) enableMotion{
CMDeviceMotion *deviceMotion = motionManager.deviceMotion;
CMAttitude *attitude = deviceMotion.attitude;
referenceAttitude = [attitude retain];
[motionManager startDeviceMotionUpdates];
}
对于虚拟现实应用程序,使用陀螺仪和 OpenGL 非常简单。您需要获取当前陀螺仪姿态(旋转),然后将其存储在 OpenGL 兼容矩阵中。下面的代码检索并保存当前设备运动。
GLfloat rotMatrix[16];
-(void) getDeviceGLRotationMatrix
{
CMDeviceMotion *deviceMotion = motionManager.deviceMotion;
CMAttitude *attitude = deviceMotion.attitude;
if (referenceAttitude != nil) [attitude multiplyByInverseOfAttitude:referenceAttitude];
CMRotationMatrix rot=attitude.rotationMatrix;
rotMatrix[0]=rot.m11; rotMatrix[1]=rot.m21; rotMatrix[2]=rot.m31; rotMatrix[3]=0;
rotMatrix[4]=rot.m12; rotMatrix[5]=rot.m22; rotMatrix[6]=rot.m32; rotMatrix[7]=0;
rotMatrix[8]=rot.m13; rotMatrix[9]=rot.m23; rotMatrix[10]=rot.m33; rotMatrix[11]=0;
rotMatrix[12]=0; rotMatrix[13]=0; rotMatrix[14]=0; rotMatrix[15]=1;
}
根据您想要做什么,您可能需要反转它,这非常简单。旋转的逆就是它的转置,这意味着交换列和行。所以上面就变成了:
rotMatrix[0]=rot.m11; rotMatrix[4]=rot.m21; rotMatrix[8]=rot.m31; rotMatrix[12]=0;
rotMatrix[1]=rot.m12; rotMatrix[5]=rot.m22; rotMatrix[9]=rot.m32; rotMatrix[13]=0;
rotMatrix[2]=rot.m13; rotMatrix[6]=rot.m23; rotMatrix[10]=rot.m33; rotMatrix[14]=0;
rotMatrix[3]=0; rotMatrix[7]=0; rotMatrix[11]=0; rotMatrix[15]=1;
如果您想要偏航角、俯仰角和横滚角,则可以使用 轻松访问它们
attitude.yaw
attitude.pitch
attitude.roll
关于iphone - 苹果陀螺仪示例代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3245733/
是否可以为字符串对象定义代数? 例如: 苹果 + 苹果 = 2 个苹果 苹果 + 橙 = 橙 + 苹果 苹果 + 3.5 苹果 = 4.5 苹果 是否有内置函数可以做到这一点?是否有必要创建类结构?
我将为餐厅创建一个 iOS 应用程序,这样您就可以通过该应用程序轻松支付食物费用。所以看看苹果的规则: https://developer.apple.com/app-store/review/gui
当我通过在断点处停止来调试程序时,队列和堆栈显示为 size=0(当它们不是时),但其他变量(如 vector )工作正常。 MacOS 10.14.1 Mojave Cmake 3.12.3 Xco
我正在尝试在圆形图上重现圆形末端,但我自己无法解决。 我试过谷歌但找不到准确的术语来重新创建它。 任何人都可以引导我朝着正确的方向前进或告诉我我在寻找什么吗? 我想要一个看起来像这样的圆形图 http
出于某种原因,我的脚本拒绝直接从 Text Wrangler 运行,但在导入到终端时运行正常。 import math def main(): print("This program find
我在 mac 上,我写了很多 python 脚本。 每次我需要运行它们时,我都必须输入“python script_name.py”。有什么方法可以让我只需要键入“p script_name.py”吗
我刚刚在 Mac OS X (Snow Leopard) 上安装了 python 2.6,当我启动 IDLE 时它一直在退出! 我通过以下方式删除了所有 python 安装:rm -rf/Librar
北京时间12月18日晚间消息,据国外媒体报道,亚马逊、谷歌和苹果公司周三达成一项罕见的合作伙伴关系,旨在打造智能家居新标准,让消费者使用起来更方便。 当前,亚马逊、谷歌和苹果都在积极争抢智能家居用
我一直在研究我们是否可以创建一个应用程序,可以在苹果的 native 媒体播放器中播放 protected DRM 视频文件。但我可以收集到的是,苹果将不允许受 DRM 保护的视频文件通过媒体播放器进
个人开发者通常需要多长时间才能被接受加入开发者计划? 我今天付了微薄的钱,但我感到不耐烦。 最佳答案 第二天我就被录取了,感觉很棒。还带着我的照片和那封电子邮件;-) 关于iphone - 苹果 iP
我是 CIT 的理学学士学生。我有一个项目,我想在某种主机/客户端中使用 Java 小程序和 JDBC。 我的小程序在本地主机上正常工作,但是当我将其部署到 apache Web 服务器上时,我失去了
一周前,我在代码中编写了一个名为 getline 的函数,但该函数不起作用。从那时起,每当我将函数命名为 getline 并尝试编译它时,它都不起作用。如果我将函数名称更改为其他名称,它会再次起作用。
我在使用苹果时遇到问题 examples对于 vDSP。我尝试了所有这些,但最后我需要卷积样本。我什至无法通过链接器获取它: Undefined symbols for architecture i3
我正在尝试将 Apple map 集成到我的 iPhone 应用程序中,以显示两个位置之间的路线。但它不会显示任何路线,并且会简单地在控制台中打印大量消息。 我位于印度孟买。当我尝试在 iPhone
也许你们都看到了Apple’s HTML5 showcase .问题是,他们没有在网上提供任何可下载的内容,对吗? 有没有人找到像 theirs 这样的 360 示例?我们可以按原样下载和使用,而不是
friend 们,请帮忙! 我不知道如何做“wait.until”。 我将 Appium 与 UIAutomator 结合使用。 我的测试会等到新应用程序的页面加载完毕,并且文本字段中的“文本 1”将
Android 比较 2 个图像以使用位图代码并告诉水果类别是水果(苹果/香蕉)还是不是水果。 我有问题与 Bitmap 和 BitmapFactory 比较有运行时错误,我有问题的解决方案。 act
Apple 有一个特殊的 URL,可用于指向物理位置的超链接,触发本地 map 应用程序启动并呈现指定位置: http://maps.apple.com/?q=SEARCH According to
我正在使用 MKMapView 将本地 map 添加到我的 iOS 应用程序。我只想确定是否需要任何类型的身份验证 key 或应用程序 ID?我会将此应用程序上传到 Apple Store。 最佳答案
你好,我想在苹果 map 上做针点聚类。它的可能解决方案是什么。现在我的屏幕上显示了一个针点的苹果 map 。 Pin point分组后的代码是什么。提前致谢 最佳答案 在 map 上聚类/显示大量点
我是一名优秀的程序员,十分优秀!