我正在使用智能手机来控制桌面上的指针的应用程序。我在商店里看到很多这种类型的应用程序,所以我知道这不是不可能的!我正在为大学做这个,我不是在寻找完美的应用程序,但我无法确定我应该使用哪种传感器......我尝试使用旋转矢量传感器,它适用于俯仰(指针的y值)但方位角不一样(对于x轴)......我没有过滤数值。你认为我必须改变传感器还是仅仅是过滤数据的问题?有小费吗?Android版Air Mouse,哪款传感器?
编辑:在阿里的视频陀螺鼠标是真正的光滑和准确,它说这是非常简单的事,但不适合我!我旋转矩阵,得到角度变化,然后我将它映射到像素,但它非常不准确(方位角)!我会发布代码,以清楚地表明我在做什么:
//get values from Rotation Vector sensor
SensorManager.getRotationMatrixFromVector(rotationMatrix, sensorValues);
SensorManager.getAngleChange(orientationValues, rotationMatrix, prevMatrix);
prevMatrix = rotationMatrix;
azimuth += orientationValues[0];
pitch += orientationValues[1];
//getAngleChange returns radians so I multiply by 100
float dX = (azimuth - lastX)*100.f;
float dY = (pitch - lastY)*100.f;
pixel.x += dX;
pixel.y += dY;
// store values
lastX = azimuth;
lastY = pitch;
prevMatrix = rotationMatrix;
加速度计怎么样? –
@PozzoApps:方向不准确 –
这不是一个答案,只是一个评论,我也很好奇,这就是为什么我投了你的问题=] –