distort.h

Go to the documentation of this file.
00001 /*
00002   Copyright 1999-2009 ImageMagick Studio LLC, a non-profit organization
00003   dedicated to making software imaging solutions freely available.
00004   
00005   You may not use this file except in compliance with the License.
00006   obtain a copy of the License at
00007   
00008     http://www.imagemagick.org/script/license.php
00009   
00010   Unless required by applicable law or agreed to in writing, software
00011   distributed under the License is distributed on an "AS IS" BASIS,
00012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013   See the License for the specific language governing permissions and
00014   limitations under the License.
00015 
00016   MagickCore image distortion methods.
00017 */
00018 #ifndef _MAGICKCORE_DISTORT_H
00019 #define _MAGICKCORE_DISTORT_H
00020 
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024 
00025 #include <magick/draw.h>
00026 
00027 /*
00028   These two enum are linked, with common enumerated values.  Both
00029   DistortImages() and SparseColor() often share code to determine
00030   functional coefficients for common methods.
00031 
00032   Caution should be taken to ensure that only the common methods contain the
00033   same enumerated value, while all others remain unique across both
00034   enumerations.
00035 */
00036 typedef enum
00037 {
00038   UndefinedDistortion,
00039   AffineDistortion,
00040   AffineProjectionDistortion,
00041   ScaleRotateTranslateDistortion,
00042   PerspectiveDistortion,
00043   PerspectiveProjectionDistortion,
00044   BilinearForwardDistortion,
00045   BilinearDistortion = BilinearForwardDistortion,
00046   BilinearReverseDistortion,
00047   PolynomialDistortion,
00048   ArcDistortion,
00049   PolarDistortion,
00050   DePolarDistortion,
00051   BarrelDistortion,
00052   BarrelInverseDistortion,
00053   ShepardsDistortion,
00054   SentinelDistortion
00055 } DistortImageMethod;
00056 
00057 
00058 typedef enum
00059 {
00060   UndefinedColorInterpolate = UndefinedDistortion,
00061   BarycentricColorInterpolate = AffineDistortion,
00062   BilinearColorInterpolate = BilinearReverseDistortion,
00063   PolynomialColorInterpolate = PolynomialDistortion,
00064   ShepardsColorInterpolate = ShepardsDistortion,
00065   /* Methods unique to SparseColor(): */
00066   VoronoiColorInterpolate = SentinelDistortion
00067 } SparseColorMethod;
00068 
00069 extern MagickExport Image
00070   *DistortImage(const Image *,const DistortImageMethod,const unsigned long,
00071     const double *,MagickBooleanType,ExceptionInfo *exception),
00072   *SparseColorImage(const Image *,const ChannelType,const SparseColorMethod,
00073     const unsigned long,const double *,ExceptionInfo *);
00074 
00075 #if defined(__cplusplus) || defined(c_plusplus)
00076 }
00077 #endif
00078 
00079 #endif

Generated on 21 Nov 2009 for MagickCore by  doxygen 1.6.1