J'ai juste commencé à réaliser un projet basé sur la réalité augmentée, j'ai obtenu l'emplacement GPS, le cap, et les deux variables manquantes pour manipuler la caméra virtuelle sont Pitch/Roll. Je me demande s'il existe une formule prête à l'emploi que je peux fusionner avec le projet. Pourrait m'épargner beaucoup de temps. Merci d'avance.Existe-t-il une formule prête à l'emploi pour obtenir les valeurs Pitch/Roll à partir de l'accéléromètre X/Y/Z de l'iPhone 3GS?
2
A
Répondre
0
J'ai le problème puisque, si un poste vraiment détaillé sur la solution peut être lue ici:
Get pitch and roll angles from the iPhone's accelerometer vector à gotoandplay.freeblog.hu
2
Je pense que this post à propos de l'accéléromètre iphone répondra à la plupart de vos questions, y compris l'exemple de code.
0
Vous pouvez accéder à la rotation de l'appareil par l'CMMotionManager
qui calcule les radians basé sur des données brutes (accéléromètre, gyro etc.). Assurez-vous d'activer les mises à jour du capteur:
if (motionMng.deviceMotionAvailable && !motionMng.deviceMotionActive) {
motionMng.deviceMotionUpdateInterval = 1.0/50.0;
[motionMng startDeviceMotionUpdates];
}
accès Après rotation - pitch
(x), roll
(y) et yaw
(z) - en interrogeant l'objet attitude
:
CMDeviceMotion *motion = [motionMng deviceMotion];
if (motion != NULL) {
float pitch = motion.attitude.pitch;
float roll = motion.attitude.roll;
float yaw = motion.attitude.yaw;
NSLog(@"ROTATION: x:%f y:%f z:%f", pitch, roll, yaw);
}
Ohh, si simplement pitch = accélération.x, roll = accélération.y. Et le composant acceleration.z me dit si l'appareil est à l'envers d'une manière ou d'une autre. Celui-ci m'aidera à créer en quelque sorte la "caméra gratuite à 360 degrés". Merci jilles. – Geri