| java.lang.Object javax.media.jai.Interpolation javax.media.jai.InterpolationNearest
InterpolationNearest | final public class InterpolationNearest extends Interpolation (Code) | | A class representing nearest-neighbor interpolation. Since
nearest-neighbor interpolation is simply pixel copying, and not
really interpolation at all, most code that performs
nearest-neighbor sampling will want to use special-purpose code.
However, this class is provided both as a way to specify such
interpolation, with the consumer making use of 'instanceof' to
detect the particular class, and as a way to force general
Interpolation users to use nearest-neighbor sampling.
Note that this interpolator does not actually select the
"nearest" pixel, but only uses the truncated integer pixel
location (floor). This is an optimization reflecting an
assumption about the implementation of the resampler. It
is assumed that the conversion of continuous source
image coordinates to discrete pixel indices drops the final
subtraction of 0.5 for the case of a nearest-neighbor interpolator.
Neighborhoods of sizes 2x1, 1x2, 2x2, 4x1, 1x4, 4x4, Nx1 and
1xN, that is, all the interpolate() methods defined in the
Interpolation class, are supported in the interest of simplifying
code that handles a number of types of interpolation. In each
case, the central sample is returned and the rest are ignored.
The class is marked 'final' so that it may be more easily inlined.
|
Method Summary | |
public int | interpolate(int[][] samples, int xfrac, int yfrac) Performs interpolation on a two-dimensional array of integral samples. | public int | interpolate(int s00, int s01, int s10, int s11, int xfrac, int yfrac) Performs interpolation on a 2x2 grid of integral samples. | public int | interpolate(int s__, int s_0, int s_1, int s_2, int s0_, int s00, int s01, int s02, int s1_, int s10, int s11, int s12, int s2_, int s20, int s21, int s22, int xfrac, int yfrac) Performs interpolation on a 4x4 grid of integral samples. | public float | interpolate(float[][] samples, float xfrac, float yfrac) Performs interpolation on a two-dimensional array of
floating-point samples. | public float | interpolate(float s00, float s01, float s10, float s11, float xfrac, float yfrac) Performs interpolation on a 2x2 grid of floating-point samples. | public float | interpolate(float s__, float s_0, float s_1, float s_2, float s0_, float s00, float s01, float s02, float s1_, float s10, float s11, float s12, float s2_, float s20, float s21, float s22, float xfrac, float yfrac) Performs interpolation on a 4x4 grid of floating-point samples. | public double | interpolate(double[][] samples, float xfrac, float yfrac) Performs interpolation on a two-dimensional array of
double samples. | public double | interpolate(double s00, double s01, double s10, double s11, float xfrac, float yfrac) Performs interpolation on a 2x2 grid of double samples. | public double | interpolate(double s__, double s_0, double s_1, double s_2, double s0_, double s00, double s01, double s02, double s1_, double s10, double s11, double s12, double s2_, double s20, double s21, double s22, float xfrac, float yfrac) Performs interpolation on a 4x4 grid of double samples. | public int | interpolateH(int[] samples, int xfrac) Performs horizontal interpolation on a one-dimensional array of
integral samples. | public int | interpolateH(int s0, int s1, int xfrac) Performs horizontal interpolation on a pair of integral samples. | public float | interpolateH(float[] samples, float xfrac) Performs horizontal interpolation on a one-dimensional array of
floating-point samples. | public float | interpolateH(float s0, float s1, float xfrac) Performs horizontal interpolation on a pair of floating-point
samples. | public double | interpolateH(double[] samples, float xfrac) Performs horizontal interpolation on a one-dimensional array of
double samples. | public double | interpolateH(double s0, double s1, float xfrac) Performs horizontal interpolation on a pair of double
samples. | public int | interpolateV(int[] samples, int yfrac) Performs vertical interpolation on a one-dimensional array of
integral samples. | public int | interpolateV(int s0, int s1, int yfrac) Performs vertical interpolation on a pair of integral samples. | public float | interpolateV(float[] samples, float yfrac) Performs vertical interpolation on a one-dimensional array of
floating-point samples. | public float | interpolateV(float s0, float s1, float yfrac) Performs vertical interpolation on a pair of floating-point
samples. | public double | interpolateV(double[] samples, float yfrac) Performs vertical interpolation on a one-dimensional array of
double samples. | public double | interpolateV(double s0, double s1, float yfrac) Performs vertical interpolation on a pair of double
samples. |
InterpolationNearest | public InterpolationNearest()(Code) | | Constructs an InterpolationNearest . The return
value of getSubsampleBitsH() and
getSubsampleBitsV() will be 0.
|
interpolate | public int interpolate(int[][] samples, int xfrac, int yfrac)(Code) | | Performs interpolation on a two-dimensional array of integral samples.
The central sample (samples[0][0]) is returned.
|
interpolate | public int interpolate(int s00, int s01, int s10, int s11, int xfrac, int yfrac)(Code) | | Performs interpolation on a 2x2 grid of integral samples.
The central sample (s00) is returned.
|
interpolate | public int interpolate(int s__, int s_0, int s_1, int s_2, int s0_, int s00, int s01, int s02, int s1_, int s10, int s11, int s12, int s2_, int s20, int s21, int s22, int xfrac, int yfrac)(Code) | | Performs interpolation on a 4x4 grid of integral samples.
The central sample (s00) is returned.
|
interpolate | public float interpolate(float[][] samples, float xfrac, float yfrac)(Code) | | Performs interpolation on a two-dimensional array of
floating-point samples. The central sample (samples[0][0]) is
returned.
|
interpolate | public float interpolate(float s00, float s01, float s10, float s11, float xfrac, float yfrac)(Code) | | Performs interpolation on a 2x2 grid of floating-point samples.
The central sample (s00) is returned.
|
interpolate | public float interpolate(float s__, float s_0, float s_1, float s_2, float s0_, float s00, float s01, float s02, float s1_, float s10, float s11, float s12, float s2_, float s20, float s21, float s22, float xfrac, float yfrac)(Code) | | Performs interpolation on a 4x4 grid of floating-point samples.
The central sample (s00) is returned.
|
interpolate | public double interpolate(double[][] samples, float xfrac, float yfrac)(Code) | | Performs interpolation on a two-dimensional array of
double samples. The central sample (samples[0][0]) is
returned.
|
interpolate | public double interpolate(double s00, double s01, double s10, double s11, float xfrac, float yfrac)(Code) | | Performs interpolation on a 2x2 grid of double samples.
The central sample (s00) is returned.
|
interpolate | public double interpolate(double s__, double s_0, double s_1, double s_2, double s0_, double s00, double s01, double s02, double s1_, double s10, double s11, double s12, double s2_, double s20, double s21, double s22, float xfrac, float yfrac)(Code) | | Performs interpolation on a 4x4 grid of double samples.
The central sample (s00) is returned.
|
interpolateH | public int interpolateH(int[] samples, int xfrac)(Code) | | Performs horizontal interpolation on a one-dimensional array of
integral samples. The central sample (samples[0]) is returned.
|
interpolateH | public int interpolateH(int s0, int s1, int xfrac)(Code) | | Performs horizontal interpolation on a pair of integral samples.
The central sample (s0) is returned.
|
interpolateH | public float interpolateH(float[] samples, float xfrac)(Code) | | Performs horizontal interpolation on a one-dimensional array of
floating-point samples. The central sample (s0) is returned.
|
interpolateH | public float interpolateH(float s0, float s1, float xfrac)(Code) | | Performs horizontal interpolation on a pair of floating-point
samples. The central sample (s0) is returned.
|
interpolateH | public double interpolateH(double[] samples, float xfrac)(Code) | | Performs horizontal interpolation on a one-dimensional array of
double samples. The central sample (s0) is returned.
|
interpolateH | public double interpolateH(double s0, double s1, float xfrac)(Code) | | Performs horizontal interpolation on a pair of double
samples. The central sample (s0) is returned.
|
interpolateV | public int interpolateV(int[] samples, int yfrac)(Code) | | Performs vertical interpolation on a one-dimensional array of
integral samples. The central sample (samples[0]) is returned.
|
interpolateV | public int interpolateV(int s0, int s1, int yfrac)(Code) | | Performs vertical interpolation on a pair of integral samples.
The central sample (s0) is returned.
|
interpolateV | public float interpolateV(float[] samples, float yfrac)(Code) | | Performs vertical interpolation on a one-dimensional array of
floating-point samples. The central sample (s0) is returned.
|
interpolateV | public float interpolateV(float s0, float s1, float yfrac)(Code) | | Performs vertical interpolation on a pair of floating-point
samples. The central sample (s0) is returned.
|
interpolateV | public double interpolateV(double[] samples, float yfrac)(Code) | | Performs vertical interpolation on a one-dimensional array of
double samples. The central sample (s0) is returned.
|
interpolateV | public double interpolateV(double s0, double s1, float yfrac)(Code) | | Performs vertical interpolation on a pair of double
samples. The central sample (s0) is returned.
|
Methods inherited from javax.media.jai.Interpolation | public int getBottomPadding()(Code)(Java Doc) public int getHeight()(Code)(Java Doc) public static synchronized Interpolation getInstance(int type)(Code)(Java Doc) public int getLeftPadding()(Code)(Java Doc) public int getRightPadding()(Code)(Java Doc) public int getSubsampleBitsH()(Code)(Java Doc) public int getSubsampleBitsV()(Code)(Java Doc) public int getTopPadding()(Code)(Java Doc) public int getWidth()(Code)(Java Doc) public int interpolate(int[][] samples, int xfrac, int yfrac)(Code)(Java Doc) public int interpolate(int s00, int s01, int s10, int s11, int xfrac, int yfrac)(Code)(Java Doc) public int interpolate(int s__, int s_0, int s_1, int s_2, int s0_, int s00, int s01, int s02, int s1_, int s10, int s11, int s12, int s2_, int s20, int s21, int s22, int xfrac, int yfrac)(Code)(Java Doc) public float interpolate(float[][] samples, float xfrac, float yfrac)(Code)(Java Doc) public float interpolate(float s00, float s01, float s10, float s11, float xfrac, float yfrac)(Code)(Java Doc) public float interpolate(float s__, float s_0, float s_1, float s_2, float s0_, float s00, float s01, float s02, float s1_, float s10, float s11, float s12, float s2_, float s20, float s21, float s22, float xfrac, float yfrac)(Code)(Java Doc) public double interpolate(double[][] samples, float xfrac, float yfrac)(Code)(Java Doc) public double interpolate(double s00, double s01, double s10, double s11, float xfrac, float yfrac)(Code)(Java Doc) public double interpolate(double s__, double s_0, double s_1, double s_2, double s0_, double s00, double s01, double s02, double s1_, double s10, double s11, double s12, double s2_, double s20, double s21, double s22, float xfrac, float yfrac)(Code)(Java Doc) abstract public int interpolateH(int[] samples, int xfrac)(Code)(Java Doc) public int interpolateH(int s0, int s1, int xfrac)(Code)(Java Doc) public int interpolateH(int s_, int s0, int s1, int s2, int xfrac)(Code)(Java Doc) abstract public float interpolateH(float[] samples, float xfrac)(Code)(Java Doc) public float interpolateH(float s0, float s1, float xfrac)(Code)(Java Doc) public float interpolateH(float s_, float s0, float s1, float s2, float xfrac)(Code)(Java Doc) abstract public double interpolateH(double[] samples, float xfrac)(Code)(Java Doc) public double interpolateH(double s0, double s1, float xfrac)(Code)(Java Doc) public double interpolateH(double s_, double s0, double s1, double s2, float xfrac)(Code)(Java Doc) public int interpolateV(int[] samples, int yfrac)(Code)(Java Doc) public int interpolateV(int s0, int s1, int yfrac)(Code)(Java Doc) public int interpolateV(int s_, int s0, int s1, int s2, int yfrac)(Code)(Java Doc) public float interpolateV(float[] samples, float yfrac)(Code)(Java Doc) public float interpolateV(float s0, float s1, float yfrac)(Code)(Java Doc) public float interpolateV(float s_, float s0, float s1, float s2, float yfrac)(Code)(Java Doc) public double interpolateV(double[] samples, float yfrac)(Code)(Java Doc) public double interpolateV(double s0, double s1, float yfrac)(Code)(Java Doc) public double interpolateV(double s_, double s0, double s1, double s2, float yfrac)(Code)(Java Doc) public boolean isSeparable()(Code)(Java Doc)
|
|
|