Surface の加速度センサーの値を取得する

「Windows ランタイム拡張機能」を使用すると比較的、簡単に加速度センサーの値の取得の実装が可能です。

以下は、Visual Studio 2015 での手順です。バージョンによって設定が異なる部分があるかと思います。

  1. Visual C++ の 「空のプロジェクト」 を作成
  2. プロジェクトに「Source.cpp」を追加して、下記をコピペ
#include <iostream>

using namespace Platform;
using namespace Windows::Devices::Sensors;

[MTAThread]
int main(void)
{
	Accelerometer^ accelerometer = Accelerometer::GetDefault();
	if (accelerometer)
	{
		accelerometer->ReadingChanged += ref new Windows::Foundation::TypedEventHandler<Accelerometer^, AccelerometerReadingChangedEventArgs^>(
			[](Accelerometer^ sender, AccelerometerReadingChangedEventArgs^ args) {
			std::cout << "X:" << args->Reading->AccelerationX;
			std::cout << "Y:" << args->Reading->AccelerationY;
			std::cout << "Z:" << args->Reading->AccelerationZ << std::endl;
		});
	}
	std::cin.get();
	return 0;
}
  1. プロジェクトのプロパティで「構成のプロパティ」→「C/C++」→「全般」→「追加の #using ディレクトリ」に下記の2つのパスを追加。

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcpackages\

C:\Program Files (x86)\Windows Kits\8.1\References\CommonConfiguration\Neutral\

  1. 同じ画面で「Windows ランタイム拡張機能の使用」を「はい (/ZW)」に設定
  2. 「構成のプロパティ」→「C/C++」→「コード生成」の「最小リビルドを有効にする」を「いいえ (/Gm-)」に設定
  3. プロジェクトをビルド&実行

スポンサーリンク
広告1
広告1

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
広告1