2011-06-18 70 views
0

我正在研究黑莓應用程序,其中我需要在設備移動時檢索角度差異。這意味着運動開始和結束時的角度差異。調用某個函數必須是25度。黑莓設備運動角度差

簡而言之,當設備移動25度時調用一個函數。

+0

請幫我找到解決方案。 –

回答

1

請閱讀AccelerometerSensor docs,它在API 4.7.0及更高版本中可用。您可以檢索的所有數據在類AccelerometerData中描述,它是方向和加速度(重力數據)。

它詳細描述了更多如何從重力傳感器數據角度JavaME docs, "Mobile Sensor API" section

如果手機平放,加速度傳感器將告訴我們沿z軸的加速度(上下下)約爲1000(此值代表1G)。由於手機靜止不動,沿着X和Y軸(側身)的加速度大約爲0,重力只能向下。當屏幕朝下翻轉手機時,加速度計會在Z軸上給我們-1000的值。站在它的旁邊,會給我們沿着X軸或Y軸的1000或-1000的值,這取決於你放哪邊。將手機沿着X軸以45度角放置,會給我們Z軸上的±707和Y軸上的±707的值,因爲重力不會以其全部力量影響任何一個軸(您可以使用正弦函數和餘弦函數輕鬆計算每個軸的某個角度的值應爲多少)。使用來自加速度計的X軸和Y軸的值,我們可以隨時確定手機的位置,然後使用該值移動我們的飛船以避免進入小行星。

因此,我們可以計算出所有3個軸的加速度計數據,設備的水平角度是多少。