せっかくRubyをやり始めたのに、Ruby on Railsだけしかやらないなんてつまらない。
なので、昔、ちょっとだけ触ったことのあるruby-processingをやってみようと思います。
一番簡単な方法としては
[code lang=text]
gem install ruby-processing
[/code]
があるらしい。でも、インストールできないことはないけど、古い状態のものになってしまうみたい。Processingは2.0以降からかなり使いやすくなってるので、どうせだったら、最新版を入れたいので、gitで持ってくる方法を試してみた。
ruby-processingをもっと知って更なるイケメンになろう
前準備
必要なコマンド群が揃ってるか確かめる。必要なのは
- java
- ruby
- gem
- rake
- wget
- git
なかったら適当にbrewとかでインストールしたらいいと思います。
Processingのインストール
Processing公式サイトから最新版をダウンロードしてアプリケーションフォルダにぶち込んでおきましょう。
JRubyのインストール
ProcessingはJavaでつくられているため、それとRubyを結合するのに、JRubyが必要になります。1
[code lang=text]
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenv install -l | grep jruby
[/code]
これで最新バージョンっぽいのを見つけて
[code lang=text]
rbenv install jruby-1.7.9
rbenv rehash
rbenv global jruby-1.7.9
[/code]
とかすればOKです。
この処理は時間がかかるので、気長に待ちましょう。
ソースコードのダウンロード
何はともあれとりあえずダウンロード!
適当なフォルダに移動してダウンロードしましょう。今回は~/sandboxで作業したいと思います。
[code lang=text]
cd ~/sandbox
git clone https://github.com/jashkenas/ruby-processing.git
[/code]
ruby-processingのインストール
ダウンロードできたら、ダウンロードしたフォルダに移動して、コンパイルしましょう。
[code lang=text]
cd ruby-processing
rake
[/code]
これでいけるはず!・・・だったのですが、エラー出た。
WARNING: you need to set PROCESSING_ROOT in ~/.rp5rc
エラーですが、これはRSpec(Rubyのテストツール)のエラーでとりあえず、無視してもいいみたいです。
でもエラーを残しておくと気持ち悪いので、
[code lang=text]
echo 'PROCESSING_ROOT: "/Applications/Processing.app/Contents/Java"' > ~/.rp5rc
[/code]
として、もう一回rake
を叩いておきましょう。このときの/Applicationsは自分がProcessingをインストールしたパスに変えてください
フォルダ内を確認するとruby-processing-2.4.4.gemみたいなのができてると思います。これで
[code lang=text]
gem install ruby-processing-2.4.4.gem
[/code]
としてみる。
インストールが完了したら
[code lang=text]
rbenv rehash
[/code]
を忘れずに。(rbenvを使ってrubyやらなんやらをインストールしてる場合)
[code lang=text]
rp5 -v
[/code]
としてバージョンが表示されれば、インストールは終わっているはず!
実際に動かしてみる
例によって作業フォルダは~/sandbox/ruby-processing-test
[code lang=text]
mkdir ~/sandbox/ruby-processing-test
cd ~/sandbox/ruby-processing-test
touch test-sketch.rb
[/code]
このtest-sketch.rbに以下のコードを書いてみましょう。
[code lang=ruby]
def setup
@counter = 0.0
size 640, 480
end
def draw
backgroun 0
noStroke
fill 255, 0, 0
x = width/2 + 200 * cos(@counter)
y = height/2 + 200 * sin(@counter)
ellipse x, y, 50, 50
@counter += 0.1
end
[/code]
うん、いい感じにRubyっぽい。
あとは
[code lang=text]
rp5 run test-sketch.rb
[/code]
として実行して、うまく言ったらこんな画面が出てくるはず!
やったね!
- 実際はruby-processingにJRubyが同梱されていて、この手順は必要ないらしいですが一応 ↩
[…] 「ruby-processingで遊んでみた」のようにrubyだけではなく、JRubyをインストールしたときのように、複数のrubyバージョンをインストールした場合、rubyバージョンの切り替えもこのrbenv global […]