Classiclll's Blog

an old boy

WiiRimokon for Proce55ing : Class Design part 2

イメージ 1

イメージ 2

WiiRimokon for Proce55ing : Class Design part 2

Part 1 では

下記のクラスを妄想した。
class PApplet あなたのスケッチ

class WRJ4P5 Wii本体(接続可能リモコンは最大7台)

class WiiRimokon Wiiリモコン

これだけじゃ、足りない。

Wiiリモコンの状態を表すクラス
class RimokonEvent
【Constants】
 static int A Aボタン
 static int B Bボタン
 static int DOWN ↓ボタン
 static int HOME HOMEボタン
 static int LEFT ←ボタン
 static int MINUS ?ボタン
 static int ONE 1ボタン
 static int PLUS +ボタン
 static int RIGHT →ボタン
 static int TWO 2ボタン
 static int UP ↑ボタン
【Constructor】
 RimokonEvent()
【Method】
 boolean isPressed(int button) 上のいずれかのボタンが【今】押されたか確かめる
 boolean wasPressed(int button) 上のいずれかのボタンが押されているか確かめる。
 boolean wasReleased(int button) 上のいずれかのボタンが放されているか確かめる。

おつぎはヌンチャク
 三軸加速度センサー(上下、前後、左右方向に加わった加速度を計測)
 C、Zボタン
 コントロールスティック
がついている。
class Nunchaku
【propaties】
 Loc sencedVal センサー計測値(-256~+256)
 Loc acceleration 加速度(m/sec/sec)
 Loc velocity 速度(m/sec)
 Loc position 位置(m)
 Loc cursor 十字キーカーソルの位置(%)
 Loc stick スティックの位置(%)
これだけじゃ、足りない。
ヌンチャクの状態を表すクラス
class NunchakuEvent
【Constants】
 static int C Cボタン
 static int Z Zボタン
【Constructor】
 NunchakuEvent()
【Method】
 boolean isPressed(int button) 上のいずれかのボタンが【今】押されたか確かめる
 boolean wasPressed(int button) 上のいずれかのボタンが押されているか確かめる。
 boolean wasReleased(int button) 上のいずれかのボタンが放されているか確かめる。
 Loc stickPosition() スティックの値(-1~1)

最後はクラコン
 三軸加速度センサーは無いけど、
  a、b、十字、X、Y、L、R、ZR、ZLボタン(L、Rボタンはアナログ)
  L、Rスティック
  -(マイナス)/Select、Home、+(プラス)/Startボタン
がついている。
class Kurakon
【propaties】
 Loc cursor 十字キーカーソルの位置(%)
 Loc lStick Lスティックの位置(%)
 Loc rStick Rスティックの位置(%)
さらに加えて
クラコンの状態を表すクラス
class KurakonEvent
【Constants】
 static int A Aボタン
 static int B Bボタン
 static int DPAD_DOWN ↓ ボタン
 static int DPAD_RIGHT →ボタン
 static int DPAD_LEFT ← ボタン
 static int DPAD_UP ↑ボタン
 static int HOME HOMEボタン
 static int MINUS ?ボタン
 static int PLUS +ボタン
 static int LEFT_TRIGGER Lトリガーボタン
 static int RIGHT_TRIGGER Rトリガーボタン
 static int LEFT_Z L-Zボタン
 static int RIGHT_Z R-Zボタン
 static int X Xボタン
 static int Y Yボタン
【Constructor】
 KurakonEvent()
【Method】
 boolean isPressed(int button) 上のいずれかのボタンが【今】押されたか確かめる
 boolean wasPressed(int button) 上のいずれかのボタンが押されているか確かめる。
 boolean wasReleased(int button) 上のいずれかのボタンが放されているか確かめる。
 Loc lStickPosition() Lスティックの値(-1~1)
 Loc rStickPosition() Rスティックの値(-1~1)
 float getLeftTrigger() Lトリガーボタンの押され具合
 float getRightTrigger() Rトリガーボタンの押され具合


---------ふう、----できるかな?--------




Processing については、
日本語サポートサイトからたどれるP5インフォメーション→言語が参考になる。
(解説してあるのは一昔前の版だから注意が必要だけど、loop()→draw()の読み替えだけで大抵OK)
・山本徹(thoru)さんがFunProce55ingで解説してくれている。(【簡潔】で【わかり易く】、【楽しい】解説)
例題集は習作集と区別するためにこちらに置いている。
・P5のスケッチからアプレットを作り、【ジオシティーズ】にアップする手順をまとめたので、参考に。