Spec-Zone.ru › OpenJDK 21

Интерфейс 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)
Устанавливает прямоугольник изображения в содержимое растра 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)
Устанавливает прямоугольник изображения в содержимое растра r, который предполагается в том же координатном пространстве, что и WritableRenderedImage. Операция обрезается до границ WritableRenderedImage.
Параметры:
r - указанный Raster

© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/java/awt/image/WritableRenderedImage.html

Spec-Zone.ru

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