Spec-Zone.ru › OpenJDK 17

Класс BandCombineOp

java.lang.Object
java.awt.image.BandCombineOp
Все реализуемые интерфейсы:
RasterOp
public class BandCombineOp extends Object implements RasterOp
Этот класс выполняет произвольную линейную комбинацию полос в Raster, используя заданную матрицу.

Ширина матрицы должна быть равна количеству полос в исходном Raster, плюс один в случае необходимости. Если в матрице столбцов на один больше, чем полос, это подразумевает наличие 1 в конце вектора образцов полос, представляющих пиксель. Высота матрицы должна быть равна количеству полос в получаемом изображении.

Например, 3-полосное Raster может иметь следующую трансформацию, применённую к каждому пикселю для инвертирования второй полосы Raster.

   [ 1.0   0.0   0.0    0.0  ]     [ b1 ]
   [ 0.0  -1.0   0.0  255.0  ]  x  [ b2 ]
   [ 0.0   0.0   1.0    0.0  ]     [ b3 ]
                                   [ 1 ]
 

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

Краткое описание конструкторов

Конструктор Описание
BandCombineOp(float[][] matrix, RenderingHints hints)
Создаёт BandCombineOp с заданной матрицей.

Краткое описание методов

Модификатор и тип Метод Описание
WritableRaster createCompatibleDestRaster(Raster src)
Создаёт нулевое получаемое Raster нужного размера и количества полос.
WritableRaster filter(Raster src, WritableRaster dst)
Преобразует Raster, используя матрицу, указанную в конструкторе.
final Rectangle2D getBounds2D(Raster src)
Возвращает ограничивающую рамку преобразованного получаемого изображения.
final float[][] getMatrix()
Возвращает копию матрицы линейной комбинации.
final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
Возвращает расположение соответствующей точки получаемого изображения, заданной точкой в исходном Raster.
final RenderingHints getRenderingHints()
Возвращает параметры визуализации для этой операции.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

BandCombineOp

public BandCombineOp(float[][] matrix, RenderingHints hints)
Создаёт BandCombineOp с заданной матрицей. Ширина матрицы должна быть равна количеству полос в исходном Raster, плюс один в случае необходимости. Если в матрице столбцов на один больше, чем полос, это подразумевает наличие 1 в конце вектора образцов полос, представляющих пиксель. Высота матрицы должна быть равна количеству полос в получаемом изображении.

Первый индекс — это индекс строки, второй — индекс столбца. Эта операция не использует текущие параметры визуализации; параметр RenderingHints может быть равен null.

Параметры:
matrix - Матрица, используемая для операции объединения полос.
hints - Объект RenderingHints для данной операции. В данный момент не используется, поэтому может быть null.

Подробное описание методов

getMatrix

public final float[][] getMatrix()
Возвращает копию матрицы линейной комбинации.
Возвращает:
Матрицу, связанную с данной операцией объединения полос.

filter

public WritableRaster filter(Raster src, WritableRaster dst)
Преобразует Raster, используя матрицу, указанную в конструкторе. Может быть выброшено исключение IllegalArgumentException, если количество полос в исходном или получаемом изображении несовместимо с матрицей. См. комментарии к классу для получения более подробной информации.

Если получаемое изображение равно null, оно будет создано с количеством полос, равным количеству строк в матрице. Исключение не выбрасывается, если операция приводит к переполнению данных.

Задано в:
filter в интерфейсе RasterOp
Параметры:
src - Raster для фильтрации.
dst - Raster для хранения результатов операции фильтрации.
Возвращает:
Отфильтрованное Raster.
Исключения:
IllegalArgumentException - Если количество полос в исходном или получаемом изображении несовместимо с матрицей.

getBounds2D

public final Rectangle2D getBounds2D(Raster src)
Возвращает ограничивающую рамку преобразованного получаемого изображения. Поскольку это не геометрическая операция, ограничивающая рамка одинакова для исходного и получаемого изображений. Может быть выброшено исключение IllegalArgumentException, если количество полос в исходном изображении несовместимо с матрицей. См. комментарии к классу для получения более подробной информации.
Задано в:
getBounds2D в интерфейсе RasterOp
Параметры:
src - Raster для фильтрации.
Возвращает:
Rectangle2D представляющая ограничивающую рамку получаемого изображения.
Исключения:
IllegalArgumentException - Если количество полос в исходном изображении несовместимо с матрицей.

createCompatibleDestRaster

public WritableRaster createCompatibleDestRaster(Raster src)
Создаёт нулевое получаемое Raster нужного размера и количества полос. Может быть выброшено исключение IllegalArgumentException, если количество полос в исходном изображении несовместимо с матрицей. См. комментарии к классу для получения более подробной информации.
Задано в:
createCompatibleDestRaster в интерфейсе RasterOp
Параметры:
src - Raster для фильтрации.
Возвращает:
Нулевое получаемое Raster.

getPoint2D

public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
Возвращает расположение соответствующей точки получаемого изображения, заданной точкой в исходном Raster. Если dstPt указан, он используется для хранения возвращаемого значения. Поскольку это не геометрическая операция, возвращаемая точка совпадает с указанной точкой srcPt.
Задано в:
getPoint2D в интерфейсе RasterOp
Параметры:
srcPt - Point2D представляющая точку в исходном Raster
dstPt - Point2D для хранения результата.
Возвращает:
Point2D в получаемом изображении, соответствующая заданной точке в исходном изображении.

getRenderingHints

public final RenderingHints getRenderingHints()
Возвращает параметры визуализации для этой операции.
Задано в:
getRenderingHints в интерфейсе RasterOp
Возвращает:
Объект RenderingHints связанный с данной операцией. Возвращает null, если параметры визуализации не заданы.

© 1993, 2021, 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/17/docs/api/java.desktop/java/awt/image/BandCombineOp.html

Spec-Zone.ru

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