イメージ¶
Image クラスはデバイス LED マトリクスに容易に表示できるイメージを作成するために使います。予め組み込まれているイメージオブジェクトを display API で表示することもできます:
display.show(Image.HAPPY)
 
クラス¶
- 
class microbit.Image(string)¶
- 
class microbit.Image(width=None, height=None, buffer=None)
- stringを指定した場合、引数の文字列はイメージを記述した 0-9 の数字を複数行に配置したものになります。たとえば次のものは X を 5x5 のイメージを作成します:- image = Image("90009:" "09090:" "00900:" "09090:" "90009") - 行の終わりはコロンで示します。行の終わりには次のように改行文字( )を使うこともできます: - image = Image("90009\n" "09090\n" "00900\n" "09090\n" "90009") - もう1つの指定方法では - width列と- height行の空イメージを作成します。オプションの- bufferは、イメージを初期化するためのもので、0-9 の整数値を- width``×``height個並べた配列を指定します。- 
width()¶
- イメージの列数を返します。 
 - 
height()¶
- イメージの行数を返します。 
 - 
set_pixel(x, y, value)¶
- x列- y行のピクセルの明るさを- valueに設定します。明るさは 0 (暗い) から 9 (明るい)までの整数値で指定します。- このメソッドは、 - Image.HEARTのような組込みの読取り専用イメージに対して呼び出すと例外を起こします。
 - 
get_pixel(x, y)¶
- x列- y行のピクセルの明るさを 0-9 の整数値で返します。
 - 
shift_left(n)¶
- n列だけ左にシフトした新しいイメージを返します。
 - 
shift_right(n)¶
- image.shift_left(-n)と同じです。
 - 
shift_up(n)¶
- n行だけ上にシフトした新しいイメージを返します。
 - 
shift_down(n)¶
- image.shift_up(-n)と同じです。
 - 
crop(x, y, w, h)¶
- x列- y行のピクセルから始まって- w幅- h高さ分をトリミングした新しいイメージを返します。
 - 
copy()¶
- イメージ全体のコピーを返します。 
 - 
invert()¶
- 元のイメージの明るさを反転した新しいイメージ返します。 
 - 
fill(value)¶
- イメージのピクセルの明るさを - valueに設定します。- valueの値は 0 (暗い) から 9 (明るい)までの整数値です。- このメソッドは、 - Image.HEARTのような組込みの読取り専用イメージに対して呼び出すと例外を起こします。
 - 
blit(src, x, y, w, h, xdest=0, ydest=0)¶
- イメージ - srcから- x,- y,- w,- hで指定する矩形領域を、このイメージの- xdest,- ydestにコピーします。矩形領域ではあるが元のイメージの外側にあるピクセルは値が 0 であるとして扱います。- shift_left(),- shift_right(),- shift_up(),- shift_down(),- crop()はすべて- blit()を用いて実現しています。たとえば img.crop(x, y, w, h) は以下で実現しています。- def crop(self, x, y, w, h): res = Image(w, h) res.blit(self, x, y, w, h) return res 
 
- 
属性¶
Image クラスには、属性として以下の組込みインスタンスを持っています(属性名はイメージが何であるかを示しています):
Image.HEART
Image.HEART_SMALL
Image.HAPPY
Image.SMILE
Image.SAD
Image.CONFUSED
Image.ANGRY
Image.ASLEEP
Image.SURPRISED
Image.SILLY
Image.FABULOUS
Image.MEH
Image.YES
Image.NO
Image.CLOCK12,Image.CLOCK11,Image.CLOCK10,Image.CLOCK9,Image.CLOCK8,Image.CLOCK7,Image.CLOCK6,Image.CLOCK5,Image.CLOCK4,Image.CLOCK3,Image.CLOCK2,Image.CLOCK1
Image.ARROW_N,Image.ARROW_NE,Image.ARROW_E,Image.ARROW_SE,Image.ARROW_S,Image.ARROW_SW,Image.ARROW_W,Image.ARROW_NW
Image.TRIANGLE
Image.TRIANGLE_LEFT
Image.CHESSBOARD
Image.DIAMOND
Image.DIAMOND_SMALL
Image.SQUARE
Image.SQUARE_SMALL
Image.RABBIT
Image.COW
Image.MUSIC_CROTCHET
Image.MUSIC_QUAVER
Image.MUSIC_QUAVERS
Image.PITCHFORK
Image.XMAS
Image.PACMAN
Image.TARGET
Image.TSHIRT
Image.ROLLERSKATE
Image.DUCK
Image.HOUSE
Image.TORTOISE
Image.BUTTERFLY
Image.STICKFIGURE
Image.GHOST
Image.SWORD
Image.GIRAFFE
Image.SKULL
Image.UMBRELLA
Image.SNAKE
関連するイメージのコレクションもあります。
* ``Image.ALL_CLOCKS``
* ``Image.ALL_ARROWS``
演算子¶
repr(image)
イメージのコンパクトな文字列表現を得ます。
str(image)
イメージの可読可能な文字列表現を得ます。
image1 + image2
2つのイメージの各ピクセルの明るさを足した新しいイメージを作成します。
image * n
各ピクセルの明るさを n 倍した新しい画像を作成します。