陀螺仪太敏感了

时间:2013-10-02 13:48:24

标签: android

好吧我试图让三角形移动。现在它确实有效,但我无法在中间平衡它。它太敏感了。这是我的代码:

float accelx = event.values[0];
if (accelx > PreviousX2) {
    if (posx > -2) {
    Triangle.setPosX(posx - 0.1f);
    Triangle.setPosY(posy - 0.1f);
    Triangle.setPosZ(posz - 0.1f);
    }
}
if (accelx < PreviousX2) {
    if (posx < 0) {
    Triangle.setPosX(posx + 0.1f);
    Triangle.setPosY(posy + 0.1f);
    Triangle.setPosZ(posz + 0.1f);
    }
}
break;

它确实有效,但我无法平衡它到中间...如何使它不那么敏感,因此它能够保持在屏幕中间,因为现在它只是停留在屏幕的右侧或左侧

1 个答案:

答案 0 :(得分:0)

您可以围绕accelx的一组值创建死区。

例如,以下代码将过滤掉围绕X轴的任何小于1 rad / s的加速度:

float accelx = event.values[0];
if (accelx < 1) {
    // Value isn't significant enough, so i
    return;
} else {
    // Proceed as usual
}