2012-03-31 272 views

回答

1

我認爲X應該是0,y應該是正值,而z接近0則指南針指向地球。 (這意味着手機保持垂直)。

一般而言,從0角,指南針角應該是這樣

float accelerometerMaxRange = 10; // This is NOT right, but it's a good value to work with 
float newAngle = 0; 
if (z > 9) { 
    // Phone is horizontally flat, can't point towards gravity, really. Do whatever you think is right 
} else { 
    newAngle = (float)(x * 90/accelerometerMaxRange); 
    if (y < 0) { 
     newAngle = 180 - newAngle; 
    } 
} 
+0

頂部的問題是,有多少是'accelerometerMaxRange') – 2013-06-25 16:35:30