透過色に対する実験用アプレット

</COMMENT>

さてさて、説明を。

「半透明って言うのはどういう風に実現しているのか?」と気になって、実験に作ってみ
たアプレットです。半透明を表すのにJavaにはGraphic2Dクラスでアルファチャンネルを
使うことが出来るので、これを使って実際の半透明を実現した後に、自分で考えた半透明
化の手法を試しています。

真ん中の「SRC_OVER」って言うのが、そのJavaでの実現です。左から「α=」って言うの
が不透過率になっています。これが低ければ低いほど透明に近づくわけです。見れば分か
りますね。

ここで、自分で考えた手法による実現方法が上と下です。

「半透明=2色の中間色・もしくは透過率に合わせた配合率による色」

と、考えて、コーディングしてみました。

つまり、赤は#FF0000、青は#0000FFなので、赤の上に青を50%の不透過率で重ねると、
重なった部分の色は#800080になるのではないか?ってことですわ。

これを「赤対青」で行ったのが上。「白対青」で行ったのが下の段です。

真ん中の段が、半分が赤と重ねて、もう半分がしろと重ねているので、それと比較しやす
いようにレイアウトしてあります。

結果。予想通りだったようですね。

つまらん。(ぉ

でも、これを自分で実現しようとしたら一々、キャンバスを1ドットずつ検査して、下地
の色と上地の色を配合していかなくてはいけないので、とってもじゃないけどめんどくさ
いし、上でやっても動作が遅くなるだけなので、もっと根底でチューニングされているは
ずのGraphic2Dクラスを素直に使った方が良さそうですね。

戻る