MagicWandSettings

Inheritance: java.lang.Object

public class MagicWandSettings

Класс настроек выбора magic wand.

Конструкторы

КонструкторОписание
MagicWandSettings(Point point)Инициализирует новый экземпляр класса MagicWandSettings.
MagicWandSettings(int x, int y)Инициализирует новый экземпляр класса MagicWandSettings.

Методы

МетодОписание
getAreaOfInterest()Получает границы области для работы алгоритма.
setAreaOfInterest(Rectangle value)Устанавливает границы области для работы алгоритма.
getPoint()Получает опорную точку для работы алгоритма.
getThreshold()Получает уровень допуска для сравнения цветов пикселей.
setThreshold(int value)Устанавливает уровень допуска для сравнения цветов пикселей.
getContiguousMode()Получает значение, указывающее, будет ли magic wand определять только смежные пиксели.
setContiguousMode(boolean value)Устанавливает значение, указывающее, будет ли волшебная палочка определять только смежные пиксели.
getDirectionalMode()Получает режим алгоритма поиска заливки: поиск в четырёх из восьми направлений.
setDirectionalMode(int value)Устанавливает режим алгоритма поиска заливки: поиск в четырёх из восьми направлений.
getColorCompareMode()Получает алгоритм сравнения цветов.
setColorCompareMode(int value)Устанавливает алгоритм сравнения цветов.
getColorComparisonDelegate()Получает пользовательский алгоритм сравнения цветов, если ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) установлен в ColorComparisonMode.Custom.
setColorComparisonDelegate(MagicWandSettings.ColorComparison value)Устанавливает пользовательский алгоритм сравнения цветов, если ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) установлен в ColorComparisonMode.Custom.

Example: The example shows how to select a simple area of an image based on tone and color of any pixel using Magic Wand tool.

String imageFilePath = "input.png";
String outputFilePath = "masked.png";
try (RasterImage image = (RasterImage)Image.load(imageFilePath))
{
    // Создайте новую маску с помощью инструмента magic wand, основанную на тоне и цвете пикселя (120, 100) с пользовательским порогом, равным 150.
    MagicWandTool
            .select(image, new MagicWandSettings(120, 100) {{ setThreshold(150); }})
            // Примените маску к изображению
            .apply();

    // Сохраните изображение с принудительным параметром типа прозрачного цвета
    image.save(outputFilePath, new PngOptions()
    {{
        setColorType(PngColorType.TruecolorWithAlpha);
    }});
}

Example: The example shows how to select a complicated area of an image using Magic Wand tool and the ability to interact with masks (invert, union, subtract).

String imageFilePath = "input.png";
String outputFilePath = "masked-complex.png";
try (RasterImage image = (RasterImage)Image.load(imageFilePath))
{
    // Создайте новую маску с помощью инструмента magic wand, основанную на тоне и цвете пикселя (845, 128).
    MagicWandTool.select(image, new MagicWandSettings(845, 128))
            // Объедините существующую маску с указанной, созданной инструментом magic wand.
            .union(new MagicWandSettings(416, 387))
            // Инвертируйте существующую маску
            .invert()
            // Вычтите указанную маску, созданную инструментом magic wand с заданным порогом, из существующей.
            .subtract(new MagicWandSettings(1482, 346) {{ setThreshold(69); }})
            // Вычтите четыре указанных прямоугольных маски из существующей маски одну за другой.
            .subtract(new RectangleMask(0, 0, 800, 150))
            .subtract(new RectangleMask(0, 380, 600, 220))
            .subtract(new RectangleMask(930, 520, 110, 40))
            .subtract(new RectangleMask(1370, 400, 120, 200))
            // Смягчите маску с указанными настройками.
            .getFeathered(new FeatheringSettings() {{ setSize(3); }})
            // Примените маску к изображению
            .apply();

    // Сохранить изображение
    image.save(outputFilePath);
}

MagicWandSettings(Point point)

public MagicWandSettings(Point point)

Инициализирует новый экземпляр класса MagicWandSettings.

Parameters:

ПараметрТипОписание
pointPointОпорная точка.

MagicWandSettings(int x, int y)

public MagicWandSettings(int x, int y)

Инициализирует новый экземпляр класса MagicWandSettings.

Parameters:

ПараметрТипОписание
xintКоордината X опорной точки.
yintКоордината Y опорной точки.

getAreaOfInterest()

public final Rectangle getAreaOfInterest()

Получает границы области для работы алгоритма.

Значение: Прямоугольник, представляющий границы области интереса.

Returns: Rectangle - the bounds of the area for algorithm work.

setAreaOfInterest(Rectangle value)

public final void setAreaOfInterest(Rectangle value)

Устанавливает границы области для работы алгоритма.

Значение: Прямоугольник, представляющий границы области интереса.

Parameters:

ПараметрТипОписание
valueRectangleграницы области для работы алгоритма.

getPoint()

public final Point getPoint()

Получает опорную точку для работы алгоритма.

Значение: Значение Point.

Returns: Point - the reference point for algorithm work.

getThreshold()

public final int getThreshold()

Получает уровень допуска для сравнения цветов пикселей.

Значение: Порог сравнения цветов.

Returns: int - уровень допуска для сравнения цвета пикселей.

setThreshold(int value)

public final void setThreshold(int value)

Устанавливает уровень допуска для сравнения цветов пикселей.

Значение: Порог сравнения цветов.

Parameters:

ПараметрТипОписание
valueintуровень допуска для сравнения цвета пикселей.

getContiguousMode()

public final boolean getContiguousMode()

Получает значение, указывающее, будет ли magic wand определять только смежные пиксели.

Значение: true, если элемент включён; иначе false. Значение по умолчанию - true.

Returns: boolean - значение, указывающее, будет ли волшебная палочка определять только смежные пиксели.

setContiguousMode(boolean value)

public final void setContiguousMode(boolean value)

Устанавливает значение, указывающее, будет ли волшебная палочка определять только смежные пиксели.

Значение: true, если элемент включён; иначе false. Значение по умолчанию - true.

Parameters:

ПараметрТипОписание
valuebooleanзначение, указывающее, будет ли волшебная палочка определять только смежные пиксели.

getDirectionalMode()

public final int getDirectionalMode()

Получает режим алгоритма поиска заливки: поиск в четырёх из восьми направлений.

Значение: Режим алгоритма поиска заливки.

Returns: int - режим алгоритма поиска заливки: поиск в четырёх из восьми направлений.

setDirectionalMode(int value)

public final void setDirectionalMode(int value)

Устанавливает режим алгоритма поиска заливки: поиск в четырёх из восьми направлений.

Значение: Режим алгоритма поиска заливки.

Parameters:

ПараметрТипОписание
valueintрежим алгоритма поиска заливки: поиск в четырёх из восьми направлений.

getColorCompareMode()

public final int getColorCompareMode()

Получает алгоритм сравнения цветов.

Значение: Режим сравнения цветов.

Returns: int - алгоритм сравнения цветов.

setColorCompareMode(int value)

public final void setColorCompareMode(int value)

Устанавливает алгоритм сравнения цветов.

Значение: Режим сравнения цветов.

Parameters:

ПараметрТипОписание
valueintалгоритм сравнения цветов.

getColorComparisonDelegate()

public final MagicWandSettings.ColorComparison getColorComparisonDelegate()

Получает пользовательский алгоритм сравнения цветов, если ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) установлен в ColorComparisonMode.Custom.

Значение: Делегат сравнения цвета.

Returns: ColorComparison - the custom color comparison algorithm if ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) is set to ColorComparisonMode.Custom.

setColorComparisonDelegate(MagicWandSettings.ColorComparison value)

public final void setColorComparisonDelegate(MagicWandSettings.ColorComparison value)

Устанавливает пользовательский алгоритм сравнения цветов, если ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) установлен в ColorComparisonMode.Custom.

Значение: Делегат сравнения цвета.

Parameters:

ПараметрТипОписание
valueColorComparisonпользовательский алгоритм сравнения цветов, если ColorCompareMode(#getColorCompareMode.getColorCompareMode/#setColorCompareMode(int).setColorCompareMode(int)) установлен в ColorComparisonMode.Custom.