Class BrightnessContrastFilter
- All Implemented Interfaces:
ImageConsumer
,Cloneable
For brightness, the valid range is -2.0,..,0.0,..,2.0
.
A value of 0.0
means no change.
Negative values will make the pixels darker.
Maximum negative value (-2
) will make all filtered pixels black.
Positive values will make the pixels brighter.
Maximum positive value (2
) will make all filtered pixels white.
For contrast, the valid range is -1.0,..,0.0,..,1.0
.
A value of 0.0
means no change.
Negative values will reduce contrast.
Maximum negative value (-1
) will make all filtered pixels grey
(no contrast).
Positive values will increase contrast.
Maximum positive value (1
) will make all filtered pixels primary
colors (either black, white, cyan, magenta, yellow, red, blue or green).
- Version:
- $Id: //depot/branches/personal/haraldk/twelvemonkeys/release-2/twelvemonkeys-core/src/main/java/com/twelvemonkeys/image/BrightnessContrastFilter.java#1 $
-
Field Summary
FieldsFields inherited from class java.awt.image.RGBImageFilter
canFilterIndexColorModel, newmodel, origmodel
Fields inherited from class java.awt.image.ImageFilter
consumer
Fields inherited from interface java.awt.image.ImageConsumer
COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHT
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a BrightnessContrastFilter with default values (brightness=0.3, contrast=0.3
).BrightnessContrastFilter
(float pBrightness, float pContrast) Creates a BrightnessContrastFilter with the given values for brightness and contrast. -
Method Summary
Methods inherited from class java.awt.image.RGBImageFilter
filterIndexColorModel, filterRGBPixels, setColorModel, setPixels, setPixels, substituteColorModel
Methods inherited from class java.awt.image.ImageFilter
clone, getFilterInstance, imageComplete, resendTopDownLeftRight, setDimensions, setHints, setProperties
-
Field Details
-
LUT
private final int[] LUT
-
-
Constructor Details
-
BrightnessContrastFilter
public BrightnessContrastFilter()Creates a BrightnessContrastFilter with default values (brightness=0.3, contrast=0.3
).This will slightly increase both brightness and contrast.
-
BrightnessContrastFilter
public BrightnessContrastFilter(float pBrightness, float pContrast) Creates a BrightnessContrastFilter with the given values for brightness and contrast.For brightness, the valid range is
-2.0,..,0.0,..,2.0
. A value of0.0
means no change. Negative values will make the pixels darker. Maximum negative value (-2
) will make all filtered pixels black. Positive values will make the pixels brighter. Maximum positive value (2
) will make all filtered pixels white.For contrast, the valid range is
-1.0,..,0.0,..,1.0
. A value of0.0
means no change. Negative values will reduce contrast. Maximum negative value (-1
) will make all filtered pixels grey (no contrast). Positive values will increase contrast. Maximum positive value (1
) will make all filtered pixels primary colors (either black, white, cyan, magenta, yellow, red, blue or green).- Parameters:
pBrightness
- adjust the brightness of the image, in the range-2.0,..,0.0,..,2.0
.pContrast
- adjust the contrast of the image, in the range-1.0,..,0.0,..,1.0
.
-
-
Method Details
-
createLUT
private static int[] createLUT(float pBrightness, float pContrast) -
clamp
private static int clamp(int i) -
filterRGB
public int filterRGB(int pX, int pY, int pARGB) Filters one pixel, adjusting brightness and contrast according to this filter.- Specified by:
filterRGB
in classRGBImageFilter
- Parameters:
pX
- xpY
- ypARGB
- pixel value in default color space- Returns:
- the filtered pixel value in the default color space
-