next up previous
Next: 3.1 メディアトラッカ Up: ソフトウェア第三 講義資料 Emacs,CVS,画像処理 Previous: 2 ソフトウェア管理

3 画像処理に関連するクラス

画像処理では,通常,画像を配列で表現して 配列の要素を画素(pixel)として処理を行う. Javaで画像を扱うために用意されているクラスのうち よく使われるものを以下に紹介する. Appletクラスは,下のように,Componetクラスの下のPanelのサブクラスであり, インタフェースとして,ImageObserver, Accessible, MenuContainer, Serializableなどを実装している.

表 1: java.awt.Componentクラス
void paint(Graphics g) このコンポーネントをpaintする
void repaint() このコンポーネントをrepaintするために updateメソッドを呼ぶ
void repaint(int x, int y, int width, int height) このコンポーネントのこの矩形領域をrepaintする
void update(Graphics g) このコンポーネントをupdateする.背景がクリアさ れない.通常はsuper.update(g)を呼ぶかpaintを直接呼ぶ形で定義をする.
Dimension getSize() このコンポーネントのサイズを返す
Image createImage(ImageProducer producer) producerから画像を生成する
Image createImage(int width, int height) ダブルバッファ用の画像を生成す る
boolean contains(int x, int y) このComponent座標空間でのx, y点が内部に 入っているかどうか
boolean contains(Point p) このComponent座標空間での点pが内部に 入っているかどうか

Componentクラスのメソッドを,表1に示す.

  java.lang.Object
  |
  +-java.awt.Image
        |
        +-java.awt.image.BufferedImage
        |
        +-java.awt.image.VolatileImage
  |
  +-java.awt.Graphics
        |
        +-java.awt.Graphics2D
  |
  +-java.awt.Component  -> ImageObserver
        |               -> MenuContainer
        |               -> Serializable
        |
        +-java.awt.Container
              |
              +-java.awt.Panel
                    |
                    +-java.applet.Applet
                         -> Accessible
  |
  +-java.awt.MediaTracker
  |          -> Serializable
  |
  +-java.awt.image.PixelGrabber
  |          -> ImageConsumer
  |
  +-java.awt.image.MemoryImageSource
  |          -> ImageProducer
  |
  +-java.awt.image.ImageFilter
             -> ImageConsumer, Cloneable

表 2: java.applet.Appletクラス
Applet() コンストラクタ
void init() ブラウザやappletviewerで呼ばれるメソッド
Image getImage(URL url) 画像を得る
Image getImage(URL url, String name) 画像を得る
Image getParameter(String name) HTML tagから名前付きのパラメタの値を返す
URL getCodeBase() ベースURLを返す
URL getDocumentBase() appletが組み込まれているファイルのディレクトリを 指す絶対URLを返す
String getAppletInfo() appletに関する情報を得る
AudioClip getAudioClip(URL url) urlの音声クリップを返す
AudioClip getAudioClip(URL url, String name) urlとnameで指定される音声クリップを返す
void start() ブラウザやappletviewerから呼ばれてアプレットに実行開始を指 令する


表 3: java.awt.Colorクラス
static Color black, BLACK, blue, BLUE, cyan, CYAN, DARK_GRAY, darkGray, gray, GRAY, green, GREEN, LIGHT_GRAY, lightGray, magenta, MAGENTA, orange, ORANGE, pink, PINK, red, RED, white, WHITE, yellow, YELLOW  色を表す定数
Color(float r, float g, float b) 不透明のRGB色コンストラクタ
Color(float r, float g, float b, float a) 透明度aを与えるRGB色コンストラクタ
Color(int rgb) 不透明のRGB色コンストラクタ
Color(int rgba, boolean hasalpha) 透明度aがあるか無いかを示すRGB色コンストラクタ
Color(int r, int g, int b) 不透明のRGB色コンストラクタ
Color(int r, int g, int b, int a) 透明度aを与えるRGB色コンストラクタ
int getAlpha() 透明度を返す
int getRGB() RGBを返す
static int HSBtoRGB(float hue, float saturation, float brightness) HSBからRGBへ変換する
static float[] RGBtoHSB(int r, int g, int b, float[] hsbvals) RGBからHSBへ変換する




next up previous
Next: 3.1 メディアトラッカ Up: ソフトウェア第三 講義資料 Emacs,CVS,画像処理 Previous: 2 ソフトウェア管理
generated through LaTeX2HTML. M.Inaba 平成18年5月7日