CMDeviceMotion¶
Inherits: RefCounted < Object
Fused sensor data combining accelerometer, gyroscope and magnetometer into attitude, gravity, user acceleration and bias-corrected rotation rate.
Description¶
Wraps Apple’s CMDeviceMotion. Use this instead of raw accelerometer/gyro data when you need device attitude, gravity-separated user acceleration, or bias-corrected rotation. Emitted by both CMMotionManager (handheld device) and CMHeadphoneMotionManager (AirPods).
See Apple’s CMDeviceMotion reference.
Tutorials¶
Properties¶
Enumerations¶
enum MagneticFieldCalibrationAccuracy: 🔗
MagneticFieldCalibrationAccuracy UNCALIBRATED = -1
The magnetometer has not been calibrated; magnetic_field is not reliable.
MagneticFieldCalibrationAccuracy LOW = 0
Low calibration accuracy.
MagneticFieldCalibrationAccuracy MEDIUM = 1
Medium calibration accuracy.
MagneticFieldCalibrationAccuracy HIGH = 2
High calibration accuracy.
Property Descriptions¶
Quaternion attitude_quaternion 🔗
void set_attitude_quaternion(value: Quaternion)
Quaternion get_attitude_quaternion()
Device attitude as a quaternion, relative to the reference frame chosen when starting updates.
Vector3 attitude_roll_pitch_yaw 🔗
Device attitude as Euler angles in radians: x is roll, y is pitch, z is yaw.
The gravity component of the acceleration, in G-forces, in device coordinates.
Heading in degrees, where 0° is the reference attitude. Returns -1 on platforms where heading is not available (e.g. macOS headphone motion, iOS < 11).
Bias-corrected magnetic field in microteslas. Check magnetic_field_accuracy to interpret reliability.
MagneticFieldCalibrationAccuracy magnetic_field_accuracy 🔗
void set_magnetic_field_accuracy(value: MagneticFieldCalibrationAccuracy)
MagneticFieldCalibrationAccuracy get_magnetic_field_accuracy()
Calibration accuracy of magnetic_field.
Bias-corrected rotation rate around each axis in radians per second.
The time at which the sample was taken, in seconds since device boot.
Acceleration imparted by the user, in G-forces, with gravity removed.