mrubyからLeapMotionを使えるようにするmrbgemを作りました

つい先日LeapMotionが手元に届いたので、
思わず嬉しくてLeapMotionのSDKを見ながらmrubyからLeapMotionを使うためのmrbgemを作ってしまいました。
まだすべての機能が実装できたわけではありませんが、とりあえず認識している手の数とか、
指の本数とか、指先の座標っぽいものとかはとれるようになりました。

というわけでGithubでソースコードは公開しています。
まだ全然READMEにまともな情報を書けていません。ごめんね!
あとUbuntuでしか動作確認してないから、他の環境ではそもそもコンパイル通るかしら怪しいです。


https://github.com/crimsonwoods/mruby-leapmotion


基本的にはLeapSDKの各クラスがほぼそのままmruby側に出ています。
違うのは名前空間代わりに使っているmoduleの名前がLeapじゃなくてLeapMotionなことくらいかな。

Githubにも上げてあるけど、基本的にはこんな感じで使います。

class MyListener < LeapMotion::Listener
  def on_frame(controller)
    puts "frame: " + controller.frame.to_s
  end
end

controller = LeapMotion::Controller.new
listener = MyListener.new

controller.add_litener(listener)

# ここは適当に待ちを入れてね!
# 待っている間にMyListener.on_frameがばしばし呼ばれるよ!

controller.remove_listener(listener)

ということでLeapMotionとmrubyで遊んでみましょう!