OrientationSensor.GetCurrentReading メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のセンサーの読み取り値を取得します。
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 イベント ハンドラーを登録する代わりに、現在の読み取り用のセンサーをポーリングできます。 これは、特定のフレーム レートでユーザー インターフェイスを更新するアプリケーションの推奨される代替手段です。 ポーリングが 1 回か複数回かにかかわらず、アプリケーションは目的の ReportInterval を確立する必要があります。 これにより、後続のポーリング要求を満たすためにリソースを割り当てる必要があることをセンサー ドライバーに通知します
このメソッドの戻り値を使用する前に、アプリケーションは最初に値が null ではないことをチェックする必要があります。 (値が null で取得しようとすると、Windows によって例外が生成されます)。