Поделиться через


Inclinometer Класс

Определение

Представляет датчик инклинометра, который предоставляет значения шага, поворота и поворота, соответствующие углам поворота вокруг осей x, y и z соответственно.

public ref class Inclinometer sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Inclinometer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Inclinometer
Public NotInheritable Class Inclinometer
Наследование
Object Platform::Object IInspectable Inclinometer
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

Пример реализации см. в примере https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/Inclinometerинклинометра .

Комментарии

Данные датчика предоставляются относительно фиксированной системы координат датчика устройства и не зависят от ориентации дисплея. Для приложений, использующих данные датчика для управления вводом или для управления элементами на экране, разработчик должен учитывать текущую ориентацию экрана и соответствующим образом компенсировать данные. Дополнительные сведения о системе координат датчика см. в разделе Данные датчика и ориентация дисплея.

В следующем примере показано, как приложение UWP, созданное с помощью XAML и C#, использует метод GetDefault для установления соединения с инклинометром. Если встроенный инклинометр не найден, метод вернет значение NULL.

_inclinometer = Inclinometer.GetDefault();

В следующем примере показано, как приложение UWP, созданное с помощью XAML, регистрирует обработчик событий ReadingChanged .

private void ScenarioEnable(object sender, RoutedEventArgs e)
{
    if (_inclinometer != null)
    {
        // Establish the report interval
        _inclinometer.ReportInterval = _desiredReportInterval;

        Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
        _inclinometer.ReadingChanged += new TypedEventHandler<Inclinometer, InclinometerReadingChangedEventArgs>(ReadingChanged);

        ScenarioEnableButton.IsEnabled = false;
        ScenarioDisableButton.IsEnabled = true;
    }
    else
    {
        rootPage.NotifyUser("No inclinometer found", NotifyType.StatusMessage);
    }
}

В следующем примере показан обработчик событий ReadingChanged .

async private void ReadingChanged(object sender, InclinometerReadingChangedEventArgs e)
{
    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
    {
        InclinometerReading reading = e.Reading;
        ScenarioOutput_X.Text = String.Format("{0,5:0.00}", reading.PitchDegrees);
        ScenarioOutput_Y.Text = String.Format("{0,5:0.00}", reading.RollDegrees);
        ScenarioOutput_Z.Text = String.Format("{0,5:0.00}", reading.YawDegrees);
    });
}

Журнал версий

Версия Windows Версия пакета SDK Добавленная стоимость
1607 14393 GetDefault(SensorReadingType)
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatency
2004 19041 ReportThreshold

Свойства

DeviceId

Возвращает идентификатор устройства.

MaxBatchSize

Возвращает максимальное количество событий, которые могут быть пакетированы датчиком.

MinimumReportInterval

Возвращает минимальный интервал отчета, поддерживаемый инклинометром.

ReadingTransform

Возвращает или задает преобразование, которое необходимо применить к данным датчика. Применяемые преобразования привязаны к ориентации экрана, с которой выравниваются данные датчика.

ReadingType

Возвращает тип считывания датчика.

ReportInterval

Возвращает или задает текущий интервал отчета для инклинометра.

ReportLatency

Возвращает или задает задержку между пакетами информации о датчике.

ReportThreshold

Возвращает объект InclinometerDataThreshold для датчика гирометра.

Методы

FromIdAsync(String)

Асинхронно получает датчик из его идентификатора.

GetCurrentReading()

Возвращает текущее значение инклинометра.

GetDefault()

Возвращает инклинометр по умолчанию для абсолютных значений.

GetDefault(SensorReadingType)

Возвращает инклинометр по умолчанию на основе SensorReadingType.

GetDefaultForRelativeReadings()

Возвращает инклинометр по умолчанию для относительных значений.

GetDeviceSelector(SensorReadingType)

Возвращает селектор устройства.

События

ReadingChanged

Происходит каждый раз, когда инклинометр сообщает о новых показаниях датчика.

Применяется к

См. также раздел