我非常擅长在Android设备上使用传感器。我有以下代码(我从各种教程中获得)。
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType() == Sensor.TYPE_ROTATION_VECTOR)
{
float[] orientationVals = new float[3];
// Convert the rotation-vector to a 4x4 matrix.
SensorManager.getRotationMatrixFromVector(mRotationMatrix,
event.values);
SensorManager.getOrientation(mRotationMatrix, orientationVals);
orientationVals[0] = (float) Math.toDegrees(orientationVals[0]);
orientationVals[1] = (float) Math.toDegrees(orientationVals[1]);
orientationVals[2] = (float) Math.toDegrees(orientationVals[2]);
txtAzimuth.setText("Azimuth : "+d.format(orientationVals[0]) + '°');
txtPitch.setText("Pitch : "+d.format(orientationVals[1]) + '°');
txtRoll.setText("Roll : "+d.format(orientationVals[2]) + '°');
}
}
好的,所以我有这些价值观。如何根据手机的移动使用它们移动图像(各种标记)。例如,如果我将手机向右移动,图像应向左移动,当手机向后移动时,图像应向右移动。
我做了很多谷歌搜索,我发现的主要是OpenGl。
像这样:
OpenGl world using camera to find object
这个问题询问我想要什么,除了随机移动的对象。我希望对象的位置由我决定。
我不想使用OpenGL,因为它对我的应用来说太过分了。我可以以某种方式将传感器产生的值映射到移动图像吗?