public class ImageMath extends Object
| Modifier and Type | Field and Description | 
|---|---|
static float | 
HALF_PI
The value of half pi as a float. 
 | 
static float | 
PI
The value of pi as a float. 
 | 
static float | 
QUARTER_PI
The value of quarter pi as a float. 
 | 
static float | 
TWO_PI
The value of two pi as a float. 
 | 
| Constructor and Description | 
|---|
ImageMath()  | 
| Modifier and Type | Method and Description | 
|---|---|
static float | 
bias(float a,
    float b)
Apply a bias to a number in the unit interval, moving numbers towards 0 or 1
 according to the bias parameter. 
 | 
static int | 
bilinearInterpolate(float x,
                   float y,
                   int nw,
                   int ne,
                   int sw,
                   int se)
Bilinear interpolation of ARGB values. 
 | 
static int | 
brightnessNTSC(int rgb)
Return the NTSC gray level of an RGB value. 
 | 
static float | 
circleDown(float x)
A "circle down" function. 
 | 
static float | 
circleUp(float x)
A "circle up" function. 
 | 
static float | 
clamp(float x,
     float a,
     float b)
Clamp a value to an interval. 
 | 
static int | 
clamp(int x,
     int a,
     int b)
Clamp a value to an interval. 
 | 
static int | 
colorSpline(float x,
           int numKnots,
           int[] knots)
Compute a Catmull-Rom spline for RGB values. 
 | 
static int | 
colorSpline(int x,
           int numKnots,
           int[] xknots,
           int[] yknots)
Compute a Catmull-Rom spline for RGB values, but with variable knot spacing. 
 | 
static float | 
gain(float a,
    float b)
A variant of the gamma function. 
 | 
static float | 
lerp(float t,
    float a,
    float b)
Linear interpolation. 
 | 
static int | 
lerp(float t,
    int a,
    int b)
Linear interpolation. 
 | 
static int | 
mixColors(float t,
         int rgb1,
         int rgb2)
Linear interpolation of ARGB values. 
 | 
static double | 
mod(double a,
   double b)
Return a mod b. 
 | 
static float | 
mod(float a,
   float b)
Return a mod b. 
 | 
static int | 
mod(int a,
   int b)
Return a mod b. 
 | 
static void | 
premultiply(int[] p,
           int offset,
           int length)
Premultiply a block of pixels 
 | 
static float | 
pulse(float a,
     float b,
     float x)
The pulse function. 
 | 
static void | 
resample(int[] source,
        int[] dest,
        int length,
        int offset,
        int stride,
        float[] out)
An implementation of Fant's resampling algorithm. 
 | 
static float | 
smoothPulse(float a1,
           float a2,
           float b1,
           float b2,
           float x)
A smoothed pulse function. 
 | 
static float | 
smoothStep(float a,
          float b,
          float x)
A smoothed step function. 
 | 
static float | 
spline(float x,
      int numKnots,
      float[] knots)
Compute a Catmull-Rom spline. 
 | 
static float | 
spline(float x,
      int numKnots,
      int[] xknots,
      int[] yknots)
Compute a Catmull-Rom spline, but with variable knot spacing. 
 | 
static float | 
step(float a,
    float x)
The step function. 
 | 
static float | 
triangle(float x)
The triangle function. 
 | 
static void | 
unpremultiply(int[] p,
             int offset,
             int length)
Premultiply a block of pixels 
 | 
public static final float PI
public static final float HALF_PI
public static final float QUARTER_PI
public static final float TWO_PI
public static float bias(float a,
         float b)
a - the number to biasb - the bias parameter. 0.5 means no change, smaller values bias towards 0, larger towards 1.public static float gain(float a,
         float b)
a - the number to apply gain tob - the gain parameter. 0.5 means no change, smaller values reduce gain, larger values increase gain.public static float step(float a,
         float x)
a - the threshold positionx - the input parameterpublic static float pulse(float a,
          float b,
          float x)
a - the lower threshold positionb - the upper threshold positionx - the input parameterpublic static float smoothPulse(float a1,
                float a2,
                float b1,
                float b2,
                float x)
a1 - the lower threshold position for the start of the pulsea2 - the upper threshold position for the start of the pulseb1 - the lower threshold position for the end of the pulseb2 - the upper threshold position for the end of the pulsex - the input parameterpublic static float smoothStep(float a,
               float b,
               float x)
a - the lower threshold positionb - the upper threshold positionx - the input parameterpublic static float circleUp(float x)
x - the input parameter in the range 0..1public static float circleDown(float x)
x - the input parameter in the range 0..1public static float clamp(float x,
          float a,
          float b)
a - the lower clamp thresholdb - the upper clamp thresholdx - the input parameterpublic static int clamp(int x,
        int a,
        int b)
a - the lower clamp thresholdb - the upper clamp thresholdx - the input parameterpublic static double mod(double a,
         double b)
a - the dividendb - the divisorpublic static float mod(float a,
        float b)
a - the dividendb - the divisorpublic static int mod(int a,
      int b)
a - the dividendb - the divisorpublic static float triangle(float x)
x - the input parameterpublic static float lerp(float t,
         float a,
         float b)
t - the interpolation parametera - the lower interpolation rangeb - the upper interpolation rangepublic static int lerp(float t,
       int a,
       int b)
t - the interpolation parametera - the lower interpolation rangeb - the upper interpolation rangepublic static int mixColors(float t,
            int rgb1,
            int rgb2)
t - the interpolation parameterrgb1 - the lower interpolation rangergb2 - the upper interpolation rangepublic static int bilinearInterpolate(float x,
                      float y,
                      int nw,
                      int ne,
                      int sw,
                      int se)
x - the X interpolation parameter 0..1y - the y interpolation parameter 0..1rgb - array of four ARGB values in the order NW, NE, SW, SEpublic static int brightnessNTSC(int rgb)
rgb1 - the input pixelpublic static float spline(float x,
           int numKnots,
           float[] knots)
x - the input parameternumKnots - the number of knots in the splineknots - the array of knotspublic static float spline(float x,
           int numKnots,
           int[] xknots,
           int[] yknots)
x - the input parameternumKnots - the number of knots in the splinexknots - the array of knot x valuesyknots - the array of knot y valuespublic static int colorSpline(float x,
              int numKnots,
              int[] knots)
x - the input parameternumKnots - the number of knots in the splineknots - the array of knotspublic static int colorSpline(int x,
              int numKnots,
              int[] xknots,
              int[] yknots)
x - the input parameternumKnots - the number of knots in the splinexknots - the array of knot x valuesyknots - the array of knot y valuespublic static void resample(int[] source,
            int[] dest,
            int length,
            int offset,
            int stride,
            float[] out)
source - the source pixelsdest - the destination pixelslength - the length of the scanline to resampleoffset - the start offset into the arraysstride - the offset between pixels in consecutive rowsout - an array of output positions for each pixelpublic static void premultiply(int[] p,
               int offset,
               int length)
public static void unpremultiply(int[] p,
                 int offset,
                 int length)
Copyright © 2012-2013 Bambi Software Foundation. All Rights Reserved.