GimpBilinear

GimpBilinear — Utility functions for bilinear interpolation.

Functions

Description

Utility functions for bilinear interpolation.

Functions

gimp_bilinear ()

gdouble
gimp_bilinear (gdouble x,
               gdouble y,
               gdouble *values);

gimp_bilinear_8 ()

guchar
gimp_bilinear_8 (gdouble x,
                 gdouble y,
                 guchar *values);

gimp_bilinear_16 ()

guint16
gimp_bilinear_16 (gdouble x,
                  gdouble y,
                  guint16 *values);

gimp_bilinear_32 ()

guint32
gimp_bilinear_32 (gdouble x,
                  gdouble y,
                  guint32 *values);

gimp_bilinear_rgb ()

GimpRGB
gimp_bilinear_rgb (gdouble x,
                   gdouble y,
                   GimpRGB *values);

gimp_bilinear_rgba ()

GimpRGB
gimp_bilinear_rgba (gdouble x,
                    gdouble y,
                    GimpRGB *values);

gimp_bilinear_pixels_8 ()

void
gimp_bilinear_pixels_8 (guchar *dest,
                        gdouble x,
                        gdouble y,
                        guint bpp,
                        gboolean has_alpha,
                        guchar **values);

gimp_bilinear_pixels_8 is deprecated and should not be used in newly-written code.

Computes bilinear interpolation of four pixels.

When has_alpha is FALSE, it's identical to gimp_bilinear_8() on each channel separately. When has_alpha is TRUE, it handles alpha channel correctly.

The pixels in values correspond to corner x, y coordinates in the following order: [0,0], [1,0], [0,1], [1,1].

Parameters

dest

Pixel, where interpolation result is to be stored.

 

x

x-coordinate (0.0 to 1.0).

 

y

y-coordinate (0.0 to 1.0).

 

bpp

Bytes per pixel. dest and each values item is an array of bpp bytes.

 

has_alpha

TRUE if the last channel is an alpha channel.

 

values

Array of four pointers to pixels.