Класс 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) Создаёт |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
WritableRaster |
createCompatibleDestRaster(Raster src) Создаёт нулевую целевую |
WritableRaster |
filter(Raster src,
WritableRaster dst) Преобразует |
Rectangle2D |
getBounds2D(Raster src) Возвращает область ограничивающего прямоугольника преобразованного результата. |
float[][] |
getMatrix() Возвращает копию матрицы линейной комбинации. |
Point2D |
getPoint2D(Point2D srcPt,
Point2D dstPt) Возвращает расположение соответствующей целевой точки, заданной точкой в исходной |
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.