Compartilhar via


OrientationSensor.GetCurrentReading Método

Definição

Obtém a leitura do sensor atual.

public:
 virtual OrientationSensorReading ^ GetCurrentReading() = GetCurrentReading;
OrientationSensorReading GetCurrentReading();
public OrientationSensorReading GetCurrentReading();
function getCurrentReading()
Public Function GetCurrentReading () As OrientationSensorReading

Retornos

A leitura do sensor atual.

Exemplos

O exemplo a seguir demonstra como um aplicativo UWP criado com XAML e C# recupera a leitura atual do sensor de orientação.

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);
    }
}

Comentários

Um aplicativo pode usar esse método para sondar o sensor para a leitura atual como uma alternativa para registrar um manipulador de eventos ReadingChanged . Essa seria a alternativa preferencial para um aplicativo que atualiza sua interface do usuário a uma taxa de quadros específica. Seja sondando uma ou muitas vezes, o aplicativo deve estabelecer um ReportInterval desejado. Isso informa ao driver do sensor que os recursos devem ser alocados para atender às solicitações de sondagem subsequentes

Antes de usar o valor retornado desse método, o aplicativo deve primeiro marcar que o valor não é nulo. (Se o valor for nulo e você tentar recuperá-lo, o Windows gerará uma exceção.)

Aplica-se a