| Top | Home | Up | Prev | Next |
VipsInterpolate
VipsInterpolate
Functions
Types and Values
Object Hierarchy
GObject ╰── VipsObject ╰── VipsInterpolate
Description
Functions
VipsInterpolateMethod ()
void (*VipsInterpolateMethod) (VipsInterpolate *interpolate,void *out,VipsRegion *in,double x,double y);
An interpolation function. It should read source pixels from in
with
VIPS_REGION_ADDR(), it can look left and up from (x, y) by window_offset
pixels and it can access pixels in a window of size window_size
.
The interpolated value should be written to the pixel pointed to by out
.
See also: VipsInterpolateClass.
Parameters
interpolate
the interpolator
out
write the interpolated pixel here
in
read source pixels from here
x
interpolate value at this position
y
interpolate value at this position
vips_interpolate ()
void vips_interpolate (VipsInterpolate *interpolate,void *out,VipsRegion *in,double x,double y);
Look up the interpolate
method in the class and call it. Use
vips_interpolate_get_method() to get a direct pointer to the function and
avoid the lookup overhead.
You need to set in
and out
up correctly.
[skip]
Parameters
interpolate
interpolator to use
out
write result here
in
read source data from here
x
interpolate value at this position
y
interpolate value at this position
vips_interpolate_get_method ()
VipsInterpolateMethod
vips_interpolate_get_method (VipsInterpolate *interpolate);
Look up the interpolate
method in the class and return it. Use this
instead of vips_interpolate() to cache method dispatch.
[skip]
Parameters
interpolate
interpolator to use
Returns
a pointer to the interpolation function
vips_interpolate_get_window_size ()
int
vips_interpolate_get_window_size (VipsInterpolate *interpolate);
Look up an interpolators desired window size.
Parameters
interpolate
interpolator to use
Returns
the interpolators required window size
vips_interpolate_get_window_offset ()
int
vips_interpolate_get_window_offset (VipsInterpolate *interpolate);
Look up an interpolators desired window offset.
Parameters
interpolate
interpolator to use
Returns
the interpolators required window offset
vips_interpolate_nearest_static ()
VipsInterpolate *
vips_interpolate_nearest_static (void);
A convenience function that returns a nearest-neighbour interpolator you don't need to free.
Returns
a nearest-neighbour interpolator.
[transfer none]
vips_interpolate_bilinear_static ()
VipsInterpolate *
vips_interpolate_bilinear_static (void);
A convenience function that returns a bilinear interpolator you don't need to free.
Returns
a bilinear interpolator.
[transfer none]
vips_interpolate_new ()
VipsInterpolate *
vips_interpolate_new (const char *nickname);
Look up an interpolator from a nickname and make one. You need to free the
result with g_object_unref() when you're done with it.
See also: vips_type_find().
[constructor]
Parameters
nickname
nickname for interpolator
Returns
an interpolator, or NULL on error.
Types and Values
VIPS_TRANSFORM_SHIFT
#define VIPS_TRANSFORM_SHIFT (6)
Many of the vips interpolators use fixed-point arithmetic for coordinate calculation. This is how many bits of precision they use.
VIPS_TRANSFORM_SCALE
#define VIPS_TRANSFORM_SCALE (1 << VIPS_TRANSFORM_SHIFT)
VIPS_TRANSFORM_SHIFT as a multiplicative constant.
VIPS_INTERPOLATE_SHIFT
#define VIPS_INTERPOLATE_SHIFT (12)
Many of the vips interpolators use fixed-point arithmetic for value calcualtion. This is how many bits of precision they use.
VIPS_INTERPOLATE_SCALE
#define VIPS_INTERPOLATE_SCALE (1 << VIPS_INTERPOLATE_SHIFT)
VIPS_INTERPOLATE_SHIFT as a multiplicative constant.
Generated by GTK-Doc V1.32