Spec-Zone.ru › OpenJDK 8

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

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.

Spec-Zone.ru

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