05-04-2013 04:24 PM
I discovered from another thread that there is no way to querry a device for rotational changes.
I wish to track acceleration data over time, but it seems to me with that with the XYZ axis fixed to the device (and not the earth), if the user rotates the device while moving, I have no way of knowing what happened relative to the earth frame. For example, with the device lying on a table, X=0, Y=0 but Z=1. This will be useful for figuring out where the device is when stationary. But if the device is accelerating sideways, one might get X=0, Y=1, Z=1. It seems to me that in this case there is no way to know which axis is actually doing the acceleration. It could be y or z, depending on whether the user rotated the device.
So it would appear that my only hope is to use device orientation. The problem is that this only gives 6 positions, not absolute angles. Thus, if the user holds the device at 45 degree angle, how shall I know?
Must I instruct users not to rotate the device while moving? Or is there another way? Does anyone know?