Package com.jhlabs.image
Class Gradient
- java.lang.Object
-
- com.jhlabs.image.ArrayColormap
-
- com.jhlabs.image.Gradient
-
- All Implemented Interfaces:
Colormap,java.io.Serializable,java.lang.Cloneable
public class Gradient extends ArrayColormap implements java.lang.Cloneable, java.io.Serializable
A Colormap implemented using Catmull-Rom colour splines. The map has a variable number of knots with a minimum of four. The first and last knots give the tangent at the end of the spline, and colours are interpolated from the second to the second-last knots. Each knot can be given a type of interpolation. These are:- LINEAR - linear interpolation to next knot
- SPLINE - spline interpolation to next knot
- CONSTANT - no interpolation - the colour is constant to the next knot
- HUE_CW - interpolation of hue clockwise to next knot
- HUE_CCW - interpolation of hue counter-clockwise to next knot
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intCIRCLE_DOWNstatic intCIRCLE_UPstatic intCONSTANTstatic intHUE_CCWstatic intHUE_CWbyte[]knotTypesstatic intLINEARintnumKnotsstatic intRGBstatic intSPLINEint[]xKnotsint[]yKnots-
Fields inherited from class com.jhlabs.image.ArrayColormap
map
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddKnot(int x, int color, int type)java.lang.Objectclone()voidcopyTo(Gradient g)intgetKnot(int n)bytegetKnotBlend(int n)intgetKnotType(int n)intknotAt(int x)voidmutate(float amount)static GradientrandomGradient()voidrandomize()voidrebuild()voidremoveKnot(int n)voidsetColor(int n, int color)voidsetKnot(int n, int color)voidsetKnotBlend(int n, int type)voidsetKnotPosition(int n, int x)voidsetKnots(int[] x, int[] rgb, byte[] types)voidsetKnots(int[] x, int[] y, byte[] types, int offset, int count)voidsetKnotType(int n, int type)voidsplitSpan(int n)-
Methods inherited from class com.jhlabs.image.ArrayColormap
getColor, getMap, setColorInterpolated, setColorRange, setColorRange, setMap
-
-
-
-
Field Detail
-
RGB
public static final int RGB
- See Also:
- Constant Field Values
-
HUE_CW
public static final int HUE_CW
- See Also:
- Constant Field Values
-
HUE_CCW
public static final int HUE_CCW
- See Also:
- Constant Field Values
-
LINEAR
public static final int LINEAR
- See Also:
- Constant Field Values
-
SPLINE
public static final int SPLINE
- See Also:
- Constant Field Values
-
CIRCLE_UP
public static final int CIRCLE_UP
- See Also:
- Constant Field Values
-
CIRCLE_DOWN
public static final int CIRCLE_DOWN
- See Also:
- Constant Field Values
-
CONSTANT
public static final int CONSTANT
- See Also:
- Constant Field Values
-
numKnots
public int numKnots
-
xKnots
public int[] xKnots
-
yKnots
public int[] yKnots
-
knotTypes
public byte[] knotTypes
-
-
Method Detail
-
clone
public java.lang.Object clone()
- Overrides:
clonein classArrayColormap
-
copyTo
public void copyTo(Gradient g)
-
setColor
public void setColor(int n, int color)- Overrides:
setColorin classArrayColormap
-
getKnot
public int getKnot(int n)
-
setKnot
public void setKnot(int n, int color)
-
setKnotType
public void setKnotType(int n, int type)
-
getKnotType
public int getKnotType(int n)
-
setKnotBlend
public void setKnotBlend(int n, int type)
-
getKnotBlend
public byte getKnotBlend(int n)
-
addKnot
public void addKnot(int x, int color, int type)
-
removeKnot
public void removeKnot(int n)
-
setKnots
public void setKnots(int[] x, int[] rgb, byte[] types)
-
setKnots
public void setKnots(int[] x, int[] y, byte[] types, int offset, int count)
-
splitSpan
public void splitSpan(int n)
-
setKnotPosition
public void setKnotPosition(int n, int x)
-
knotAt
public int knotAt(int x)
-
rebuild
public void rebuild()
-
randomize
public void randomize()
-
mutate
public void mutate(float amount)
-
randomGradient
public static Gradient randomGradient()
-
-