Uncategorized @ 22 April 2008, Comments Off

Tags:
Uncategorized @ 11 April 2008, Comments Off

浮動小数の変数の定義で、doubleを使うかfloatを使うかを迷うことはプログラミングの過程でよくあること。

ただし、Processing環境ではほとんど迷う必要はない: floatを使う!

というのも、ProcessingのAPIはすべてfloatを扱うようになっている。しかも、少数のリテラルにはプリプロセッサーによって、自動的に “f” がつけられるようになっている。
つまり、3.1415 と書くと、 3.1415f と書いたのと同じ。

どうしても精度の高い計算を,ProcessingのAPIとは関係ないところで内部的に行う場合(そもそもそういう計算をProcessingでやる必要があるのかという疑問はさておき)は、doubleを使うことも選択肢としてある。それ以外は、doubleをつかっても結局は floatに丸め込まれてしまうことを考慮しましょ。

先日もお伝えしたように、つい先日、新しいMacBook Pro (= Leopard)に開発環境を乗り換えた。ピンチイン/ピンチアウトや回転などの新しいマルチタッチのインタフェースを一通り試してから、さて開発に取りかかろうかといつも通りTextMateとProcessing IDEを立ち上げた。ところが…

Photoshopなどのベンチマークでは、以前のMacBook Proに比べて、1.5倍程度の処理速度がでていたので、Processingの描画もさぞさくさく動いてくれるだろうとわくわくしながら、ここ数ヶ月作っているシステムを動かしてみて驚いた。Tigerをつかっていた以前のMacBookProに比べて、Leopard搭載の新しいマシンでは、描画が極端に遅い! 二次元の描画、特にPImageを使った画像の描画で顕著な違いが出た。CPU, GPU, メモリともに高速化/大容量化しているはずなのに、昔のマシンの方が速いというのはどういうこと?? 考えられる原因としてはOSの違いということになる。

そこで調べてみたところ、ありましたありました。 (というか、こんな肝心な情報を見逃していたのも問題だ…)

Leopardに搭載されているJ2SE 5.0 (1.5.0_13_b05)から、デフォルトの2DのレンダリングエンジンがAppleのQuartzからSunのSun2D rendererにスイッチしたとのこと。

Sunのレンダリングエンジンを使うことで、他の環境との整合性は保たれやすいかわりに、まだ用途によってはQuartzを使っていたときよりも遅くなることがある… らしい。その点はAppleのエンジニアも認めている。

Generally speaking, sometimes the performance of the Sun2D renderer can be worse, depending on your application – however it should have similar performance compared to Windows and Linux. (Java-dev MLより)

これらをふまえて、開発者向けのオプションを指定することで、Quartzを使うように強制することもできるようになっている。Sun2Dを使うのは、あくまでも「デフォルトでは」という話のようだ。

ちょっとした幾何学のTips.

Enclosingcircles-2

先に紹介したMashupアプリのプロトタイプの画面で、ミックスしたいループのオブジェクトを線で囲むと、それらをきれいに囲う線が現れたのを覚えているだろうか? 人間なら子供でも簡単に書けるが、コンピュータに書かせようとすると、ちょっとした幾何の計算が必要になる。ある特定の円に対する接線の導出なら簡単だが、円の「集合」を包む場合にはどうしたらいいのだろう? アルゴリズムを考えていたところ、ぴったりな問題と回答を発見した。

石畑 清(明治大学理工学部)
連載Program Promenade「円の集まりをロープで囲む」 (情報処理学会論文誌、2003年 4巻9号) [PDFファイル]

アルゴリズムの基本はこんな感じ。

1. 一番右下にある円を総当たりで探す
2. 1の円から見て、共通接線とx軸の角度が一番大きくなる円を選択。
3. 2の円から見て、共通接線…  (以下、繰り返し)

200803111330

一番右の円にロープをかけて、時計回りに順にぐるっと巻いていくような感じだ。かなり直感的な解である。Processingのデモを作ったのでご参考までに。 アルゴリズムは石畑先生のソースのままだが、囲う線の長さを求めるのではなく、線を描画できるように少しだけ修正した。(クリックすると円をランダマイズする)

Appletstart-4

Uncategorized @ 10 March 2008, Comments Off

ちまたで噂のYamaha TENORI-ONの製品発表会の告知がでてますね。
岩井さんはもちろんのこと、Jim O’rouke, Atom Heart, To RoccocoRotなど、そうそうたるアーティストのライブが、なんと無料で見られる! (ただし、抽選で… )  

TENORI-ON Launch Event in Tokyo at SPIRAL HALL | TENORI-ON | ヤマハ株式会社
Picture 1-19

Uncategorized @ 07 March 2008, Comments Off

ラフォーレ原宿のオンラインストアでop.discのアーティストが大フィーチャーされてます。
opの曲がかかるだけで、大人度32.7%増しな気がします:-)
Riow Araiさんとのコラボ曲も使われているので、探してみてください。

LFH – ラフォーレ原宿オンラインストア
#現在は4月1日の本格オープンに向けて仮オープンだそうです。

Picture 1-18