SENSOR_CATEGORY_ORIENTATION
The SENSOR_CATEGORY_ORIENTATION category contains sensors that provide information about physical orientation. Compasses provide navigational orientation. Inclinometers measure slope or elevation. Distance sensors measure the proximity of some object to the sensor.
Platform-defined sensor types
This category includes the following platform-defined sensor types.
Sensor type | Description |
---|---|
SENSOR_TYPE_AGGREGATED_DEVICE_ORIENTATION | Specifies the current device orientation by returning a Quaternion and, in some cases, a rotation matrix. (The rotation matrix is optional.) |
SENSOR_TYPE_AGGREGATED_QUADRANT_ORIENTATION | Specifies the current device orientation in degrees. |
SENSOR_TYPE_AGGREGATED_SIMPLE_DEVICE_ORIENTATION | Specifies the device orientation as an enumeration. (This type specifies the device orientation using one of four general quadrants: 0 degrees, 90 degrees counter clockwise, 180-counter clockwise, and 270 degrees counter clockwise.) |
SENSOR_TYPE_COMPASS_1D {A415F6C5-CB50-49D0-8E62-A8270BD7A26C} |
One-axis compasses. |
SENSOR_TYPE_COMPASS_2D {15655CC0-997A-4D30-84DB-57CABA3648BB} |
Two-axis compasses. |
SENSOR_TYPE_COMPASS_3D {76B5CE0D-17DD-414D-93A1-E127F40BDF6E} |
Three-axis compasses. |
SENSOR_TYPE_DISTANCE_1D {5F14AB2F-1407-4306-A93F-B1DBABE4F9C0} |
One-axis distance sensors. |
SENSOR_TYPE_DISTANCE_2D {5CF9A46C-A9A2-4E55-B6A1-A04AAFA95A92} |
Two-axis distance sensors. |
SENSOR_TYPE_DISTANCE_3D {A20CAE31-0E25-4772-9FE5-96608A1354B2} |
Three-axis distance sensors. |
SENSOR_TYPE_INCLINOMETER_1D {B96F98C5-7A75-4BA7-94E9-AC868C966DD8} |
One-axis inclinometers. |
SENSOR_TYPE_INCLINOMETER_2D {AB140F6D-83EB-4264-B70B-B16A5B256A01} |
Two-axis inclinometers. |
SENSOR_TYPE_INCLINOMETER_3D {B84919FB-EA85-4976-8444-6F6F5C6D31DB} |
Three-axis inclinometers. |
Platform-defined data fields
Platform-defined property keys for this category are based on SENSOR_DATA_TYPE_ORIENTATION_GUID: {1637D8A2-4248-4275-865D-558DE84AEDFD}
This category includes the following platform-defined data fields.
Data field name and PID | Type | Description |
---|---|---|
SENSOR_DATA_TYPE_ANGULAR_VELOCITY_X_DEGREES_PER_SECOND (PID = 10) |
VT_R8 | Gyrometer x-axis velocity, in degrees per second. |
SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Y_DEGREES_PER_SECOND (PID = 11) |
VT_R8 | Gyrometer y-axis velocity, in degrees per second. |
SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Z_DEGREES_PER_SECOND (PID = 12) |
VT_R8 | Gyrometer z-axis velocity, in degrees per second. |
SENSOR_DATA_TYPE_TILT_X_DEGREES (PID = 2) |
VT_R4 | Inclinometer x-axis angle, in degrees. |
SENSOR_DATA_TYPE_TILT_Y_DEGREES (PID = 3) |
VT_R4 | Inclinometer y-axis angle, in degrees. |
SENSOR_DATA_TYPE_TILT_Z_DEGREES (PID = 4) |
VT_R4 | Inclinometer z-axis angle, in degrees. |
SENSOR_DATA_TYPE_DISTANCE_X_METERS (PID = 8) |
VT_R4 | X-axis distance, in meters. |
SENSOR_DATA_TYPE_DISTANCE_Y_METERS (PID = 9) |
VT_R4 | Y-axis distance, in meters. |
SENSOR_DATA_TYPE_DISTANCE_Z_METERS (PID = 10) |
VT_R4 | Z-axis distance, in meters. |
SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_X_MILLIGAUSS (PID = 19) |
VT_R8 | Magnetometer x-axis field strength, in milligauss. |
SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_Y_MILLIGAUSS (PID = 20) |
VT_R8 | Magnetometer y-axis field strength, in milligauss. |
SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_Z_MILLIGAUSS (PID = 21) |
VT_R8 | Magnetometer z-axis field strength, in milligauss. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_X_DEGREES (PID = 5) |
VT_R4 | Compass x-axis heading, in degrees. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_Y_DEGREES (PID = 6) |
VT_R4 | Compass y-axis heading, in degrees. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_Z_DEGREES (PID = 7) |
VT_R4 | Compass z-axis heading, in degrees. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_MAGNETIC_NORTH_DEGREES (PID = 11) |
VT_R8 | Compensated compass heading relative to magnetic North in degrees. This compensation causes the measurement of the heading angle to be represented as if a compass device is laying flat on level ground where the PC is located. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_TRUE_NORTH_DEGREES (PID = 12) |
VT_R8 | Compensated compass heading relative to true North in degrees. This compensation causes the measurement of the heading angle to be represented as if a compass device is laying flat on level ground where the PC is located. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_MAGNETIC_NORTH_DEGREES (PID = 13) |
VT_R8 | Uncompensated compass heading relative to magnetic North in degrees. The measurement of the heading angle is represented as measured on the plane that the compass device is installed relative to. |
SENSOR_DATA_TYPE_MAGNETIC_HEADING_TRUE_NORTH_DEGREES (PID = 14) |
VT_R8 | Uncompensated compass heading relative to true North in degrees. The measurement of the heading angle is represented as measured on the plane that the compass device is installed relative to. |
SENSOR_DATA_TYPE_QUADRANT_ANGLE_DEGREES (PID = 15) |
VT_R8 | Aggregated quadrant-orientation, in degrees. |
SENSOR_DATA_TYPE_ROTATION_MATRIX (PID = 16) |
VT_VECTOR or VT_UI1 | Counted array representing the orientation of the device in 3D space as a 3x3 rotation matrix (VT_VECTOR or VT_UI1). Data for vector types is always serialized as VT_UI1 (an array of unsigned, 1-byte characters). This data field must contain each value as a single-precision float (VT_R4). This array is expressed as a matrix: These values are ordered in the rotation matrix data field array as follows: M11,M12,M13,M21,M22,M23,M31,M32, M33Note that for devices implementing support for the in-box Windows 8 HID sensor class driver, this data field is optional. If only SENSOR_DATA_TYPE_QUATERNION is implemented, SENSOR_DATA_TYPE_ROTATION_MATRIX will be calculated and populated for each data report sent. Devices not using the in-box HID sensor class driver need to calculate and expose both SENSOR_DATA_TYPE_QUATERNION and SENSOR_DATA_TYPE_ROTATION_MATRIX sensor data fields. |
SENSOR_DATA_TYPE_QUATERNION (PID = 17) |
VT_VECTOR or VT_UI1 | The x, y, z, w values of a quaternion representing the orientation of the device in 3D space. (VT_VECTOR or VT_UI1). Data for vector types is always serialized as VT_UI1 (an array of unsigned, 1-byte characters). This data field must contain each value as a single-precision float (VT_R4). The order of the values in this array is as follows: [x,y,z,w] The W value of a quaternion is limited to [0,1] instead of the full [-1, 1]. All rotations must be stated in the forward direction (and not the reverse). Note: The output of quaternion should be in normalized format. When quaternions are expressed in normalized format, the values will satisfy the following: |
SENSOR_DATA_TYPE_SIMPLE_DEVICE_ORIENTATION (PID = 18) |
VT_UI4 | Aggregated device-orientation, specified as an enumeration. (The enumeration values correspond to one of four quadrants.) |
SENSOR_DATA_TYPE_MAGNETOMETER_ACCURACY (PID = 22) |
VT_I4 | Magnetometer accuracy reading, specified as an enumeration. |
Requirements
Minimum supported client | Windows 7 |
Minimum supported server | None supported |
Header | sensors.h |
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for