Spec-Zone.ru › OpenJDK 8

Интерфейс WritableRenderedImage

Все суперинтерфейсы:
RenderedImage
Все известные реализующие классы:
BufferedImage

public interface WritableRenderedImage
extends RenderedImage

WritableRenderedImage — это общий интерфейс для объектов, которые содержат или могут генерировать данные изображения в виде растровых изображений и которые могут быть изменены и/или перезаписаны. Данные изображения могут храниться/генерироваться как одна плитка или регулярный массив плиток.

WritableRenderedImage предоставляет уведомления другим заинтересованным объектам, когда плитка вызывается для записи (через метод getWritableTile) и когда последний автор определенной плитки отказывается от доступа (через вызов releaseWritableTile). Кроме того, он позволяет любому вызывающему объекту определить, есть ли в настоящее время какие-либо вызываемые плитки (через hasTileWriters) и получить список таких плиток (через getWritableTileIndices в виде вектора объектов Point).

Объекты, которые хотят получать уведомления об изменениях в возможности записи плиток, должны реализовать интерфейс TileObserver и добавляются вызовом addTileObserver. Несколько вызовов addTileObserver для одного и того же объекта приведут к нескольким уведомлениям. Существующий наблюдатель может уменьшить свои уведомления, вызвав removeTileObserver; если у наблюдателя не было уведомлений, операция является пустой.

Для WritableRenderedImage необходимо гарантировать, что уведомления происходят только тогда, когда первый автор получает плитку и последний автор ее освобождает.

Методы

Модификатор и тип Метод и описание
void addTileObserver(TileObserver to)

Добавляет наблюдателя.

WritableRaster getWritableTile(int tileX, int tileY)

Вызывает плитку для записи.

Point[] getWritableTileIndices()

Возвращает массив объектов Point, указывающих, какие плитки вызваны для записи.

boolean hasTileWriters()

Возвращает, вызвана ли какая-либо плитка для записи.

boolean isTileWritable(int tileX, int tileY)

Возвращает, вызвана ли плитка для записи в данный момент.

void releaseWritableTile(int tileX, int tileY)

Отказывается от права записи в плитку.

void removeTileObserver(TileObserver to)

Удаляет наблюдателя.

void setData(Raster r)

Устанавливает прямоугольник изображения содержимым Raster r, который предполагается находящимся в той же системе координат, что и WritableRenderedImage.

Методы, унаследованные от интерфейса java.awt.image.RenderedImage

copyData, getColorModel, getData, getData, getHeight, getMinTileX, getMinTileY, getMinX, getMinY, getNumXTiles, getNumYTiles, getProperty, getPropertyNames, getSampleModel, getSources, getTile, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, getWidth

Методы

addTileObserver

void addTileObserver(TileObserver to)

Добавляет наблюдателя. Если наблюдатель уже присутствует, он получит несколько уведомлений.

Параметры:
to - указанный TileObserver

removeTileObserver

void removeTileObserver(TileObserver to)

Удаляет наблюдателя. Если наблюдатель не был зарегистрирован, ничего не происходит. Если наблюдатель был зарегистрирован для нескольких уведомлений, он теперь будет зарегистрирован для на одно уведомление меньше.

Параметры:
to - указанный TileObserver

getWritableTile

WritableRaster getWritableTile(int tileX,
                               int tileY)

Вызывает плитку для записи. WritableRenderedImage отвечает за уведомление всех своих TileObservers, когда плитка переходит от отсутствия авторов к одному автору.

Параметры:
tileX - индекс X плитки.
tileY - индекс Y плитки.
Возвращает:
плитка для записи.

releaseWritableTile

void releaseWritableTile(int tileX,
                         int tileY)

Отказывается от права записи в плитку. Если вызывающий объект продолжает запись в плитку, результаты не определены. Вызовы этого метода должны появляться только в соответствующих парах с вызовами getWritableTile; любое другое использование приведет к неопределенным результатам. WritableRenderedImage отвечает за уведомление всех своих TileObservers, когда плитка переходит от одного автора к отсутствию авторов.

Параметры:
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)

Устанавливает прямоугольник изображения содержимым Raster r, который предполагается находящимся в той же системе координат, что и WritableRenderedImage. Операция обрезается до границ WritableRenderedImage.

Параметры:
r - указанный Raster

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API