class Grad{ public static void main(String[] args){ int width=128, height=128; System.out.println("P3 "+width+" "+height+" 255"); int i,j; for(i=0;i<height;i=i+1){ for(j=0;j<width;j=j+1){ System.out.println("255 255 "+(j*2)); } } } }を ~/jousho03以下にGrad.java という名前で保存して,
javac Grad.javaとコンパイルして,
java Grad > grad.ppmとプログラムを実行し,出力を grad.ppm というファイルに保存すると,この ファイルは PPM形式(Portable PixMap形式)の画像ファイルになっている.
convert grad.ppm grad.gifを実行して,gif形式にしたのが
上のプログラムの
System.out.println("255 255 "+(j*2));の行を変更して,
/home/ktanaka/bin/report611 1を実行してください.
課題の締切は 6/18(水) の21時です.
P3 4 4 255 0 0 0 0 0 0 0 0 0 255 0 255 0 0 0 0 255 127 0 0 0 0 0 0 0 0 0 0 0 0 0 255 127 0 0 0 255 0 255 0 0 0 0 0 0 0 0 0上の部分をt.ppmというファイルで保存して,
gimp t.ppmでみると,幅4ドット,高さ4ドットの米粒のような画像が現れるがこれを zoom in していくと,
P3の部分がマジックナンバーという部分で,このファイルが他の画像ファイルで はなくPPM形式であることを示す(Windowsの多くのアプリケーションのように, 拡張子が .ppm でああることで判断しているわけではない).PPM形式では空白 (White Space, Spaceコードだけではなく改行,タブも含まれる)はいくついれ ても良いが,P3の前に入れてはいけない.マジックナンバーの後に 空白 があり,4 4 255で,画像の幅,高さ,色の階調数を順に指定する.階調の最大値は,一般には R(red), G(Green), B(Blue)それぞれ 0(暗い)から255(明るい)までの256階調 あれば人間に自然な画像を表せるといわれているので,ここでは 255 を指定 している.詳しくは, 情報処理システム:画像を参照すること.その後で,
0 0 0 0 0 0 0 0 0 255 0 255 0 0 0 0 255 127 0 0 0 0 0 0 0 0 0 0 0 0 0 255 127 0 0 0 255 0 255 0 0 0 0 0 0 0 0 0のように,4x4=16ピクセルの RGB値を順に指定している.ピクセルの指定の順 番は横書きの文章と同じように左上から右下へ横方向に走査していく.1ピク セル内の指定の順番は R G Bの順番になっている.上の例で現れる色は