試しに,a0=1,a1=2,a2=3,a3=4,a4=5という数列を作ってみましょう。
a = [1,2,3,4,5]↓
はい終わり。
以下簡単に
数列を参照する→ a↓
数列のある項を参照する→ a[2]↓ (これでa2を参照できる。3と表示されるはず)
数列のある項を書き換える→ a[2] = 10↓ (これでa2が10になる)
2次元数列(画像)を作る
Rubyでお絵描きをしてみましょう。まずはirbを終了して、isrbを起動します。
isrbの起動は、"isrb"と入力してReturnを押すだけ。
さて、isrbでは各項の要素を0〜1の数値にすることで、数列を黒〜白のモノトーン画像として出力することができます。
試しに作ってみましょうか。
b = [ [0,0,0],↓
[1,1,1],↓
[0,0,0] ]↓
数列の中に数列を突っ込んでるんですね。これで、二次元数列bが出来ました。
これを画像として出力してみましょう。isrb独自の関数showを使います。
show(b)↓

これで0が黒になることがわかりましたね。
0.1や0.6なんかを要素にして画像出力してみましょう。グレーになりますよ。
二次元数列に対する操作は、ほとんど一次元数列と同じなのですが、二次元なので項数の表現が違います。
b[1][2]だったら、b数列の1行目の2列目の項、ということになります。(通常b2,1など横の座標→縦の座標と表現するものですが、Ruby上では逆です。)
そして注意してほしい点は、この行と列の数え方は、どちらも0から始まっているということ。つまり一番左上の項はb[0][0]になります。
そしてさきほどのb[1][2]は、真ん中の列の一番右の数字のことになります。
以下簡単に
数列を参照する→ b↓
数列のある項を参照する→ b[1][2]↓ (これでb2,1を参照できる。1と表示されるはず)
数列のある項を書き換える→ b[1][2] = 0.5↓ (これでb2,1が0.5になる)
3次元数列(カラー画像)を作る
さて、今度はカラー画像を作ってみましょう。
二次元数列で、0~1の数字を入れていたところに、さらにRGB数列を入れて、色を表現します。
RGB数列は以下の様になっています。
[(Red値),(Green値),(Blue値)]
それぞれのカラー値は、0~1で表します。
主な色のRGB数列をのせます。
[1,0,0]…赤
[0,1,0]…緑
[0,0,1]…青
[1,1,0]…黄色
[0,1,1]…水色
[1,0,1]…紫
[0,0,0]…黒
[1,1,1]…白
少数を使って、自分の出したい色をうまく表現してみましょう!
では肝心のこのRGB数列の使い方を。
c = [ [ [1,0,0], [0.5,0.5,0], [0,1,0] ],↓
[ [0.5,0,0.5], [0.5,0.5,0.5], [0,0.5,0] ],↓
[ [0,0,1], [0,0,0.5], [0,0,0] ] ]↓
まあこんな感じで、数列の中に数列を突っ込んで、さらにRGB数列を突っ込むんですね。
これで3×3のカラー画像ができたので、
show(c)↓
で表示してみましょう。
以下簡単に
数列を参照する→ c↓
数列のある項を参照する→ c[1][2]↓ (これでc2,1を参照できる。[0,0.5,0]と表示されるはず)
数列のある項を書き換える→ c[1][2] = [0,1,1]↓ (これでc2,1が[0,1,1]になる)
以上でっす。
0 件のコメント:
コメントを投稿