SONY VAIO P搭載のSensor & Location Platform対応センサー
今年(2010)に発売されたSONY VAIO P、実は、Windows 7 Sensor & Location Platformに対応した方位センサーを搭載しています。
コントロールパネルでセンサーデバイスを確認すると、
Windows API Code Packを使って、以下の様なプログラムを書いて、どんなセンサーが搭載されているか調べてみます。
using Microsoft.WindowsAPICodePack.Sensors; … foreach (var s in SensorManager.GetAllSensors()) { writer.WriteLine("Sensor:TypeId={0}, FriendlyName={1}", s.TypeId, s.FriendlyName); writer.WriteLine("Supported Properties:"); foreach (var p in s.GetSupportedProperties()) { writer.WriteLine(" Property:FormatId={0}, PropertyId={1}", p.FormatId, p.PropertyId); } } |
このプログラムを実行すると、VAIO-Pは、以下のセンサーを搭載していることがわかります。
Sensor:TypeId=76b5ce0d-1d77-414d-93a1-e127f40bdf6e, Magnetic Sensor
Supported Properties:
Property:FormatId=db5e0cf2-cf1f-4c18-b46c-d86011d62150, PropertyId=2
Property:FormatId=1637d8a2-4248-4275-865d-558de84aedfd, PropertyId=11
Property:FormatId=1637d8a2-4248-4275-865d-558de84aedfd, PropertyId=12
以上のIdをもとに、以下のページ
https://msdn.microsoft.com/en-us/library/dd318969(v=VS.85).aspx
で、照らし合わせると、センサー種別は、
SENSOR_TYPE_COMPASS_3D ※カテゴリーは、SENSOR_CATEGORY_ORIENTATION
プロパティは、
FormatId=db5e0cf2-cf1f-4c18-b46c-d86011d62150, PropertyId=2
SENSOR_DATA_TYPE_TIMESTAMP
計測した時間、データ型はVT_FILETIME
FormatId=1637d8a2-4248-4275-865d-558de84aedfd
PropertyId=11は、
SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_MAGNETIC_NORTH_DEGREES
磁極の北極に対する角度、データ型はVT_R8
PropertyId=12は、
SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_TRUE_NORTH_DEGREES
本当の北極に対する角度、データ型はVT_R8
であることがわかります。
あとは、
https://msdn.microsoft.com/ja-jp/windows/ff436242.aspx
https://msdn.microsoft.com/ja-jp/windows/ff512470.aspx
https://msdn.microsoft.com/ja-jp/windows/ff432760.aspx
辺りを参考に、プログラムを書けば、方位情報をアプリケーション、ソリューションに取り入れることができます。
皆さん、ぜひ、お試しください。そして素敵なアプリ、ソリューションが出来たら、お知らせくださいね。