IronPythonでWiiリモコンから値を取得(WiimoteLib.dllを使う方法)
下の準備用スクリプトをsetup_wii.pyという名前で保存する。
import clr clr.AddReferenceToFile("wiimotelib.dll") from WiimoteLib import * wii = Wiimote() def get_value(sender, args): global a a = args wii.WiimoteChanged += WiimoteChangedEventHandler(get_value) wii.Connect() wii.SetReportType(wii.InputReport.IRAccel, True)
wiimotelib.dllをManaged Library for Nintendo's Wiimote - Release: WiimoteLib v1.2からダウンロードして適当な場所に置く。
IronPythonの対話的コンソールで試してみる。
>>> import setup_wii >>> setup_wii.a <WiimoteChangedEventArgs object at 0x000000000000002B> >>> setup_wii.a.WiimoteState <WiimoteState object at 0x000000000000002C> >>> setup_wii.a.WiimoteState.IRState <WiimoteLib.IRState object at 0x000000000000002D [WiimoteLib.IRState]> >>> setup_wii.a.WiimoteState.IRState.X1 0.379091
赤外線カメラでとらえた光点の座標が取れました。簡単だー。
参考文献