Класс 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, используя матрицу, указанную в конструкторе.

Rectangle2D getBounds2D​(Raster src)

Возвращает ограничивающую рамку преобразованного целевого изображения.

float[][] getMatrix()

Возвращает копию матрицы линейной комбинации.

Point2D getPoint2D​(Point2D srcPt, Point2D dstPt)

Возвращает положение соответствующей точки назначения, заданной точкой в исходном Raster.

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, 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/image/BandCombineOp.html

Spec-Zone .ru
спецификации, руководства, описания, API