OrientationSensor.GetCurrentReading | getCurrentReading Method

Ruft die aktuellen Sensordaten ab.

Syntax


var orientationSensorReading = orientationSensor.getCurrentReading();

Parameter

Methode besitzt keine Parameter.

Rückgabewert

Typ: OrientationSensorReading

Der aktuelle Sensorwert.

Hinweise

Eine Anwendung kann diese Methode verwenden, um den Sensor für den aktuellen Wert als Alternative zur Registrierung eines ReadingChanged-Ereignishandlers abzurufen. Dies wäre die bevorzugte Alternative für eine Anwendung, dessen Benutzeroberfläche zu bestimmten Frameraten aktualisiert wird. Die Anwendung muss ein gewünschtes ReportInterval einrichten, ganz gleich, ob einmal oder mehrmals abgerufen wird. Dies informiert den Sensortreiber darüber, dass Ressourcen zugeordnet werden sollten, um nachfolgende Abrufanforderungen zu erfüllen

Vor der Verwendung des Rückgabewerts dieser Methode muss die Anwendung zunächst prüfen, ob der Wert nicht NULL ist. (Wenn der Wert NULL ist und Sie versuchen, ihn abzurufen, wird eine Ausnahme generiert.)

Das folgende Beispiel zeigt, wie eine mit XAML und C# erstellte Windows Store-App die aktuelle Messung für den standardmäßigen Ausrichtungssensor abruft.


private void DisplayCurrentReading(object sender, object args)
{
    OrientationSensorReading reading = _sensor.GetCurrentReading();
    if (reading != null)
    {
        // Quaternion values
        SensorQuaternion quaternion = reading.Quaternion;   // get a reference to the object to avoid re-creating it for each access
        ScenarioOutput_X.Text = String.Format("{0,8:0.00000}", quaternion.X);
        ScenarioOutput_Y.Text = String.Format("{0,8:0.00000}", quaternion.Y);
        ScenarioOutput_Z.Text = String.Format("{0,8:0.00000}", quaternion.Z);
        ScenarioOutput_W.Text = String.Format("{0,8:0.00000}", quaternion.W);

        // Rotation Matrix values
        SensorRotationMatrix rotationMatrix = reading.RotationMatrix;
        ScenarioOutput_M11.Text = String.Format("{0,8:0.00000}", rotationMatrix.M11);
        ScenarioOutput_M12.Text = String.Format("{0,8:0.00000}", rotationMatrix.M12);
        ScenarioOutput_M13.Text = String.Format("{0,8:0.00000}", rotationMatrix.M13);
        ScenarioOutput_M21.Text = String.Format("{0,8:0.00000}", rotationMatrix.M21);
        ScenarioOutput_M22.Text = String.Format("{0,8:0.00000}", rotationMatrix.M22);
        ScenarioOutput_M23.Text = String.Format("{0,8:0.00000}", rotationMatrix.M23);
        ScenarioOutput_M31.Text = String.Format("{0,8:0.00000}", rotationMatrix.M31);
        ScenarioOutput_M32.Text = String.Format("{0,8:0.00000}", rotationMatrix.M32);
        ScenarioOutput_M33.Text = String.Format("{0,8:0.00000}", rotationMatrix.M33);
    }
}


Das folgende Beispiel zeigt, wie eine mit JavaScript erstellte Windows Store-App für Windows die aktuelle Messung für den standardmäßigen Ausrichtungssensor abruft.


function getCurrentReading() {
    var reading = sensor.getCurrentReading();
    if (reading) {
        // Quaternion values
        var quaternion = reading.quaternion;    // get a reference to the object to avoid re-creating it for each access
        document.getElementById("readingOutputQuaternion").innerHTML =
               "W: " + quaternion.w.toFixed(6)
            + " X: " + quaternion.x.toFixed(6)
            + " Y: " + quaternion.y.toFixed(6)
            + " Z: " + quaternion.z.toFixed(6);

        // Rotation Matrix values
        var rotationMatrix = reading.rotationMatrix;
        document.getElementById("readingOutputRotationMatrix").innerHTML =
               "M11: " + rotationMatrix.m11.toFixed(6)
            + " M12: " + rotationMatrix.m12.toFixed(6)
            + " M13: " + rotationMatrix.m13.toFixed(6)
            + " M21: " + rotationMatrix.m21.toFixed(6)
            + " M22: " + rotationMatrix.m22.toFixed(6)
            + " M23: " + rotationMatrix.m23.toFixed(6)
            + " M31: " + rotationMatrix.m31.toFixed(6)
            + " M32: " + rotationMatrix.m32.toFixed(6)
            + " M33: " + rotationMatrix.m33.toFixed(6);
    }
}


Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Keine unterstützt

Mindestens unterstütztes Telefon

Windows Phone 8

Namespace

Windows.Devices.Sensors
Windows::Devices::Sensors [C++]

Metadaten

Windows.winmd

Siehe auch

OrientationSensor

 

 

Anzeigen:
© 2014 Microsoft