00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MAGICKCORE_RESAMPLE_H
00019 #define MAGICKCORE_RESAMPLE_H
00020
00021 #include "MagickCore/cache-view.h"
00022
00023 #if defined(__cplusplus) || defined(c_plusplus)
00024 extern "C" {
00025 #endif
00026
00027
00028
00029
00030
00031
00032 typedef enum
00033 {
00034 UndefinedFilter,
00035 PointFilter,
00036 BoxFilter,
00037 TriangleFilter,
00038 HermiteFilter,
00039 HannFilter,
00040 HammingFilter,
00041 BlackmanFilter,
00042 GaussianFilter,
00043 QuadraticFilter,
00044 CubicFilter,
00045 CatromFilter,
00046 MitchellFilter,
00047 JincFilter,
00048 SincFilter,
00049 SincFastFilter,
00050 KaiserFilter,
00051 WelchFilter,
00052 ParzenFilter,
00053 BohmanFilter,
00054 BartlettFilter,
00055 LagrangeFilter,
00056 LanczosFilter,
00057 LanczosSharpFilter,
00058 Lanczos2Filter,
00059 Lanczos2SharpFilter,
00060 RobidouxFilter,
00061 RobidouxSharpFilter,
00062 CosineFilter,
00063 SplineFilter,
00064 LanczosRadiusFilter,
00065 CubicSplineFilter,
00066 SentinelFilter
00067 } FilterType;
00068
00069
00070
00071
00072
00073
00074
00075
00076 #define BesselFilter JincFilter
00077 #define WelshFilter WelchFilter
00078 #define HanningFilter HannFilter
00079
00080 typedef struct _ResampleFilter
00081 ResampleFilter;
00082
00083 extern MagickExport MagickBooleanType
00084 ResamplePixelColor(ResampleFilter *,const double,const double,
00085 PixelInfo *,ExceptionInfo *),
00086 SetResampleFilterInterpolateMethod(ResampleFilter *,
00087 const PixelInterpolateMethod),
00088 SetResampleFilterVirtualPixelMethod(ResampleFilter *,
00089 const VirtualPixelMethod);
00090
00091 extern MagickExport ResampleFilter
00092 *AcquireResampleFilter(const Image *,ExceptionInfo *),
00093 *DestroyResampleFilter(ResampleFilter *);
00094
00095 extern MagickExport void
00096 ScaleResampleFilter(ResampleFilter *,const double,const double,const double,
00097 const double),
00098 SetResampleFilter(ResampleFilter *,const FilterType);
00099
00100 #if defined(__cplusplus) || defined(c_plusplus)
00101 }
00102 #endif
00103
00104 #endif