[Processing]グラデーションの円や四角形を描くには
CGとかだとやっぱりグラデーションとか描きたいですが、残念ながら現時点ではProcessingにグラデーション命令はないようです。Processingでグラデーションを描くには色を少しずつずらしながら描画するというのが現時点では有力です。
グラデーションのサンプルとしては
LinearGradient \ Learning \ Processing 1.0 (BETA)
http://processing.org/learning/basics/lineargradient.html
RadialGradient \ Learning \ Processing 1.0 (BETA)
http://processing.org/learning/basics/radialgradient.html
WaveGradient \ Learning \ Processing 1.0 (BETA)
http://processing.org/learning/basics/wavegradient.html
が有名です。processingのIDEにもサンプルとして同梱されています(File > Examples > Basics > Color)。ただし、どのサンプルもピクセル単位で色を計算しているので、サイズを大きくするとドット落ちが発生したりする可能性があります。
GradialGradient(円のグラデーション)に関して言えば、ドット単位で描画しなくても、色を変えながら円を重ねて描いていくことで同じことが短いソースコードで実現できます。ソースコード内にはdrawGradationEllipse1()とdrawGradationEllipse2()の2種類のグラデーションの描画方法がありますが、drawGradationEllipse2のほうが綺麗にでる気がします。中間色を求めるlerpColor()関数がしっかりとした処理をしているのかもしれません。
