Как применить код калибровки к фактическому методу акселерометра? - PullRequest
1 голос
/ 18 сентября 2011

После одного или двух гугл я пришел с этим кодом, чтобы сохранить текущую позицию, в которой находится пользователь, и сохранить ее в NSUserDefaults. Это в моем представлении настроек: Код:

//Add code for calibrating accelerometer
        UIAcceleration *acceleration;
        float accelX = (acceleration.x - [[NSUserDefaults standardUserDefaults] floatForKey:@"X-Calibrate"]);
        float accelY = (acceleration.y - [[NSUserDefaults standardUserDefaults] floatForKey:@"Y-Calibrate"]);
        [[NSUserDefaults standardUserDefaults] setFloat:accelX forKey:@"X-Calibrate"];
        [[NSUserDefaults standardUserDefaults] setFloat:accelY forKey:@"Y-Calibrate"];

Для сброса калибровки я делаю: Код:

[[NSUserDefaults standardUserDefaults] setFloat:0 forKey:@"X-Calibrate"];
    [[NSUserDefaults standardUserDefaults] setFloat:0 forKey:@"Y-Calibrate"];

Теперь мне нужно немного помочь. Теперь, когда у меня есть эти значения в NSUserDefaults. Как бы я применил его к следующему коду, чтобы «полностью» выполнить калибровку? Вот код для акселерометра в настоящее время: Код:

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceration {
    AccelPoint.x += (acceration.x*50);
    if (AccelPoint.x < 0) {
        AccelPoint.x = 320;
    }
    if (AccelPoint.x > 320) {
        AccelPoint.x = 0;
    }
    playerSpeed += 0.066;
    AccelPoint.y += playerSpeed;
    Square.center = AccelPoint; 
}

Вот некоторые из переменных и как они определены: Код:

CGPoint AccelPoint;
float playerSpeed;

Спасибо!

Также быстрый маленький вопрос о сайте для этого кода акселерометра, я должен использовать if-elseif? Будет ли это более эффективным, или я должен оставить его в «если-если»?

...