- 其实我的做法比较奇葩, 只是写一个demo 来理解加速传感器和指南的的使用。
这个文章讲解加速器传感器: http://www.hangge.com/blog/cache/detail_545.html
- 先屡屡思路, 如何在手机旋转的时候,图片位置定位到现实场景。
1.图片定位:X,Y,也就把一张图片定位到屏幕上。
2.我们先说:定位X,我们从指南针api里可以获取当前指向南方的参数,然后根据一些数值变化,就可以把当前X坐标算出来。
3.那我们怎么把Y值算出来呢? 也就是根据加速器判断当前手机的摆放位置来获取一些参数,转化成Y值。
4.X,Y都知道了, 图片的位置也就相应的知道了。
5.还集成了百度地图的SDK,定制了一下地图的颜色,把地图的文字都去掉了。
叙述不佳,不好意思。
我的代码写的很烂,想看代码:https://github.com/liangtongzhuo/pokemongo-VR
给个Star吧, 我会很高兴😊,有觉得奇怪的可以问我 ,我这是临时起意写的
个人博客: http://www.liangtongzhuo.com
网友评论
假设我想设置始终是在手机方向上,也就是皮卡丘出现永远是在打开手机的正前方,这个是要怎么理解计算?
let angle = newHeading.magneticHeading
//转换成弧度后
let hudu = CGFloat(-1.0 * M_PI*newHeading.magneticHeading / 180.0)
let x = hudu + view.center.x
但是这样手机打开后就永远在最前面了。但是没法像你的像左右移动,皮卡丘能移出去屏幕
,具体我估计是我理解let x = -9*(angle)+view.center.x + 500有错误。
对于X的计算看的不是很明白,请教一下
微信:bulolo
let angle = CGFloat (newHeading.magneticHeading) 这个我清除具体意思
根据 angle的大小,自己计算X值,这个是基于什么? 是弧度吗?
我自己是把 angle转换成弧度。但是无法实现你的左右晃动能晃出屏幕。而是一直固定在屏幕固定位置
let x = -9*(angle)+view.center.x + 500
请问
这个计算x的具体是指的什么意思?