MagickCore  6.8.5
gem.c File Reference
#include "magick/studio.h"
#include "magick/color-private.h"
#include "magick/draw.h"
#include "magick/gem.h"
#include "magick/gem-private.h"
#include "magick/image.h"
#include "magick/image-private.h"
#include "magick/log.h"
#include "magick/memory_.h"
#include "magick/pixel-private.h"
#include "magick/quantum.h"
#include "magick/random_.h"
#include "magick/resize.h"
#include "magick/transform.h"
#include "magick/signature-private.h"
Include dependency graph for gem.c:

Macros

#define SigmaUniform   (attenuate*0.015625)
#define SigmaGaussian   (attenuate*0.015625)
#define SigmaImpulse   (attenuate*0.1)
#define SigmaLaplacian   (attenuate*0.0390625)
#define SigmaMultiplicativeGaussian   (attenuate*0.5)
#define SigmaPoisson   (attenuate*12.5)
#define SigmaRandom   (attenuate)
#define TauGaussian   (attenuate*0.078125)

Functions

MagickExport void ConvertHCLToRGB (const double hue, const double chroma, const double luma, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHCLpToRGB (const double hue, const double chroma, const double luma, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHSBToRGB (const double hue, const double saturation, const double brightness, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHSIToRGB (const double hue, const double saturation, const double intensity, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHSLToRGB (const double hue, const double saturation, const double lightness, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHSVToRGB (const double hue, const double saturation, const double value, Quantum *red, Quantum *green, Quantum *blue)
MagickExport void ConvertHWBToRGB (const double hue, const double whiteness, const double blackness, Quantum *red, Quantum *green, Quantum *blue)
static void ConvertLCHabToXYZ (const double luma, const double chroma, const double hue, double *X, double *Y, double *Z)
MagickExport void ConvertLCHabToRGB (const double luma, const double chroma, const double hue, Quantum *red, Quantum *green, Quantum *blue)
static void ConvertLCHuvToXYZ (const double luma, const double chroma, const double hue, double *X, double *Y, double *Z)
MagickExport void ConvertLCHuvToRGB (const double luma, const double chroma, const double hue, Quantum *red, Quantum *green, Quantum *blue)
static double MagickMax (const double x, const double y)
static double MagickMin (const double x, const double y)
MagickExport void ConvertRGBToHCL (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *chroma, double *luma)
MagickExport void ConvertRGBToHCLp (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *chroma, double *luma)
MagickExport void ConvertRGBToHSB (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *saturation, double *brightness)
MagickExport void ConvertRGBToHSI (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *saturation, double *intensity)
MagickExport void ConvertRGBToHSL (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *saturation, double *lightness)
MagickExport void ConvertRGBToHSV (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *saturation, double *value)
MagickExport void ConvertRGBToHWB (const Quantum red, const Quantum green, const Quantum blue, double *hue, double *whiteness, double *blackness)
static void ConvertXYZToLCHab (const double X, const double Y, const double Z, double *luma, double *chroma, double *hue)
MagickExport void ConvertRGBToLCHab (const Quantum red, const Quantum green, const Quantum blue, double *luma, double *chroma, double *hue)
static void ConvertXYZToLCHuv (const double X, const double Y, const double Z, double *luma, double *chroma, double *hue)
MagickExport void ConvertRGBToLCHuv (const Quantum red, const Quantum green, const Quantum blue, double *luma, double *chroma, double *hue)
MagickExport double ExpandAffine (const AffineMatrix *affine)
MagickExport double GenerateDifferentialNoise (RandomInfo *random_info, const Quantum pixel, const NoiseType noise_type, const MagickRealType attenuate)
MagickExport size_t GetOptimalKernelWidth1D (const double radius, const double sigma)
MagickExport size_t GetOptimalKernelWidth2D (const double radius, const double sigma)
MagickExport size_t GetOptimalKernelWidth (const double radius, const double sigma)

Macro Definition Documentation

#define SigmaGaussian   (attenuate*0.015625)
#define SigmaImpulse   (attenuate*0.1)
#define SigmaLaplacian   (attenuate*0.0390625)
#define SigmaMultiplicativeGaussian   (attenuate*0.5)
#define SigmaPoisson   (attenuate*12.5)
#define SigmaRandom   (attenuate)
#define SigmaUniform   (attenuate*0.015625)
#define TauGaussian   (attenuate*0.078125)

Function Documentation

MagickExport void ConvertHCLpToRGB ( const double  hue,
const double  chroma,
const double  luma,
Quantum red,
Quantum green,
Quantum blue 
)

References ClampToQuantum(), and QuantumRange.

Referenced by ModulateHCLp(), and TransformRGBImage().

MagickExport void ConvertHCLToRGB ( const double  hue,
const double  chroma,
const double  luma,
Quantum red,
Quantum green,
Quantum blue 
)
MagickExport void ConvertHSBToRGB ( const double  hue,
const double  saturation,
const double  brightness,
Quantum red,
Quantum green,
Quantum blue 
)
MagickExport void ConvertHSIToRGB ( const double  hue,
const double  saturation,
const double  intensity,
Quantum red,
Quantum green,
Quantum blue 
)
MagickExport void ConvertHSLToRGB ( const double  hue,
const double  saturation,
const double  lightness,
Quantum red,
Quantum green,
Quantum blue 
)
MagickExport void ConvertHSVToRGB ( const double  hue,
const double  saturation,
const double  value,
Quantum red,
Quantum green,
Quantum blue 
)

References ClampToQuantum(), and QuantumRange.

Referenced by ModulateHSV(), and TransformRGBImage().

MagickExport void ConvertHWBToRGB ( const double  hue,
const double  whiteness,
const double  blackness,
Quantum red,
Quantum green,
Quantum blue 
)
MagickExport void ConvertLCHabToRGB ( const double  luma,
const double  chroma,
const double  hue,
Quantum red,
Quantum green,
Quantum blue 
)
static void ConvertLCHabToXYZ ( const double  luma,
const double  chroma,
const double  hue,
double *  X,
double *  Y,
double *  Z 
)
inlinestatic

References ConvertLabToXYZ(), and MagickPI.

Referenced by ConvertLCHabToRGB().

MagickExport void ConvertLCHuvToRGB ( const double  luma,
const double  chroma,
const double  hue,
Quantum red,
Quantum green,
Quantum blue 
)
static void ConvertLCHuvToXYZ ( const double  luma,
const double  chroma,
const double  hue,
double *  X,
double *  Y,
double *  Z 
)
inlinestatic

References ConvertLuvToXYZ(), and MagickPI.

Referenced by ConvertLCHuvToRGB().

MagickExport void ConvertRGBToHCL ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  chroma,
double *  luma 
)

References MagickMax(), MagickMin(), and QuantumScale.

Referenced by ModulateHCL(), and RGBTransformImage().

MagickExport void ConvertRGBToHCLp ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  chroma,
double *  luma 
)
MagickExport void ConvertRGBToHSB ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  saturation,
double *  brightness 
)

References QuantumScale.

Referenced by Contrast(), ModulateHSB(), and RGBTransformImage().

MagickExport void ConvertRGBToHSI ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  saturation,
double *  intensity 
)

References MagickMin(), MagickPI, and QuantumScale.

Referenced by ModulateHSI(), and RGBTransformImage().

MagickExport void ConvertRGBToHSL ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  saturation,
double *  lightness 
)
MagickExport void ConvertRGBToHSV ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  saturation,
double *  value 
)

References MagickMax(), MagickMin(), and QuantumScale.

Referenced by ModulateHSV(), and RGBTransformImage().

MagickExport void ConvertRGBToHWB ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  hue,
double *  whiteness,
double *  blackness 
)

References MagickMax(), MagickMin(), and QuantumScale.

Referenced by ModulateHWB(), and RGBTransformImage().

MagickExport void ConvertRGBToLCHab ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  luma,
double *  chroma,
double *  hue 
)
MagickExport void ConvertRGBToLCHuv ( const Quantum  red,
const Quantum  green,
const Quantum  blue,
double *  luma,
double *  chroma,
double *  hue 
)
static void ConvertXYZToLCHab ( const double  X,
const double  Y,
const double  Z,
double *  luma,
double *  chroma,
double *  hue 
)
inlinestatic

References ConvertXYZToLab(), and MagickPI.

Referenced by ConvertRGBToLCHab().

static void ConvertXYZToLCHuv ( const double  X,
const double  Y,
const double  Z,
double *  luma,
double *  chroma,
double *  hue 
)
inlinestatic

References ConvertXYZToLuv(), and MagickPI.

Referenced by ConvertRGBToLCHuv().

MagickExport size_t GetOptimalKernelWidth ( const double  radius,
const double  sigma 
)
static double MagickMax ( const double  x,
const double  y 
)
inlinestatic
static double MagickMin ( const double  x,
const double  y 
)
inlinestatic