|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.image.PixelGrabber
public class PixelGrabber
PixelGrabber クラスは、Image オブジェクトや ImageProducer オブジェクトと接続してそのイメージのピクセルのサブセットを抽出可能な ImageConsumer を実装します。次に例を示します。
public void handlesinglepixel(int x, int y, int pixel) { int alpha = (pixel >> 24) & 0xff; int red = (pixel >> 16) & 0xff; int green = (pixel >> 8) & 0xff; int blue = (pixel ) & 0xff; // Deal with the pixel as necessary... } public void handlepixels(Image img, int x, int y, int w, int h) { int[] pixels = new int[w * h]; PixelGrabber pg = new PixelGrabber(img, x, y, w, h, pixels, 0, w); try { pg.grabPixels(); } catch (InterruptedException e) { System.err.println("interrupted waiting for pixels!"); return; } if ((pg.getStatus() & ImageObserver.ABORT) != 0) { System.err.println("image fetch aborted or errored"); return; } for (int j = 0; j < h; j++) { for (int i = 0; i < w; i++) { handlesinglepixel(x+i, y+j, pixels[j * w + i]); } } }
ColorModel.getRGBdefault()
フィールドの概要 |
---|
インタフェース java.awt.image.ImageConsumer から継承されたフィールド |
---|
COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHT |
コンストラクタの概要 | |
---|---|
PixelGrabber(Image img,
int x,
int y,
int w,
int h,
boolean forceRGB)
指定されたイメージからピクセルの矩形部分 (x, y, w, h) を取り出す、PixelGrabber オブジェクトを生成します。 |
|
PixelGrabber(Image img,
int x,
int y,
int w,
int h,
int[] pix,
int off,
int scansize)
指定されたイメージからピクセルの矩形部分 (x, y, w, h) を指定の配列に取り出す、PixelGrabber オブジェクトを生成します。 |
|
PixelGrabber(ImageProducer ip,
int x,
int y,
int w,
int h,
int[] pix,
int off,
int scansize)
指定された ImageProducer が生成するイメージからピクセルの矩形部分 (x, y, w, h) を指定の配列に取り出す、PixelGrabber オブジェクトを生成します。 |
メソッドの概要 | |
---|---|
void |
abortGrabbing()
PixelGrabber にイメージの取り込み中止を要求します。 |
ColorModel |
getColorModel()
ピクセルを配列に格納するための ColorModel を返します。 |
int |
getHeight()
(イメージの高さを調整後) ピクセルバッファーの高さを返します。 |
Object |
getPixels()
ピクセルバッファーを返します。 |
int |
getStatus()
ピクセルの状態を返します。 |
int |
getWidth()
(イメージの幅を調整後) ピクセルバッファーの幅を返します。 |
boolean |
grabPixels()
Image または ImageProducer に、ピクセルの転送を開始し、転送を要求された矩形のピクセルがすべて転送されるまで待つことを要求します。 |
boolean |
grabPixels(long ms)
ピクセルの転送を開始するよう Image または ImageProducer に要求し、目的の矩形のピクセルがすべて転送されるまで、または指定された時間が経過するまで待ちます。 |
void |
imageComplete(int status)
imageComplete メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setColorModel(ColorModel model)
setColorModel メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setDimensions(int width,
int height)
setDimensions メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setHints(int hints)
setHints メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setPixels(int srcX,
int srcY,
int srcW,
int srcH,
ColorModel model,
byte[] pixels,
int srcOff,
int srcScan)
setPixels メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setPixels(int srcX,
int srcY,
int srcW,
int srcH,
ColorModel model,
int[] pixels,
int srcOff,
int srcScan)
setPixels メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
setProperties(Hashtable<?,?> props)
setProperties メソッドは、ピクセルを取り出すためにこのクラスが実装しなければならない ImageConsumer API の一部です。 |
void |
startGrabbing()
PixelGrabber にピクセルの取り込み開始を要求します。 |
int |
status()
ピクセルの状態を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public PixelGrabber(Image img, int x, int y, int w, int h, int[] pix, int off, int scansize)
img
- ピクセルの取得元イメージx
- イメージから取得するピクセルの矩形の左上隅の x 座標。イメージのデフォルト (スケーリングされていない) サイズを基準にするy
- イメージから取得するピクセルの矩形の左上隅の y 座標w
- 取得するピクセルの矩形の幅h
- 取得するピクセルの矩形の高さpix
- イメージから取得した RGB ピクセルの格納に使用する整数配列off
- 最初のピクセルを配列のどこに格納するかを表すオフセットscansize
- 配列内のあるピクセル行から次のピクセル行までの距離ColorModel.getRGBdefault()
public PixelGrabber(ImageProducer ip, int x, int y, int w, int h, int[] pix, int off, int scansize)
ip
- ピクセルを取得するイメージを生成する ImageProducer
x
- イメージから取得するピクセルの矩形の左上隅の x 座標。イメージのデフォルト (スケーリングされていない) サイズを基準にするy
- イメージから取得するピクセルの矩形の左上隅の y 座標w
- 取得するピクセルの矩形の幅h
- 取得するピクセルの矩形の高さpix
- イメージから取得した RGB ピクセルの格納に使用する整数配列off
- 最初のピクセルを配列のどこに格納するかを表すオフセットscansize
- 配列内のあるピクセル行から次のピクセル行までの距離ColorModel.getRGBdefault()
public PixelGrabber(Image img, int x, int y, int w, int h, boolean forceRGB)
img
- イメージデータの取得元イメージx
- イメージから取得するピクセルの矩形の左上隅の x 座標。イメージのデフォルト (スケーリングされていない) サイズを基準にするy
- イメージから取得するピクセルの矩形の左上隅の y 座標w
- 取得するピクセルの矩形の幅h
- 取得するピクセルの矩形の高さforceRGB
- ピクセルをデフォルト RGB ColorModel に常に変換する場合は trueメソッドの詳細 |
---|
public void startGrabbing()
public void abortGrabbing()
public boolean grabPixels() throws InterruptedException
InterruptedException
- ほかのスレッドがこのスレッドを中断した場合public boolean grabPixels(long ms) throws InterruptedException
ms
の値によって、次のように動作します。
ms
== 0 の場合、全ピクセルが転送されるまで待つ
ms
> 0 の場合、指定された時間が経過しても全ピクセルが転送されるまで待つ
ms
< 0 の場合、ピクセルがすべて取得できた場合は true
、そうでない場合は false
を返し、待たない
ms
- イメージのピクセルが取得を待つ時間 (ミリ秒)。これを経過した場合はタイムアウトになる
InterruptedException
- ほかのスレッドがこのスレッドを中断した場合public int getStatus()
ImageObserver
public int getWidth()
getStatus()
public int getHeight()
getStatus()
public Object getPixels()
getStatus()
,
setPixels(int, int, int, int, ColorModel, byte[], int, int)
,
setPixels(int, int, int, int, ColorModel, int[], int, int)
public ColorModel getColorModel()
getStatus()
,
ColorModel.getRGBdefault()
,
setColorModel(ColorModel)
public void setDimensions(int width, int height)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setDimensions
width
- この Dimension の幅height
- この Dimension の高さpublic void setHints(int hints)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setHints
hints
- ピクセル処理に使用されるヒントセットpublic void setProperties(Hashtable<?,?> props)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setProperties
props
- プロパティーのリストpublic void setColorModel(ColorModel model)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setColorModel
model
- 指定された ColorModel
getColorModel()
public void setPixels(int srcX, int srcY, int srcW, int srcH, ColorModel model, byte[] pixels, int srcOff, int srcScan)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setPixels
srcX
- 指定された矩形形状の左上隅の X 座標srcY
- 指定された矩形形状の左上隅の Y 座標srcW
- ピクセル領域の幅srcH
- ピクセル領域の高さmodel
- 指定された ColorModel
pixels
- ピクセルの配列srcOff
- pixels 配列のオフセットsrcScan
- ピクセル配列内のあるピクセル行から次のピクセル行までの距離getPixels()
public void setPixels(int srcX, int srcY, int srcW, int srcH, ColorModel model, int[] pixels, int srcOff, int srcScan)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の setPixels
srcX
- 指定された矩形形状の左上隅の X 座標srcY
- 指定された矩形形状の左上隅の Y 座標srcW
- ピクセル領域の幅srcH
- ピクセル領域の高さmodel
- 指定された ColorModel
pixels
- ピクセルの配列srcOff
- pixels 配列のオフセットsrcScan
- ピクセル配列内のあるピクセル行から次のピクセル行までの距離getPixels()
public void imageComplete(int status)
注:このメソッドは、取り出し対象のピクセルで構成される Image の ImageProducer によって呼び出されることを意図して実装されています。このクラスを使ってイメージからピクセルを取り出す場合は、このメソッドを直接呼び出さないようにしてください。 このメソッドを直接呼び出すと、要求されているピクセルを取り出す上で問題が生じる可能性があります。
ImageConsumer
内の imageComplete
status
- イメージロードの状態ImageProducer.removeConsumer(java.awt.image.ImageConsumer)
public int status()
getStatus
は同じ実装を持っていますが、"getXXX" という形式を持つ情報取得メソッドの命名規則に従う getStatus
メソッドの使用をお勧めします。
ImageObserver
,
getStatus()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。