Represents an accelerometer sensor.
This sensor returns G-force values with respect to the x, y, and z axes.
Syntax
var accelerometer = Windows.Devices.Sensors.Accelerometer;
Attributes
- DualApiPartitionAttribute()
- MarshalingBehaviorAttribute(Agile)
- StaticAttribute(Windows.Devices.Sensors.IAccelerometerStatics, NTDDI_WIN8)
- ThreadingAttribute(Both)
- VersionAttribute(NTDDI_WIN8)
Members
The Accelerometer class has these types of members:
Events
The Accelerometer class has these events.
| Event | Description |
|---|---|
| ReadingChanged | Occurs each time the accelerometer reports a new sensor reading. |
| Shaken | Occurs when the accelerometer detects that the PC has been shaken. |
Methods
The Accelerometer class has these methods. With C#, Visual Basic, and C++, it also inherits methods from the Object class.
| Method | Description |
|---|---|
| GetCurrentReading | Gets the current accelerometer reading. |
| GetDefault | Returns the default accelerometer. |
Properties
The Accelerometer class has these properties.
| Property | Access type | Description |
|---|---|---|
| Read-only | Gets the minimum report interval supported by the accelerometer. | |
| Read/write | Gets or sets the current report interval for the accelerometer. |
Remarks
Applications use the methods in this class to determine whether the sensor reading has changed or the device has been shaken.
Applications use the properties in this class to retrieve and adjust the sensor report interval.
The following example demonstrates how a Windows Store app built with XAML and C# uses the GetDefault method to establish a connection to an accelerometer. If no integrated accelerometer is found, the method will return a null value.
_accelerometer = Accelerometer.GetDefault();
The following example demonstrates how a Windows Store app built with XAML registers a ReadingChanged event handler.
private void ScenarioEnable(object sender, RoutedEventArgs e) { if (_accelerometer != null) { // Establish the report interval _accelerometer.ReportInterval = _desiredReportInterval; Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged); _accelerometer.ReadingChanged += new TypedEventHandler<Accelerometer, AccelerometerReadingChangedEventArgs>(ReadingChanged); ScenarioEnableButton.IsEnabled = false; ScenarioDisableButton.IsEnabled = true; } else { rootPage.NotifyUser("No accelerometer found", NotifyType.StatusMessage); } }
The following example shows the ReadingChanged event handler.
async private void ReadingChanged(object sender, AccelerometerReadingChangedEventArgs e) { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { AccelerometerReading reading = e.Reading; ScenarioOutput_X.Text = String.Format("{0,5:0.00}", reading.AccelerationX); ScenarioOutput_Y.Text = String.Format("{0,5:0.00}", reading.AccelerationY); ScenarioOutput_Z.Text = String.Format("{0,5:0.00}", reading.AccelerationZ); }); }
Requirements
|
Minimum supported client | Windows 8 [Windows Store apps, desktop apps] |
|---|---|
|
Minimum supported server | Windows Server 2012 [Windows Store apps, desktop apps] |
|
Minimum supported phone | Windows Phone 8 |
|
Namespace |
|
|
Metadata |
|
See also
Build date: 2/25/2013