Condividi tramite


Inclinometer Classe

Definizione

Rappresenta un sensore inclinometro che fornisce valori di inclinazione, rollio e yaw corrispondenti agli angoli di rotazione rispettivamente intorno agli assi x, y e 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
Ereditarietà
Object Platform::Object IInspectable Inclinometer
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Esempio

Per un'implementazione di esempio, vedere l'esempio https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/Inclinometerdi inclinometro .

Commenti

I dati del sensore vengono forniti in relazione al sistema di coordinate del sensore fisso del dispositivo ed è indipendente dall'orientamento dello schermo. Per le applicazioni che si basano sui dati del sensore per il controllo di input o per modificare gli elementi sullo schermo, lo sviluppatore deve prendere in considerazione l'orientamento di visualizzazione corrente e compensare i dati in modo appropriato. Per altre info sul sistema di coordinate del sensore, vedi Dati del sensore e orientamento dello schermo.

L'esempio seguente illustra come un'app UWP compilata con XAML e C# usa il metodo GetDefault per stabilire una connessione a un inclinometro. Se non viene trovato un inclinometro integrato, il metodo restituirà un valore Null.

_inclinometer = Inclinometer.GetDefault();

L'esempio seguente illustra come un'app UWP compilata con XAML registra un gestore eventi 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);
    }
}

Nell'esempio seguente viene illustrato il gestore eventi 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);
    });
}

Cronologia delle versioni

Versione di Windows Versione dell'SDK Valore aggiunto
1607 14393 GetDefault(SensorReadingType)
1709 16299 FromIdAsync
1709 16299 GetDeviceSelector
1709 16299 MaxBatchSize
1709 16299 ReportLatency
2004 19041 ReportThreshold

Proprietà

DeviceId

Ottiene l'identificatore del dispositivo.

MaxBatchSize

Ottiene il numero massimo di eventi che possono essere inseriti in batch dal sensore.

MinimumReportInterval

Ottiene l'intervallo minimo di report supportato dall'inclinometro.

ReadingTransform

Ottiene o imposta la trasformazione che deve essere applicata ai dati del sensore. Le trasformazioni da applicare sono associate all'orientamento dello schermo con cui allineare i dati del sensore.

ReadingType

Ottiene il tipo di lettura del sensore.

ReportInterval

Ottiene o imposta l'intervallo di report corrente per l'inclinometro.

ReportLatency

Ottiene o imposta il ritardo tra batch di informazioni sul sensore.

ReportThreshold

Ottiene l'oggetto InclinometerDataThreshold per il sensore giroscopio.

Metodi

FromIdAsync(String)

Ottiene in modo asincrono il sensore dal relativo identificatore.

GetCurrentReading()

Ottiene la lettura corrente dell'inclinometro.

GetDefault()

Restituisce l'inclinometro predefinito per le letture assolute.

GetDefault(SensorReadingType)

Restituisce l'inclinometro predefinito basato su SensorReadingType.

GetDefaultForRelativeReadings()

Restituisce l'inclinometro predefinito per le letture relative.

GetDeviceSelector(SensorReadingType)

Ottiene il selettore del dispositivo.

Eventi

ReadingChanged

Si verifica ogni volta che l'inclinometro segnala una nuova lettura del sensore.

Si applica a

Vedi anche