26#ifndef SCIMATH_INTERPOLATE2D_H 
   27#define SCIMATH_INTERPOLATE2D_H 
   30#include <casacore/casa/aips.h> 
   31#include <casacore/casa/Arrays/ArrayFwd.h> 
   32#include <casacore/casa/BasicSL/Complex.h> 
  186  template <
typename T>
 
  215  template <
typename T>
 
  223  template <
typename T>
 
  231  template <
typename T>
 
  239  template <
typename T>
 
  246  template <
typename T>
 
  248  template <
typename T>
 
  249  T 
L(
const T x, 
const Int a) 
const;
 
 
  281#ifndef CASACORE_NO_AUTO_TEMPLATES 
  282#include <casacore/scimath/Mathematics/Interpolate2D2.tcc> 
Bool anyBadMaskPixels(const Matrix< Bool > *&mask, Int i1, Int i2, Int j1, Int j2) const
Are any of the mask pixels bad ? Returns False if no mask.
 
Interpolate2D(Interpolate2D::Method method=Interpolate2D::LINEAR)
Constructor.
 
Bool interpLinearBool(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
 
FuncPtrDouble itsFuncPtrDouble
 
void bcucof(Double c[4][4], const Double y[4], const Double y1[4], const Double y2[4], const Double y12[4]) const
helping routine from numerical recipes
 
Bool interpLinear2(T &resultI, T &resultJ, const Vector< Double > &where, const Matrix< T > &dataI, const Matrix< T > &dataJ, const Matrix< Bool > &mask) const
 
Bool interp(Double &result, const Vector< Double > &where, const Matrix< Double > &data) const
Do one Double interpolation, supply Matrix/Array and mask (True is good), and pixel coordinate.
 
Bool interp(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
Do one interpolation, supply boolean Matrix (True is good), and pixel coordinate.
 
Interpolate2D & operator=(const Interpolate2D &other)
Assignment operator (copy semantics)
 
Bool(Interpolate2D::* FuncPtrDouble)(Double &result, const Vector< Double > &where, const Matrix< Double > &data, const Matrix< Bool > *&maskPtr) const
 
Bool interp(Double &resultI, Double &resultJ, const Vector< Double > &where, const Matrix< Double > &dataI, const Matrix< Double > &dataJ, const Matrix< Bool > &mask) const
Do two linear interpolations simultaneously.
 
~Interpolate2D()
destructor
 
Bool interp(Double &result, const Vector< Double > &where, const Matrix< Double > &data, const Matrix< Bool > &mask) const
 
Bool interp(DComplex &result, const Vector< Double > &where, const Matrix< DComplex > &data, const Matrix< Bool > &mask) const
 
Bool interpCubicBool(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
 
Bool interp(Complex &result, const Vector< Double > &where, const Matrix< Complex > &data) const
Do one Complex interpolation, supply Matrix/Array and mask (True is good), and pixel coordinate.
 
Bool interpLinear(T &result, const Vector< Double > &where, const Matrix< T > &data, const Matrix< Bool > *&maskPtr) const
bi-linear interpolation
 
Bool interpLanczosBool(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
 
Bool(Interpolate2D::* FuncPtrBool)(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
 
Bool(Interpolate2D::* FuncPtrFloat)(Float &result, const Vector< Double > &where, const Matrix< Float > &data, const Matrix< Bool > *&maskPtr) const
Typedefs for function pointers.
 
Interpolate2D(const Interpolate2D &other)
Copy constructor (copy semantics)
 
T sinc(const T x) const
Lanczos interpolation: helper functions.
 
Bool interpLanczos(T &result, const Vector< Double > &where, const Matrix< T > &data, const Matrix< Bool > *&maskPtr) const
Lanczos interpolation.
 
T L(const T x, const Int a) const
 
Bool interp(Float &result, const Vector< Double > &where, const Matrix< Float > &data) const
Do one Float interpolation, supply Matrix and mask (True is good), and pixel coordinate.
 
Bool interp(DComplex &result, const Vector< Double > &where, const Matrix< DComplex > &data) const
Do one DComplex interpolation, supply Matrix/Array and mask (True is good), and pixel coordinate.
 
Bool interp(Complex &result, const Vector< Double > &where, const Matrix< Complex > &data, const Matrix< Bool > &mask) const
 
FuncPtrFloat itsFuncPtrFloat
 
FuncPtrBool itsFuncPtrBool
 
Bool interpNearest(T &result, const Vector< Double > &where, const Matrix< T > &data, const Matrix< Bool > *&maskPtr) const
nearest neighbour interpolation
 
@ NEAREST
Nearest neighbour.
 
Bool interp(Float &result, const Vector< Double > &where, const Matrix< Float > &data, const Matrix< Bool > &mask) const
 
Bool interpNearestBool(Bool &result, const Vector< Double > &where, const Matrix< Bool > &data) const
 
Bool interpCubic(T &result, const Vector< Double > &where, const Matrix< T > &data, const Matrix< Bool > *&maskPtr) const
bi-cubic interpolation
 
static Interpolate2D::Method stringToMethod(const String &method)
Convert string ("nearest", "linear", "cubic", "lanczos") to interpolation method.
 
String: the storage and methods of handling collections of characters.
 
this file contains all the compiler specific defines
 
LatticeExprNode mask(const LatticeExprNode &expr)
This function returns the mask of the given expression.
 
bool Bool
Define the standard types used by Casacore.