Fri, 22 Jan 2010

ProcessingとnodeBoxと時々pyProcessing

Processing っていうプログラミング言語というか開発環境があって、非常に簡潔な 記述で視覚的なものが作れるってことに感動して一時期興味を持って、サンプルコードを 見たり本を買ったりしてた。

ただ実際に書きだしてみると段々C言語風の文法が面倒くらくなってきた。

またprocessing.jsという、Processingのjavascript実装があることも知った。 ただこれは文法もProcessingそのものでjavascript風にしたものではなくProcessingその ものだった。そこまで移植しきったことに感心はしたものの使いたいものとはちょっと違う。

もちろんpythonにはpygameやら pyglet と言った視覚的なものを作るライブラリが揃 ってるのは知ってるしちょっとだけ使ったこともあるけど、ちょっと使うのが面倒だな、 と感じていた。

できれば簡潔な記述、簡単な関数呼出しはそのままにPythonの文法で記述したいな、と思 いpyProcessingというスクリプトを書き始めた。

ちょっと動いたのと、忙しくなってきちゃったのでしばらく放置してたんだけど、今日 twitterで NodeBox なるものの存在を教えてもらった。

tkuro11 Python版Processing改ってかんじかな RT @shunuhs: nodeboxってなんぞ?

みてみたところ、まさしくPython文法で書けるProcessingという感じだった。なのでこの コンセプトにも需要がある んだーと いうのとNodeBoxはMac OS専用みたいなので、ちょ っと遊ぶくらいの需要はあるかも?と思ってまだまだ超初期バージョンのコードだけど晒 してみることにします。

2010/01/24 補足:プロジェクト名をDoodleCrayに変更しました!

http://bitbucket.org/shunuhs/pyprocessing/

制限やら注意点としては、

  • 要pyglet。1.1.3しか試してません。
  • Ubuntsu8.2, Python2.5, pyglet1.1.3の環境でしか試してません。
  • y軸方向はprocessingに合わせたので上から下方向です。openglの座標と逆。
  • processingではsetup()/draw()なしで記述できたけど、必須です。
  • global変数を使う場合には、read onlyであっても関数内で変数にアクセスする場合に はglobal宣言が必要です。
  • 2Dのみです。

あとは興味がありましたらサンプルやらコードをご覧下さい。

サンプルコードを動かしたらこんな感じ。

対応するかどうかは別にして、動かない、とかこうして欲しいってのがありましたら、 私が聞いて、そういう使い方があるんだーとほくそ笑むのでお知らせ頂ければと思います。


Trackback

Comments



Name:


E-mail: (option)


URL: (option)


The Magic Word: please enter the '0730'.


Comment: