com.jhlabs.image

Class LightFilter

Implemented Interfaces:
BufferedImageOp, Cloneable
Known Direct Subclasses:
ChromeFilter

public class LightFilter
extends WholeImageFilter

A filter which produces lighting and embossing effects.

Nested Class Summary

class
LightFilter.AmbientLight
class
LightFilter.DistantLight
static class
LightFilter.Light
A class representing a light.
static class
LightFilter.Material
A class representing material properties.
class
LightFilter.PointLight
class
LightFilter.SpotLight

Field Summary

static int
AMBIENT
static int
BUMPS_FROM_BEVEL
Use a custom function as the bump map.
static int
BUMPS_FROM_IMAGE
Use the input image brightness as the bump map.
static int
BUMPS_FROM_IMAGE_ALPHA
Use the input image alpha as the bump map.
static int
BUMPS_FROM_MAP
Use a separate image alpha channel as the bump map.
static int
COLORS_CONSTANT
Use constant material color.
static int
COLORS_FROM_IMAGE
Take the output colors from the input image.
static int
DISTANT
static int
POINT
static int
SPOT
protected static float
r255

Fields inherited from class com.jhlabs.image.WholeImageFilter

originalSpace, transformedSpace

Constructor Summary

LightFilter()

Method Summary

void
addLight(LightFilter.Light light)
protected int[]
filterPixels(int width, int height, int[] inPixels, Rectangle transformedSpace)
Function2D
getBumpFunction()
float
getBumpHeight()
float
getBumpSoftness()
int
getBumpSource()
int
getColorSource()
int
getDiffuseColor()
Image
getEnvironmentMap()
Vector
getLights()
LightFilter.Material
getMaterial()
float
getViewDistance()
protected Color4f
phongShade(Vector3f position, Vector3f viewpoint, Vector3f normal, Color4f diffuseColor, Color4f specularColor, LightFilter.Material material, LightFilter.Light[] lightsArray)
void
removeLight(LightFilter.Light light)
void
setBumpFunction(Function2D bumpFunction)
void
setBumpHeight(float bumpHeight)
void
setBumpSoftness(float bumpSoftness)
void
setBumpSource(int bumpSource)
void
setColorSource(int colorSource)
void
setDiffuseColor(int diffuseColor)
void
setEnvironmentMap(BufferedImage environmentMap)
protected void
setFromRGB(Color4f c, int argb)
void
setMaterial(LightFilter.Material material)
void
setViewDistance(float viewDistance)
String
toString()

Methods inherited from class com.jhlabs.image.WholeImageFilter

filter, filterPixels, transformSpace

Methods inherited from class com.jhlabs.image.AbstractBufferedImageOp

clone, createCompatibleDestImage, getBounds2D, getPoint2D, getRGB, getRenderingHints, setRGB

Field Details

AMBIENT

public static final int AMBIENT
Field Value:
0

BUMPS_FROM_BEVEL

public static final int BUMPS_FROM_BEVEL
Use a custom function as the bump map.
Field Value:
3

BUMPS_FROM_IMAGE

public static final int BUMPS_FROM_IMAGE
Use the input image brightness as the bump map.
Field Value:
0

BUMPS_FROM_IMAGE_ALPHA

public static final int BUMPS_FROM_IMAGE_ALPHA
Use the input image alpha as the bump map.
Field Value:
1

BUMPS_FROM_MAP

public static final int BUMPS_FROM_MAP
Use a separate image alpha channel as the bump map.
Field Value:
2

COLORS_CONSTANT

public static final int COLORS_CONSTANT
Use constant material color.
Field Value:
1

COLORS_FROM_IMAGE

public static final int COLORS_FROM_IMAGE
Take the output colors from the input image.
Field Value:
0

DISTANT

public static final int DISTANT
Field Value:
1

POINT

public static final int POINT
Field Value:
2

SPOT

public static final int SPOT
Field Value:
3

r255

protected static final float r255
Field Value:
0.0f

Constructor Details

LightFilter

public LightFilter()

Method Details

addLight

public void addLight(LightFilter.Light light)

filterPixels

protected int[] filterPixels(int width,
                             int height,
                             int[] inPixels,
                             Rectangle transformedSpace)
Overrides:
filterPixels in interface WholeImageFilter

getBumpFunction

public Function2D getBumpFunction()

getBumpHeight

public float getBumpHeight()

getBumpSoftness

public float getBumpSoftness()

getBumpSource

public int getBumpSource()

getColorSource

public int getColorSource()

getDiffuseColor

public int getDiffuseColor()

getEnvironmentMap

public Image getEnvironmentMap()

getLights

public Vector getLights()

getMaterial

public LightFilter.Material getMaterial()

getViewDistance

public float getViewDistance()

phongShade

protected Color4f phongShade(Vector3f position,
                             Vector3f viewpoint,
                             Vector3f normal,
                             Color4f diffuseColor,
                             Color4f specularColor,
                             LightFilter.Material material,
                             LightFilter.Light[] lightsArray)

removeLight

public void removeLight(LightFilter.Light light)

setBumpFunction

public void setBumpFunction(Function2D bumpFunction)

setBumpHeight

public void setBumpHeight(float bumpHeight)

setBumpSoftness

public void setBumpSoftness(float bumpSoftness)

setBumpSource

public void setBumpSource(int bumpSource)

setColorSource

public void setColorSource(int colorSource)

setDiffuseColor

public void setDiffuseColor(int diffuseColor)

setEnvironmentMap

public void setEnvironmentMap(BufferedImage environmentMap)

setFromRGB

protected void setFromRGB(Color4f c,
                          int argb)

setMaterial

public void setMaterial(LightFilter.Material material)

setViewDistance

public void setViewDistance(float viewDistance)

toString

public String toString()