Spec-Zone.ru › OpenJDK 21

Класс ConvolveOp

java.lang.Object
java.awt.image.ConvolveOp
Все реализуемые интерфейсы:
BufferedImageOp, RasterOp
public class ConvolveOp extends Object implements BufferedImageOp, RasterOp
Этот класс реализует свёртку из исходного в целевое изображение. Свёртка с использованием ядра свёртки — это пространственная операция, которая вычисляет выходной пиксель из входного пикселя путём умножения ядра на окружение входного пикселя. Это позволяет выходному пикселю быть зависимым от ближайшего окружения, что может быть математически задано с помощью ядра.

Этот класс работает с данными BufferedImage, в которых цветовые компоненты умножены на альфа-компонент. Если исходное изображение BufferedImage имеет альфа-компонент, а цветовые компоненты не умножены на альфа-компонент, то данные умножаются на альфа-компонент перед свёрткой. Если в целевом изображении цветовые компоненты не умножены, то альфа делится на них перед сохранением в целевое изображение (если альфа равна 0, то цветовые компоненты устанавливаются в 0). Если целевое изображение не имеет альфа-компонента, то полученная альфа отбрасывается после деления на цветовые компоненты.

Растры рассматриваются как не имеющие альфа-канала. Если указанное выше обращение с альфа-каналом в BufferedImage нежелательно, то это можно избежать, получив растр из исходного BufferedImage и используя метод фильтрации этого класса, который работает с растрами.

Если в конструкторе указан объект RenderingHints, то подсказка по цветовому рендерингу и подсказка по дitheringu могут быть использованы при необходимости преобразования цвета.

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

См. также:
  • Kernel
  • RenderingHints.KEY_COLOR_RENDERING
  • RenderingHints.KEY_DITHERING

Краткое описание полей

Модификатор и тип Поле Описание
static final int EDGE_NO_OP
Пиксели на краю исходного изображения копируются в соответствующие пиксели целевого изображения без изменений.
static final int EDGE_ZERO_FILL
Пиксели на краю целевого изображения устанавливаются в ноль.

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

Конструктор Описание
ConvolveOp(Kernel kernel)
Создаёт ConvolveOp, используя ядро.
ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
Создаёт ConvolveOp, используя ядро, условие для края и объект RenderingHints (который может быть null).

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

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

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

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

Подробное описание полей

EDGE_ZERO_FILL

@Native public static final int EDGE_ZERO_FILL
Пиксели по краям изображения назначения устанавливаются в ноль. Это значение по умолчанию.
См. также:
  • Значения константных полей

EDGE_NO_OP

@Native public static final int EDGE_NO_OP
Пиксели по краям исходного изображения копируются в соответствующие пиксели назначения без изменений.
См. также:
  • Значения константных полей

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

ConvolveOp

public ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
Создаёт объект ConvolveOp на основе ядра, условия обработки краёв и объекта RenderingHints (который может быть null).
Параметры:
kernel - указанное Kernel
edgeCondition - указанное условие обработки краёв
hints - указанный объект RenderingHints
См. также:
  • Kernel
  • EDGE_NO_OP
  • EDGE_ZERO_FILL
  • RenderingHints

ConvolveOp

public ConvolveOp(Kernel kernel)
Создаёт объект ConvolveOp на основе ядра. Условие обработки краёв будет EDGE_ZERO_FILL.
Параметры:
kernel - указанное Kernel
См. также:
  • Kernel
  • EDGE_ZERO_FILL

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

getEdgeCondition

public int getEdgeCondition()
Возвращает условие обработки краёв.
Возвращает:
условие обработки краёв для этого ConvolveOp.
См. также:
  • EDGE_NO_OP
  • EDGE_ZERO_FILL

getKernel

public final Kernel getKernel()
Возвращает ядро.
Возвращает:
ядро этого ConvolveOp.

filter

public final BufferedImage filter(BufferedImage src, BufferedImage dst)
Выполняет свёртку над объектами BufferedImage. Каждый компонент исходного изображения будет проведён свёрткой (включая альфа-компонент, если он присутствует). Если цветовая модель в исходном изображении отличается от модели в изображении назначения, пиксели будут преобразованы в изображении назначения. Если изображение назначения равно null, будет создано BufferedImage с цветовой моделью исходного изображения. IllegalArgumentException может быть брошен, если исходное изображение совпадает с изображением назначения.
Определено в:
filter в интерфейсе BufferedImageOp
Параметры:
src - исходное BufferedImage для фильтрации
dst - изображение назначения BufferedImage для отфильтрованного src
Возвращает:
отфильтрованное BufferedImage
Исключения:
NullPointerException - если src равно null
IllegalArgumentException - если src равно dst
ImagingOpException - если src не может быть отфильтровано

filter

public final WritableRaster filter(Raster src, WritableRaster dst)
Выполняет свёртку над растрами. Каждый канал исходного растра будет проведён свёрткой. Исходный и целевой растры должны иметь одинаковое количество каналов. Если целевой растр равен null, будет создан новый растр. IllegalArgumentException может быть брошен, если исходный растр совпадает с целевым растром.
Определено в:
filter в интерфейсе RasterOp
Параметры:
src - исходный Raster для фильтрации
dst - целевой WritableRaster для отфильтрованного src
Возвращает:
отфильтрованный WritableRaster
Исключения:
NullPointerException - если src равно null
ImagingOpException - если src и dst не имеют одинакового количества каналов
ImagingOpException - если src не может быть отфильтровано
IllegalArgumentException - если src равно dst

createCompatibleDestImage

public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
Создаёт изображение назначения с нулевыми значениями, соответствующего размера и количества каналов. Если destCM равен null, будет использована подходящая цветовая модель.
Определено в:
createCompatibleDestImage в интерфейсе BufferedImageOp
Параметры:
src - Исходное изображение для операции фильтрации.
destCM - Цветовая модель изображения назначения. Может быть null.
Возвращает:
изображение назначения BufferedImage с соответствующим размером и количеством каналов.

createCompatibleDestRaster

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

getBounds2D

public final Rectangle2D getBounds2D(BufferedImage src)
Возвращает область ограничивающего прямоугольника отфильтрованного изображения назначения. Так как это не геометрическая операция, область ограничивающего прямоугольника не изменяется.
Определено в:
getBounds2D в интерфейсе BufferedImageOp
Параметры:
src - BufferedImage для фильтрации
Возвращает:
объект Rectangle2D представляющий ограничивающую область изображения назначения.

getBounds2D

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

getPoint2D

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

getRenderingHints

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

© 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/ConvolveOp.html

Spec-Zone.ru

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