J'essaie d'attraper l'accélération de l'appareil en utilisant CoreMotion. J'ai ce code:iphone - Accélération Coremotion toujours zéro!
pour la mise en
if (motionManager == nil)
motionManager = [[CMMotionManager alloc] init];
motionManager.deviceMotionUpdateInterval = framesPorKeyframes/60.0; //60 Hz
motionManager.accelerometerUpdateInterval = framesPorKeyframes/60.0; //60 Hz
[motionManager startDeviceMotionUpdates];
referenceAttitude = nil;
pour la lecture
vec3f_t translation = {0.0f, 0.0f, 0.0f};
CMRotationMatrix rotation;
CMAcceleration userAcceleration;
CMDeviceMotion *deviceMotion = motionManager.deviceMotion;
attitude = deviceMotion.attitude;
rotation = attitude.rotationMatrix;
userAcceleration = deviceMotion.userAcceleration;
[userAccelerationLpf addAcceleration:userAcceleration withTimestamp:deviceMotion.timestamp];
// The user acceleration we want to use is the one computed by userAccelerationLpf
userAcceleration.x = userAccelerationLpf.x;
userAcceleration.y = userAccelerationLpf.y;
userAcceleration.z = userAccelerationLpf.z;
NSLog(@"acc = %f, %f, %f", userAcceleration.x, userAcceleration.y, userAcceleration.z);
Tout ce que j'ai ici sont des zéros !!!!!!!!
La méthode de lecture se répète à 30 Hz.
ceci est pris de l'échantillon d'Apple et ne devrait pas me donner des zéros! des indices?
merci.
Juste pour vérifier, utilisez-vous ceci sur l'appareil et non sur le simulateur? –
Je cours sur l'appareil. – SpaceDog
J'ai des données de rotation mais pas d'accélération ... – SpaceDog