[fpc-pascal] fpcanvas and Interpolation filters

Michael Van Canneyt michael at freepascal.org
Thu Jun 28 13:54:48 CEST 2007



On Thu, 28 Jun 2007, Graeme Geldenhuys wrote:

> Hi,
> 
> Looking at the 'fpcanvas' unit in FCL it seems we only have the
> Mitchel Interpolation implemented.  Is this a correct assumption?

No. There is a second unit which implements other interpolations:
extinterpolation. It registers the following interpolations:

  TBlackmanInterpolation = class (TFPBaseInterpolation)
  TBlackmanSincInterpolation = class (TFPBaseInterpolation)
  TBlackmanBesselInterpolation = class (TFPBaseInterpolation)
  TGaussianInterpolation = class (TFPBaseInterpolation)
  TBoxInterpolation = class (TFPBaseInterpolation)
  THermiteInterpolation = class (TFPBaseInterpolation)
  TLanczosInterpolation = class (TFPBaseInterpolation)
  TQuadraticInterpolation = class (TFPBaseInterpolation)
  TCubicInterpolation = class (TFPBaseInterpolation)
  TCatromInterpolation = class (TFPBaseInterpolation)
  TBilineairInterpolation = class (TFPBaseInterpolation)
  THanningInterpolation = class (TFPBaseInterpolation)
  THammingInterpolation = class (TFPBaseInterpolation)

> 
> What about a few other types?
> 'Box' aka "Nearest Neighbour"
> 'Triangle' aka "Linear" or "Bilinear"
> 'Hermite'
> 'Bell'
> 'B-Spline'
> 'Lanczos3'
> 
> I have some pascal implementations for the others and if they are not
> part of FCL already, I can always create a patch to add them.  Would
> this be a worthy effort?

Absolutely. 
Make sure they don't overlap with the currently existing ones. Box and
Lanczos seem to be there already.

You can implement them in the same unit btw.

Michael.

Michael.



More information about the fpc-pascal mailing list