#include "magick/studio.h"#include "magick/color.h"#include "magick/color-private.h"#include "magick/colorspace-private.h"#include "magick/composite.h"#include "magick/composite-private.h"#include "magick/draw.h"#include "magick/draw-private.h"#include "magick/exception.h"#include "magick/exception-private.h"#include "magick/gem.h"#include "magick/monitor.h"#include "magick/monitor-private.h"#include "magick/paint.h"#include "magick/pixel-private.h"#include "magick/string_.h"#include "magick/thread-private.h"
Go to the source code of this file.
Defines | |
| #define | MaxStacksize (1UL << 15) |
| #define | PushSegmentStack(up, left, right, delta) |
| #define | NumberPaintBins 256 |
| #define | OilPaintImageTag "OilPaint/Image" |
| #define | OpaquePaintImageTag "Opaque/Image" |
| #define | TransparentPaintImageTag "Transparent/Image" |
| #define | TransparentPaintImageTag "Transparent/Image" |
Functions | |
| static double | MagickMax (const double x, const double y) |
| MagickExport MagickBooleanType | FloodfillPaintImage (Image *image, const ChannelType channel, const DrawInfo *draw_info, const MagickPixelPacket *target, const long x_offset, const long y_offset, const MagickBooleanType invert) |
| MagickExport MagickBooleanType | GradientImage (Image *image, const GradientType type, const SpreadMethod method, const PixelPacket *start_color, const PixelPacket *stop_color) |
| static unsigned long ** | DestroyHistogramThreadSet (unsigned long **histogram) |
| static unsigned long ** | AcquireHistogramThreadSet (const size_t count) |
| MagickExport Image * | OilPaintImage (const Image *image, const double radius, ExceptionInfo *exception) |
| MagickExport MagickBooleanType | OpaquePaintImage (Image *image, const MagickPixelPacket *target, const MagickPixelPacket *fill, const MagickBooleanType invert) |
| MagickExport MagickBooleanType | OpaquePaintImageChannel (Image *image, const ChannelType channel, const MagickPixelPacket *target, const MagickPixelPacket *fill, const MagickBooleanType invert) |
| MagickExport MagickBooleanType | TransparentPaintImage (Image *image, const MagickPixelPacket *target, const Quantum opacity, const MagickBooleanType invert) |
| MagickExport MagickBooleanType | TransparentPaintImageChroma (Image *image, const MagickPixelPacket *low, const MagickPixelPacket *high, const Quantum opacity, const MagickBooleanType invert) |
| #define MaxStacksize (1UL << 15) |
| #define NumberPaintBins 256 |
Referenced by OilPaintImage().
| #define OilPaintImageTag "OilPaint/Image" |
Referenced by OilPaintImage().
| #define OpaquePaintImageTag "Opaque/Image" |
Referenced by OpaquePaintImageChannel().
| #define PushSegmentStack | ( | up, | |||
| left, | |||||
| right, | |||||
| delta | ) |
{ \
if (s >= (segment_stack+MaxStacksize)) \
ThrowBinaryException(DrawError,"SegmentStackOverflow",image->filename) \
else \
{ \
if ((((up)+(delta)) >= 0) && (((up)+(delta)) < (long) image->rows)) \
{ \
s->x1=(double) (left); \
s->y1=(double) (up); \
s->x2=(double) (right); \
s->y2=(double) (delta); \
s++; \
} \
} \
}
| #define TransparentPaintImageTag "Transparent/Image" |
| #define TransparentPaintImageTag "Transparent/Image" |
Referenced by TransparentPaintImage(), and TransparentPaintImageChroma().
| static unsigned long** AcquireHistogramThreadSet | ( | const size_t | count | ) | [static] |
Definition at line 520 of file paint.c.
References AcquireAlignedMemory(), AcquireQuantumMemory(), DestroyHistogramThreadSet(), GetOpenMPMaximumThreads(), and ResetMagickMemory().
Referenced by OilPaintImage().
| static unsigned long** DestroyHistogramThreadSet | ( | unsigned long ** | histogram | ) | [static] |
Definition at line 507 of file paint.c.
References GetOpenMPMaximumThreads(), RelinquishAlignedMemory(), and RelinquishMagickMemory().
Referenced by AcquireHistogramThreadSet(), and OilPaintImage().
| MagickExport MagickBooleanType FloodfillPaintImage | ( | Image * | image, | |
| const ChannelType | channel, | |||
| const DrawInfo * | draw_info, | |||
| const MagickPixelPacket * | target, | |||
| const long | x_offset, | |||
| const long | y_offset, | |||
| const MagickBooleanType | invert | |||
| ) |
Definition at line 109 of file paint.c.
References AcquireQuantumMemory(), _MagickPixelPacket::blue, BlueChannel, CloneImage(), CMYKColorspace, _Image::colorspace, _Image::columns, ConvertRGBToCMYK(), _Image::debug, DestroyImage(), DirectClass, _Image::exception, _Image::filename, GetAuthenticIndexQueue(), GetAuthenticPixels(), GetFillColor(), GetMagickModule, GetMagickPixelPacket(), GetVirtualIndexQueue(), GetVirtualPixels(), _MagickPixelPacket::green, GreenChannel, _MagickPixelPacket::index, IndexChannel, IsMagickColorSimilar(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, MaxStacksize, _MagickPixelPacket::opacity, OpacityChannel, OpaqueAlphaChannel, OpaqueOpacity, PushSegmentStack, _MagickPixelPacket::red, RedChannel, RelinquishMagickMemory(), ResourceLimitError, RoundToQuantum(), _Image::rows, SetImageAlphaChannel(), SetImageStorageClass(), SetMagickPixelPacket(), _DrawInfo::signature, _Image::signature, SyncAuthenticPixels(), ThrowBinaryException, TraceEvent, TransparentOpacity, _SegmentInfo::x1, _SegmentInfo::x2, _SegmentInfo::y1, and _SegmentInfo::y2.
Referenced by DrawPrimitive(), and PaintFloodfillImage().
| MagickExport MagickBooleanType GradientImage | ( | Image * | image, | |
| const GradientType | type, | |||
| const SpreadMethod | method, | |||
| const PixelPacket * | start_color, | |||
| const PixelPacket * | stop_color | |||
| ) |
Definition at line 406 of file paint.c.
References AcquireDrawInfo(), AcquireQuantumMemory(), _GradientInfo::bounding_box, _GradientInfo::center, _StopInfo::color, _Image::columns, _Image::debug, DestroyDrawInfo(), DrawGradientImage(), _Image::filename, GetMagickModule, GetMagickPixelPacket(), _DrawInfo::gradient, _GradientInfo::gradient_vector, GrayscaleType, _RectangleInfo::height, IsGrayPixel(), LinearGradient, LogMagickEvent(), MagickFalse, MagickMax(), MagickSignature, _Image::matte, _GradientInfo::number_stops, _StopInfo::offset, _PixelPacket::opacity, OpaqueOpacity, _GradientInfo::radius, ResetMagickMemory(), ResourceLimitError, _Image::rows, SetMagickPixelPacket(), _Image::signature, _GradientInfo::spread, _GradientInfo::stops, ThrowBinaryException, TraceEvent, _Image::type, _GradientInfo::type, _RectangleInfo::width, _PointInfo::x, _SegmentInfo::x2, _PointInfo::y, and _SegmentInfo::y2.
Referenced by DrawImage().
| static double MagickMax | ( | const double | x, | |
| const double | y | |||
| ) | [inline, static] |
Definition at line 60 of file paint.c.
Referenced by GradientImage().
| MagickExport Image* OilPaintImage | ( | const Image * | image, | |
| const double | radius, | |||
| ExceptionInfo * | exception | |||
| ) |
Definition at line 545 of file paint.c.
References AcquireCacheView(), AcquireHistogramThreadSet(), CloneImage(), CMYKColorspace, _Image::colorspace, _Image::columns, _Image::debug, DestroyCacheView(), DestroyHistogramThreadSet(), DestroyImage(), DirectClass, _Image::exception, _Image::filename, GetCacheViewAuthenticIndexQueue(), GetCacheViewVirtualIndexQueue(), GetCacheViewVirtualPixels(), GetMagickModule, GetOpenMPThreadId(), GetOptimalKernelWidth2D(), InheritException(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, NumberPaintBins, OilPaintImageTag, OptionError, PixelIntensityToQuantum(), _Image::progress_monitor, QueueCacheViewAuthenticPixels(), ResetMagickMemory(), ResourceLimitError, _Image::rows, ScaleQuantumToChar(), SetImageProgress(), SetImageStorageClass(), _ExceptionInfo::signature, _Image::signature, SyncCacheViewAuthenticPixels(), ThrowImageException, and TraceEvent.
Referenced by PreviewImage().
| MagickExport MagickBooleanType OpaquePaintImage | ( | Image * | image, | |
| const MagickPixelPacket * | target, | |||
| const MagickPixelPacket * | fill, | |||
| const MagickBooleanType | invert | |||
| ) |
Definition at line 747 of file paint.c.
References AllChannels, and OpaquePaintImageChannel().
| MagickExport MagickBooleanType OpaquePaintImageChannel | ( | Image * | image, | |
| const ChannelType | channel, | |||
| const MagickPixelPacket * | target, | |||
| const MagickPixelPacket * | fill, | |||
| const MagickBooleanType | invert | |||
| ) |
Definition at line 754 of file paint.c.
References AcquireCacheView(), _MagickPixelPacket::blue, BlueChannel, CMYKColorspace, _Image::colorspace, _Image::columns, _Image::debug, DestroyCacheView(), DirectClass, _Image::exception, _Image::filename, GetCacheViewAuthenticIndexQueue(), GetCacheViewAuthenticPixels(), GetMagickModule, GetMagickPixelPacket(), _MagickPixelPacket::green, GreenChannel, _MagickPixelPacket::index, IndexChannel, IsMagickColorSimilar(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _MagickPixelPacket::opacity, OpacityChannel, OpaquePaintImageTag, _Image::progress_monitor, _MagickPixelPacket::red, RedChannel, RoundToQuantum(), _Image::rows, SetImageProgress(), SetImageStorageClass(), SetMagickPixelPacket(), _Image::signature, SyncCacheViewAuthenticPixels(), and TraceEvent.
Referenced by OpaquePaintImage(), PaintOpaqueImage(), and PaintOpaqueImageChannel().
| MagickExport MagickBooleanType TransparentPaintImage | ( | Image * | image, | |
| const MagickPixelPacket * | target, | |||
| const Quantum | opacity, | |||
| const MagickBooleanType | invert | |||
| ) |
Definition at line 895 of file paint.c.
References AcquireCacheView(), _Image::columns, _Image::debug, DestroyCacheView(), DirectClass, _Image::exception, _Image::filename, GetCacheViewAuthenticIndexQueue(), GetCacheViewAuthenticPixels(), GetMagickModule, GetMagickPixelPacket(), IsMagickColorSimilar(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, OpaqueAlphaChannel, _Image::progress_monitor, _Image::rows, SetImageAlphaChannel(), SetImageProgress(), SetImageStorageClass(), SetMagickPixelPacket(), _Image::signature, SyncCacheViewAuthenticPixels(), TraceEvent, and TransparentPaintImageTag.
Referenced by PaintTransparentImage().
| MagickExport MagickBooleanType TransparentPaintImageChroma | ( | Image * | image, | |
| const MagickPixelPacket * | low, | |||
| const MagickPixelPacket * | high, | |||
| const Quantum | opacity, | |||
| const MagickBooleanType | invert | |||
| ) |
Definition at line 1028 of file paint.c.
References AcquireCacheView(), _MagickPixelPacket::blue, _Image::columns, _Image::debug, DestroyCacheView(), DirectClass, _Image::exception, _Image::filename, GetCacheViewAuthenticIndexQueue(), GetCacheViewAuthenticPixels(), GetMagickModule, GetMagickPixelPacket(), _MagickPixelPacket::green, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, _Image::progress_monitor, _MagickPixelPacket::red, ResetAlphaChannel, _Image::rows, SetImageAlphaChannel(), SetImageProgress(), SetImageStorageClass(), SetMagickPixelPacket(), _Image::signature, SyncCacheViewAuthenticPixels(), TraceEvent, and TransparentPaintImageTag.
1.6.1