Defines | Functions
core/vil/vil_bicub_interp.txx File Reference

Bicubic interpolation functions for 2D images. More...

#include "vil_bicub_interp.h"
#include <vcl_compiler.h>

Go to the source code of this file.

Defines

#define vil_bicub_interp_txx_
#define vil_I(dx, dy)   (pix1[(dx)*xstep+(dy)*ystep])
#define vil_I(dx, dy)   (pix1[(dx)*xstep+(dy)*ystep])
#define VIL_BICUB_INTERP_INSTANTIATE(T)

Functions

template<class T >
double vil_bicub_interp_unsafe (double x, double y, const T *data, vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep)
 Compute bicubic interpolation at (x,y), no bound checks. Requires 1<x<ni-3, 1<y<nj-3.
template<class T >
double vil_bicub_interp_raw (double x, double y, const T *data, vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep)
 Compute bicubic interpolation at (x,y), no bound checks.

Detailed Description

Bicubic interpolation functions for 2D images.

The vil bicub source files were derived from the corresponding vil bilin files, thus the vil bilin/bicub source files are very similar. If you modify something in this file, there is a corresponding bilin file that would likely also benefit from the same change.

In this particular case, there is no corresponding vil_bilin_interp.txx file, see vil_bilin_interp.h instead.

Definition in file vil_bicub_interp.txx.


Define Documentation

#define VIL_BICUB_INTERP_INSTANTIATE (   T)
Value:
template double \
vil_bicub_interp_unsafe (double x, double y, const T* data, \
                         vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep); \
template double \
vil_bicub_interp_raw (double x, double y, const T* data, \
                      vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep)

Definition at line 158 of file vil_bicub_interp.txx.

#define vil_bicub_interp_txx_

Definition at line 3 of file vil_bicub_interp.txx.

#define vil_I (   dx,
  dy 
)    (pix1[(dx)*xstep+(dy)*ystep])
#define vil_I (   dx,
  dy 
)    (pix1[(dx)*xstep+(dy)*ystep])

Function Documentation

template<class T >
double vil_bicub_interp_raw ( double  x,
double  y,
const T *  data,
vcl_ptrdiff_t  xstep,
vcl_ptrdiff_t  ystep 
)

Compute bicubic interpolation at (x,y), no bound checks.

Image is nx * ny array of Ts. x,y element is data[xstep*x+ystep*y] No bound checks are done.

Definition at line 73 of file vil_bicub_interp.txx.

template<class T >
double vil_bicub_interp_unsafe ( double  x,
double  y,
const T *  data,
vcl_ptrdiff_t  xstep,
vcl_ptrdiff_t  ystep 
)

Compute bicubic interpolation at (x,y), no bound checks. Requires 1<x<ni-3, 1<y<nj-3.

Image is nx * ny array of Ts. x,y element is data[xstep*x+ystep*y] No bound checks are done.

Definition at line 28 of file vil_bicub_interp.txx.