OrientationSensor.GetCurrentReading 메서드

정의

현재 센서 판독값을 가져옵니다.

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

반환

현재 센서 판독값입니다.

예제

다음 예제에서는 XAML 및 C#으로 빌드된 UWP 앱이 방향 센서에 대한 현재 판독값을 검색하는 방법을 보여 줍니다.

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

설명

애플리케이션은 ReadingChanged 이벤트 처리기를 등록하는 대신 이 메서드를 사용하여 현재 읽기용 센서를 폴링할 수 있습니다. 이는 특정 프레임 속도로 사용자 인터페이스를 업데이트하는 애플리케이션에 대한 기본 대안입니다. 한 번 또는 여러 번 폴링하든 애플리케이션은 원하는 ReportInterval을 설정해야 합니다. 이렇게 하면 센서 드라이버에 후속 폴링 요청을 충족하기 위해 리소스를 할당해야 한다는 것을 알릴 수 있습니다.

이 메서드의 반환 값을 사용하기 전에 애플리케이션은 먼저 값이 null이 아니라는 것을 검사 합니다. 값이 null이고 검색하려고 하면 Windows에서 예외가 생성됩니다.

적용 대상