火曜日, 5月 16, 2006

ドリトルでアート No.02 魔法のパレット

今日の作品はアセンブルパターンによる作品、「魔法のパレット」だ。

春やクリスマスシーズンになると、化粧品メーカーから新色のパレットのコレクションが一斉に発売される。どれも微妙に色が違う。よく、あんな色んな色があるもんだと関心してしまうのだが、最近のコンピューターで作れる色の数だって(256*256*256)あるのだから、ドリトルでこれを作ってみようと思う。しかもアートなパレットだ。

四角(box)と丸(circlef)を組み合わせてパターンを作り、これを縦横にずらっと並べてみる。色調をパステルカラーになるように中間色の明るさにしてみた。

//魔法のパレット

描画:box=[|x1 y1 x2 y2 color size|
 x1r=配列!作る (x1)入れる(x2)入れる(x2)入れる(x1)入れる.
 x2r=配列!作る (x2)入れる(x2)入れる(x1)入れる(x1)入れる.
 y1r=配列!作る (y1)入れる(y1)入れる(y2)入れる(y2)入れる.
 y2r=配列!作る (y1)入れる(y2)入れる(y2)入れる(y1)入れる.
 n=0.[n=n+1.タートル! 作る (size)線の太さ 消える ペンなし (x1r!(n)見る)(y1r!(n)見る)位置 ペンあり (x2r!(n)見る)(y2r!(n)見る)位置 図形にする (color)塗る]! 4 繰り返す].
描画:circlef=[|x y r color|
 タートル! 作る 消える ペンなし (x)(y) 位置 (r) 円 (color) 塗る].
描画:パレット=[|x y s c1 c2| d=s*0.5. r=s*0.5*0.8.
 描画! (x)(y)(r)(c1)circlef. 描画! (x+d*-1)(y+d)(x+d)(y+d*-1)(c2)(1)box.
].

y=-190.[
 x=-330.[
  c=色!(150+random(100))(150+random(100))(150+random(100))作る.
  描画! (x)(y)(90)(c)(黒)パレット. x=x+95.
 ]! 8 繰り返す. y=y+95.
]! 5 繰り返す.

//--------- ここまで ----------



ドリトルに「実行!」の魔法をかければ、女性なら思わず鏡に向かってみたくなるような色の組み合わせのパレットが生成される。