2012-09-12 103 views
1

我已經使用此代碼來獲得重力值。但問題是,當我將iPhone保持在桌面上時,它仍顯示0.99的價值。可以有人告訴我原因嗎?代碼是重力計算

sx = acceleration.x * kFilteringFactor + sx * (1.0 - kFilteringFactor); 
sy = acceleration.y * kFilteringFactor + sy * (1.0 - kFilteringFactor); 
sz = acceleration.z * kFilteringFactor + sz * (1.0 - kFilteringFactor); 

float aValue = sqrt(sx*sx+sy*sy+sz*sz); 

[gLabel setText:[NSString stringWithFormat:@"%.2f",aValue]]; 

回答

0

至少在Android版是正確的,是因爲重力的。獲得0的唯一方法是自由落體。如果它在桌子上,那麼存在施加到「不下落」的力,其與重力(1G)的量級相同並且反方向。