11/24 雪だるまの絵
g930358
![](g930358.jpg)
色などを凝ってみたわりには貧相で残念です。
月が半月ではないのは、私が三日月の方が好きだからで
間違えたわけではありません。
この課題はやっていて楽しかったですが、座標の指定が少し面倒でした。
g940029
![](g940029.jpg)
星をおまけに加え、境界付近で星が不自然になったため境界をぼかした。
ウインドウサイズによって拡大縮小しようかと思ったが
ビューポートが見つからなかったのでやめた。
ウインドウを再描画させると星が瞬く...のではなくワープするところが何とも
いえない(^^;
手抜きですいません。
一応returnで終了するようにした。
g940126
![](g940126.jpg)
<実行結果>
真ん中よりしたに地平線があり、そこから太陽が顔を出しています。
空の上の方は青いのですが、地平線へとちかづくにつれて赤みをおびて
朝焼けを表現しました。地面は雪原ですが、こちらも地平線にちかづくほど
赤みをおびるようにしました。その横で、緑のバケツをかぶった雪だるまが
太陽の日をあびて汗をかいているという設定です。
<プログラムの説明>
月のかわりに太陽描きました。
空と地面のグラディエーションはfor文により実現しています。
空はRGBのうちRを1ずつ増やしながら上から一ピクセルずつずらして
水平な直線を引くことで、青から赤へ移り変わるようにしています。
地面はR=255、GBを同じにして、一番下に来たとき255になるように
(つまり真っ白になるように)しました。
<感想>
雪だるまやバケツにも奥行きをだしたり、また、陰をつけたりしたかったけど
時間がないのでこのへんで妥協します。
g940151
![](g940151.jpg)
Frameクラスを拡張してYukidarumaクラスを作りました。
腕の色は自分で作りました。
一応雪だるまは斜めを向いているように見えるはずです。
あと、背景に粉雪なんぞ描いてみました。
g940186
![](g940186.jpg)
g940250
![](g940250.jpg)
あまりたいしたことはできませんでしたが、とりあえずセールスポイントは、繰り返し
によるグラデーションと赤い三日月です。
g940299
![](g940299.jpg)
コメント
課題通りの、月と雪ダルマを書いて表示するプログラムです。
工夫をしたのは背景のグラデーションで、for文でy座標と
色を変えながら縦2ドットの長方形を書いています。
この課題は、まわりに、雪ダルマを書こうとしたものの失敗して
わけのわからない物体になってしまった、という人が多くて楽しめました。
g950111
![](g950111.jpg)
という 長いものに なってしまいました。
斜めの 長方形が 描けなかったので
多角形を 描くようにしました。
例外処理は また。
できると いいのですけど。