インタフェースWritableRenderedImage
- すべてのスーパー・インタフェース:
RenderedImage
- 既知のすべての実装クラス:
BufferedImage
public interface WritableRenderedImage extends RenderedImage
WritableRenderedImageは、ラスターの形式でイメージ・データを格納または生成でき、変更または書込み(あるいはその両方)が可能なオブジェクトの共通インタフェースです。 イメージ・データは1つのタイルまたはタイルの規則正しい配列として格納または作成されます。
WritableRenderedImageは、タイルが書込みのためにgetWritableTileメソッドでチェック・アウトされたとき、および特定のタイルの最後のライターがreleaseWritableTileの呼出しでアクセスを放棄したときに、関連するほかのオブジェクトに通知を行います。 また、現在チェック・アウトされているタイルがあるかどうかを、呼出し側がhasTileWritersで判定したり、getWritableTileIndicesで、そのようなタイルのリストをPointオブジェクトのVectorの形で取得したりできるようにします。
タイルの書込み可能性の変更通知を必要とするオブジェクトは、TileObserverインタフェースを実装する必要があり、addTileObserverの呼出しによって追加されます。 同じオブジェクトで複数回addTileObserverを呼び出すと、複数の通知を受けることになります。 既存のオブザーバの場合、removeTileObserverの呼出しで通知を減らすことができます。オブザーバが通知を持たない場合、オペレーション側では何も行いません。
WritableRenderedImageでは、最初のライターがタイルを取得し、最後のライターがそれを解放したときにだけ通知が行われるようにする必要があります。
-
メソッドのサマリー
修飾子と型メソッド説明voidオブザーバを追加します。getWritableTile(int tileX, int tileY) 書込みのためにタイルをチェック・アウトします。Point[]どのタイルが書込みのためにチェック・アウトされているかを示すPointオブジェクトの配列を返します。boolean書込みのためにチェック・アウトされているタイルがあるかどうかを返します。booleanisTileWritable(int tileX, int tileY) タイルが現在書込みのためにチェック・アウトされているかどうかを返します。voidreleaseWritableTile(int tileX, int tileY) タイルに書き込む権利を放棄します。voidオブザーバを削除します。voidイメージの矩形を、WritableRenderedImageと同じ座標空間にあると見なされるRaster rの内容に設定します。インタフェースで宣言されたメソッド RenderedImage
copyData, getColorModel, getData, getData, getHeight, getMinTileX, getMinTileY, getMinX, getMinY, getNumXTiles, getNumYTiles, getProperty, getPropertyNames, getSampleModel, getSources, getTile, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, getWidth修飾子と型メソッド説明copyData(WritableRaster raster) RenderedImageの任意の矩形領域を計算し、呼出し側が提供したWritableRasterにコピーします。このイメージに関連したColorModelを返します。getData()イメージを1つの大きいタイルとして返します。タイルがベースになっているイメージの場合は、イメージ全体のフェッチとイメージ・データ全体のコピーが必要になります。RenderedImageの任意の領域を計算して返します。intRenderedImageの高さを返します。intX方向の最小タイル・インデックスを返します。intY方向の最小タイル・インデックスを返します。intgetMinX()RenderedImageの最小のX座標を返します(その座標を含む)。intgetMinY()RenderedImageの最小のY座標を返します(その座標を含む)。intX方向のタイルの数を返します。intY方向のタイルの数を返します。getProperty(String name) このイメージのプロパティ・セットからプロパティを返します。String[]getProperty(String)が認識する名前の配列を返すか、プロパティ名が認識されない場合はnullを返します。このイメージに関連したSampleModelを返します。このRenderedImageのイメージ・データの直接のソースになるRenderedImageのベクターを返します。getTile(int tileX, int tileY) タイル(tileX, tileY)を返します。intタイル・グリッドの原点に対するXオフセット、つまりタイル(0, 0)の左上のピクセルのX座標を返します。intタイル・グリッドの原点に対するYオフセット、つまりタイル(0, 0)の左上のピクセルのY座標を返します。intタイルの高さをピクセル単位で返します。intタイルの幅をピクセル単位で返します。intgetWidth()RenderedImageの幅を返します。
-
メソッドの詳細
-
addTileObserver
void addTileObserver(TileObserver to) オブザーバを追加します。 オブザーバがすでにある場合は、複数の通知を受け取ることになります。- パラメータ:
to- 指定されたTileObserver
-
removeTileObserver
void removeTileObserver(TileObserver to) オブザーバを削除します。 オブザーバが登録されていなかった場合は、何も行われません。 オブザーバが複数の通知に対して登録されていた場合は、1つ少なくなります。- パラメータ:
to- 指定されたTileObserver
-
getWritableTile
WritableRaster getWritableTile(int tileX, int tileY) 書込みのためにタイルをチェック・アウトします。 WritableRenderedImageは、タイルにライターがない状態からライターが1つある状態に変わったときに、すべてのTileObserverに通知を行います。- パラメータ:
tileX- タイルのXインデックス。tileY- タイルのYインデックス。- 戻り値:
- 書込み可能なタイル。
-
releaseWritableTile
void releaseWritableTile(int tileX, int tileY) タイルに書き込む権利を放棄します。 呼出し側がタイルへの書込みを続けた場合、結果は保証されません。 このメソッドの呼出しは、getWritableTileの呼び出しとの対でのみ使用します。それ以外の方法で使用した場合、結果は保証されません。 WritableRenderedImageは、タイルにライターが1つある状態からライターがない状態に変わったときに、すべてのTileObserverに通知を行います。- パラメータ:
tileX- タイルのXインデックス。tileY- タイルのYインデックス。
-
isTileWritable
boolean isTileWritable(int tileX, int tileY) タイルが現在書込みのためにチェック・アウトされているかどうかを返します。- パラメータ:
tileX- タイルのXインデックス。tileY- タイルのYインデックス。- 戻り値:
- 指定されたタイルが書込み用にチェック・アウトされている場合は
true、そうでない場合はfalse。
-
getWritableTileIndices
Point[] getWritableTileIndices()どのタイルが書込みのためにチェック・アウトされているかを示すPointオブジェクトの配列を返します。 チェック・アウトされているタイルがない場合はnullを返します。- 戻り値:
- 書込み用にチェック・アウトされたタイルの位置を格納する配列
-
hasTileWriters
boolean hasTileWriters()書込みのためにチェック・アウトされているタイルがあるかどうかを返します。 (getWritableTileIndices()!= null)と同じです。- 戻り値:
- タイルが書込み用にチェック・アウトされている場合は
true、そうでない場合はfalse。
-
setData
void setData(Raster r) イメージの矩形を、WritableRenderedImageと同じ座標空間にあると見なされるRaster rの内容に設定します。 オペレーションはWritableRenderedImageの境界にクリッピングされます。- パラメータ:
r- 指定されたRaster
-