|
MagickCore
6.7.5
|
#include "MagickCore/studio.h"#include "MagickCore/annotate.h"#include "MagickCore/artifact.h"#include "MagickCore/blob.h"#include "MagickCore/cache.h"#include "MagickCore/cache-view.h"#include "MagickCore/color.h"#include "MagickCore/composite.h"#include "MagickCore/composite-private.h"#include "MagickCore/constitute.h"#include "MagickCore/draw.h"#include "MagickCore/draw-private.h"#include "MagickCore/enhance.h"#include "MagickCore/exception.h"#include "MagickCore/exception-private.h"#include "MagickCore/gem.h"#include "MagickCore/geometry.h"#include "MagickCore/image-private.h"#include "MagickCore/list.h"#include "MagickCore/log.h"#include "MagickCore/monitor.h"#include "MagickCore/monitor-private.h"#include "MagickCore/option.h"#include "MagickCore/paint.h"#include "MagickCore/pixel-accessor.h"#include "MagickCore/property.h"#include "MagickCore/resample.h"#include "MagickCore/resample-private.h"#include "MagickCore/string_.h"#include "MagickCore/string-private.h"#include "MagickCore/thread-private.h"#include "MagickCore/token.h"#include "MagickCore/transform.h"#include "MagickCore/utility.h"
Go to the source code of this file.
Data Structures | |
| struct | _EdgeInfo |
| struct | _ElementInfo |
| struct | _PolygonInfo |
| struct | _PathInfo |
Defines | |
| #define | BezierQuantum 200 |
| #define | RenderImageTag "Render/Image" |
Typedefs | |
| typedef struct _EdgeInfo | EdgeInfo |
| typedef struct _ElementInfo | ElementInfo |
| typedef struct _PolygonInfo | PolygonInfo |
| typedef struct _PathInfo | PathInfo |
Enumerations | |
| enum | PathInfoCode { MoveToCode, OpenCode, GhostlineCode, LineToCode, EndCode } |
Functions | |
| static MagickBooleanType | DrawStrokePolygon (Image *, const DrawInfo *, const PrimitiveInfo *, ExceptionInfo *) |
| static PrimitiveInfo * | TraceStrokePolygon (const DrawInfo *, const PrimitiveInfo *) |
| static size_t | TracePath (PrimitiveInfo *, const char *) |
| static void | TraceArc (PrimitiveInfo *, const PointInfo, const PointInfo, const PointInfo) |
| static void | TraceArcPath (PrimitiveInfo *, const PointInfo, const PointInfo, const PointInfo, const MagickRealType, const MagickBooleanType, const MagickBooleanType) |
| static void | TraceBezier (PrimitiveInfo *, const size_t) |
| static void | TraceCircle (PrimitiveInfo *, const PointInfo, const PointInfo) |
| static void | TraceEllipse (PrimitiveInfo *, const PointInfo, const PointInfo, const PointInfo) |
| static void | TraceLine (PrimitiveInfo *, const PointInfo, const PointInfo) |
| static void | TraceRectangle (PrimitiveInfo *, const PointInfo, const PointInfo) |
| static void | TraceRoundRectangle (PrimitiveInfo *, const PointInfo, const PointInfo, PointInfo) |
| static void | TraceSquareLinecap (PrimitiveInfo *, const size_t, const MagickRealType) |
| MagickExport DrawInfo * | AcquireDrawInfo (void) |
| MagickExport DrawInfo * | CloneDrawInfo (const ImageInfo *image_info, const DrawInfo *draw_info) |
| static int | CompareEdges (const void *x, const void *y) |
| static void | LogPolygonInfo (const PolygonInfo *polygon_info) |
| static void | ReversePoints (PointInfo *points, const size_t number_points) |
| static PolygonInfo * | ConvertPathToPolygon (const DrawInfo *magick_unused(draw_info), const PathInfo *path_info) |
| static void | LogPathInfo (const PathInfo *path_info) |
| static PathInfo * | ConvertPrimitiveToPath (const DrawInfo *magick_unused(draw_info), const PrimitiveInfo *primitive_info) |
| MagickExport DrawInfo * | DestroyDrawInfo (DrawInfo *draw_info) |
| static size_t | DestroyEdge (PolygonInfo *polygon_info, const size_t edge) |
| static PolygonInfo * | DestroyPolygonInfo (PolygonInfo *polygon_info) |
| static SegmentInfo | AffineEdge (const Image *image, const AffineMatrix *affine, const double y, const SegmentInfo *edge) |
| static AffineMatrix | InverseAffineMatrix (const AffineMatrix *affine) |
| static ssize_t | MagickAbsoluteValue (const ssize_t x) |
| static double | MagickMax (const double x, const double y) |
| static double | MagickMin (const double x, const double y) |
| MagickExport MagickBooleanType | DrawAffineImage (Image *image, const Image *source, const AffineMatrix *affine, ExceptionInfo *exception) |
| static void | DrawBoundingRectangles (Image *image, const DrawInfo *draw_info, const PolygonInfo *polygon_info, ExceptionInfo *exception) |
| MagickExport MagickBooleanType | DrawClipPath (Image *image, const DrawInfo *draw_info, const char *name, ExceptionInfo *exception) |
| static MagickBooleanType | DrawDashPolygon (const DrawInfo *draw_info, const PrimitiveInfo *primitive_info, Image *image, ExceptionInfo *exception) |
| static MagickBooleanType | IsPoint (const char *point) |
| static void | TracePoint (PrimitiveInfo *primitive_info, const PointInfo point) |
| MagickExport MagickBooleanType | DrawImage (Image *image, const DrawInfo *draw_info, ExceptionInfo *exception) |
| static MagickRealType | GetStopColorOffset (const GradientInfo *gradient, const ssize_t x, const ssize_t y) |
| MagickExport MagickBooleanType | DrawGradientImage (Image *image, const DrawInfo *draw_info, ExceptionInfo *exception) |
| MagickExport MagickBooleanType | DrawPatternPath (Image *image, const DrawInfo *draw_info, const char *name, Image **pattern, ExceptionInfo *exception) |
| static PolygonInfo ** | DestroyPolygonThreadSet (PolygonInfo **polygon_info) |
| static PolygonInfo ** | AcquirePolygonThreadSet (const DrawInfo *draw_info, const PrimitiveInfo *primitive_info) |
| static MagickRealType | GetFillAlpha (PolygonInfo *polygon_info, const MagickRealType mid, const MagickBooleanType fill, const FillRule fill_rule, const double x, const double y, MagickRealType *stroke_alpha) |
| static MagickBooleanType | DrawPolygonPrimitive (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info, ExceptionInfo *exception) |
| static void | LogPrimitiveInfo (const PrimitiveInfo *primitive_info) |
| MagickExport MagickBooleanType | DrawPrimitive (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info, ExceptionInfo *exception) |
| static void | DrawRoundLinecap (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info, ExceptionInfo *exception) |
| MagickExport void | GetAffineMatrix (AffineMatrix *affine_matrix) |
| MagickExport void | GetDrawInfo (const ImageInfo *image_info, DrawInfo *draw_info) |
| static MagickRealType | Permutate (const ssize_t n, const ssize_t k) |
| #define BezierQuantum 200 |
Definition at line 86 of file draw.c.
Referenced by DrawImage(), TraceBezier(), and TraceStrokePolygon().
| #define RenderImageTag "Render/Image" |
Referenced by DrawImage().
| typedef struct _ElementInfo ElementInfo |
| typedef struct _PolygonInfo PolygonInfo |
| enum PathInfoCode |
| MagickExport DrawInfo* AcquireDrawInfo | ( | void | ) |
Definition at line 196 of file draw.c.
References AcquireMagickMemory(), ThrowFatalException, ResourceLimitFatalError, and GetDrawInfo().
Referenced by GradientImage().
| static PolygonInfo** AcquirePolygonThreadSet | ( | const DrawInfo * | draw_info, |
| const PrimitiveInfo * | primitive_info | ||
| ) | [static] |
Definition at line 3559 of file draw.c.
References GetOpenMPMaximumThreads(), AcquireQuantumMemory(), ResetMagickMemory(), ConvertPrimitiveToPath(), DestroyPolygonThreadSet(), ConvertPathToPolygon(), and RelinquishMagickMemory().
Referenced by DrawPolygonPrimitive().
| static SegmentInfo AffineEdge | ( | const Image * | image, |
| const AffineMatrix * | affine, | ||
| const double | y, | ||
| const SegmentInfo * | edge | ||
| ) | [static] |
Definition at line 949 of file draw.c.
References _SegmentInfo::x1, _SegmentInfo::y1, _SegmentInfo::x2, _SegmentInfo::y2, _AffineMatrix::ry, _AffineMatrix::tx, _AffineMatrix::sx, MagickEpsilon, _Image::columns, _AffineMatrix::sy, _AffineMatrix::ty, _AffineMatrix::rx, and _Image::rows.
Referenced by DrawAffineImage().
Definition at line 235 of file draw.c.
References AcquireMagickMemory(), ThrowFatalException, ResourceLimitFatalError, GetDrawInfo(), AcquireExceptionInfo(), CloneString(), _DrawInfo::primitive, _DrawInfo::geometry, _DrawInfo::viewbox, _DrawInfo::affine, _DrawInfo::gravity, _DrawInfo::fill, _DrawInfo::stroke, _DrawInfo::stroke_width, _DrawInfo::fill_pattern, CloneImage(), MagickTrue, _DrawInfo::stroke_pattern, _DrawInfo::stroke_antialias, _DrawInfo::text_antialias, _DrawInfo::fill_rule, _DrawInfo::linecap, _DrawInfo::linejoin, _DrawInfo::miterlimit, _DrawInfo::dash_offset, _DrawInfo::decorate, _DrawInfo::compose, _DrawInfo::text, _DrawInfo::font, _DrawInfo::metrics, _DrawInfo::family, _DrawInfo::style, _DrawInfo::stretch, _DrawInfo::weight, _DrawInfo::encoding, _DrawInfo::pointsize, _DrawInfo::kerning, _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, _DrawInfo::direction, _DrawInfo::density, _DrawInfo::align, _DrawInfo::undercolor, _DrawInfo::border_color, _DrawInfo::server_name, _DrawInfo::dash_pattern, AcquireQuantumMemory(), CopyMagickMemory(), _DrawInfo::gradient, _GradientInfo::stops, _GradientInfo::number_stops, _DrawInfo::clip_mask, _DrawInfo::bounds, _DrawInfo::clip_units, _DrawInfo::render, _DrawInfo::alpha, _DrawInfo::element_reference, _DrawInfo::debug, IsEventLogging(), and DestroyExceptionInfo().
Referenced by AnnotateImage(), GetMultilineTypeMetrics(), GetTypeMetrics(), RenderType(), DrawBoundingRectangles(), DrawClipPath(), DrawDashPolygon(), DrawImage(), DrawPatternPath(), DrawPrimitive(), DrawStrokePolygon(), PolaroidImage(), VignetteImage(), and MontageImageList().
| static int CompareEdges | ( | const void * | x, |
| const void * | y | ||
| ) | [static] |
Definition at line 368 of file draw.c.
References _EdgeInfo::points, _PointInfo::y, MagickEpsilon, and _PointInfo::x.
Referenced by ConvertPathToPolygon().
| static PolygonInfo* ConvertPathToPolygon | ( | const DrawInfo * | magick_unuseddraw_info, |
| const PathInfo * | path_info | ||
| ) | [static] |
Definition at line 443 of file draw.c.
References AcquireMagickMemory(), _PolygonInfo::edges, AcquireQuantumMemory(), MagickFalse, ResetMagickMemory(), _PathInfo::code, EndCode, MoveToCode, OpenCode, GhostlineCode, ResizeQuantumMemory(), _EdgeInfo::number_points, _EdgeInfo::scanline, _EdgeInfo::highwater, _EdgeInfo::ghostline, _EdgeInfo::direction, ReversePoints(), _EdgeInfo::points, _EdgeInfo::bounds, _SegmentInfo::y1, _PointInfo::y, _SegmentInfo::y2, MagickTrue, _PathInfo::point, _SegmentInfo::x1, _PointInfo::x, _SegmentInfo::x2, RelinquishMagickMemory(), _PolygonInfo::number_edges, CompareEdges(), IsEventLogging(), and LogPolygonInfo().
Referenced by AcquirePolygonThreadSet().
| static PathInfo* ConvertPrimitiveToPath | ( | const DrawInfo * | magick_unuseddraw_info, |
| const PrimitiveInfo * | primitive_info | ||
| ) | [static] |
Definition at line 689 of file draw.c.
References _PrimitiveInfo::primitive, PointPrimitive, ColorPrimitive, MattePrimitive, TextPrimitive, ImagePrimitive, UndefinedPrimitive, AcquireQuantumMemory(), _PointInfo::x, _PointInfo::y, LineToCode, _PrimitiveInfo::point, MoveToCode, MagickEpsilon, _PathInfo::code, _PathInfo::point, OpenCode, GhostlineCode, EndCode, IsEventLogging(), MagickFalse, and LogPathInfo().
Referenced by AcquirePolygonThreadSet().
Definition at line 805 of file draw.c.
References _DrawInfo::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _DrawInfo::signature, MagickSignature, _DrawInfo::primitive, DestroyString(), _DrawInfo::text, _DrawInfo::geometry, _DrawInfo::fill_pattern, DestroyImage(), _DrawInfo::stroke_pattern, _DrawInfo::font, _DrawInfo::metrics, _DrawInfo::family, _DrawInfo::encoding, _DrawInfo::density, _DrawInfo::server_name, RelinquishMagickMemory(), _DrawInfo::dash_pattern, _DrawInfo::gradient, _GradientInfo::stops, and _DrawInfo::clip_mask.
Referenced by AnnotateImage(), GetMultilineTypeMetrics(), GetTypeMetrics(), RenderType(), DrawBoundingRectangles(), DrawClipPath(), DrawDashPolygon(), DrawImage(), DrawPatternPath(), DrawPrimitive(), DrawStrokePolygon(), PolaroidImage(), VignetteImage(), MontageImageList(), and GradientImage().
| static size_t DestroyEdge | ( | PolygonInfo * | polygon_info, |
| const size_t | edge | ||
| ) | [static] |
Definition at line 871 of file draw.c.
References _PolygonInfo::edges, _EdgeInfo::points, RelinquishMagickMemory(), _PolygonInfo::number_edges, and CopyMagickMemory().
Referenced by GetFillAlpha().
| static PolygonInfo* DestroyPolygonInfo | ( | PolygonInfo * | polygon_info | ) | [static] |
Definition at line 906 of file draw.c.
References _PolygonInfo::number_edges, _PolygonInfo::edges, _EdgeInfo::points, and RelinquishMagickMemory().
Referenced by DestroyPolygonThreadSet().
| static PolygonInfo** DestroyPolygonThreadSet | ( | PolygonInfo ** | polygon_info | ) | [static] |
Definition at line 3546 of file draw.c.
References GetOpenMPMaximumThreads(), DestroyPolygonInfo(), and RelinquishMagickMemory().
Referenced by AcquirePolygonThreadSet(), and DrawPolygonPrimitive().
| MagickExport MagickBooleanType DrawAffineImage | ( | Image * | image, |
| const Image * | source, | ||
| const AffineMatrix * | affine, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 1076 of file draw.c.
References _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, _PointInfo::x, _PointInfo::y, _Image::columns, _Image::rows, _AffineMatrix::sx, _AffineMatrix::ry, _AffineMatrix::tx, _AffineMatrix::rx, _AffineMatrix::sy, _AffineMatrix::ty, SetImageStorageClass(), DirectClass, MagickTrue, _SegmentInfo::x1, MagickMax(), _SegmentInfo::y1, _SegmentInfo::x2, MagickMin(), _SegmentInfo::y2, InverseAffineMatrix(), GetPixelInfo(), AcquireCacheView(), AffineEdge(), GetCacheViewAuthenticPixels(), InterpolatePixelInfo(), UndefinedInterpolatePixel, GetPixelInfoPixel(), CompositePixelInfoOver(), _PixelInfo::alpha, SetPixelInfoPixel(), GetPixelChannels(), SyncCacheViewAuthenticPixels(), and DestroyCacheView().
Referenced by DrawPrimitive().
| static void DrawBoundingRectangles | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const PolygonInfo * | polygon_info, | ||
| ExceptionInfo * | exception | ||
| ) | [static] |
Definition at line 1250 of file draw.c.
References CloneDrawInfo(), QueryColorCompliance(), AllCompliance, _DrawInfo::fill, _PointInfo::x, DefaultResolution, _PointInfo::y, _DrawInfo::density, ParseGeometry(), _GeometryInfo::rho, _GeometryInfo::sigma, SigmaValue, MagickFalse, ExpandAffine(), _DrawInfo::affine, _DrawInfo::stroke_width, _SegmentInfo::x1, _SegmentInfo::y1, _SegmentInfo::x2, _SegmentInfo::y2, _PolygonInfo::edges, _EdgeInfo::bounds, _PolygonInfo::number_edges, _Image::columns, _Image::rows, _EdgeInfo::direction, _DrawInfo::stroke, _PrimitiveInfo::primitive, RectanglePrimitive, TraceRectangle(), _PrimitiveInfo::method, ReplaceMethod, UndefinedPrimitive, DrawPrimitive(), and DestroyDrawInfo().
Referenced by DrawPolygonPrimitive().
| MagickExport MagickBooleanType DrawClipPath | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const char * | name, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 1391 of file draw.c.
References MaxTextExtent, _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, FormatLocaleString(), GetImageArtifact(), CloneImage(), _Image::columns, _Image::rows, MagickTrue, QueryColorCompliance(), AllCompliance, _Image::background_color, _PixelInfo::alpha, TransparentAlpha, SetImageBackgroundColor(), DrawEvent, _DrawInfo::clip_mask, CloneDrawInfo(), CloneString(), _DrawInfo::primitive, _DrawInfo::fill, NegateImage(), SetImageMask(), DestroyImage(), DestroyDrawInfo(), and DrawImage().
Referenced by DrawImage().
| static MagickBooleanType DrawDashPolygon | ( | const DrawInfo * | draw_info, |
| const PrimitiveInfo * | primitive_info, | ||
| Image * | image, | ||
| ExceptionInfo * | exception | ||
| ) | [static] |
Definition at line 1474 of file draw.c.
References _Image::debug, MagickFalse, LogMagickEvent(), DrawEvent, GetMagickModule, CloneDrawInfo(), _DrawInfo::miterlimit, _PrimitiveInfo::primitive, UndefinedPrimitive, AcquireQuantumMemory(), ExpandAffine(), _DrawInfo::affine, _DrawInfo::dash_pattern, _DrawInfo::dash_offset, MagickTrue, _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, _PrimitiveInfo::coordinates, DrawStrokePolygon(), MagickEpsilon, RelinquishMagickMemory(), and DestroyDrawInfo().
Referenced by DrawPrimitive().
| MagickExport MagickBooleanType DrawGradientImage | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 3198 of file draw.c.
References _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, _DrawInfo::gradient, _GradientInfo::gradient_vector, _PointInfo::x, _SegmentInfo::x2, _SegmentInfo::x1, _PointInfo::y, _SegmentInfo::y2, _SegmentInfo::y1, _GradientInfo::bounding_box, MagickTrue, GetPixelInfo(), AcquireCacheView(), _RectangleInfo::y, _RectangleInfo::height, GetCacheViewAuthenticPixels(), _Image::columns, GetStopColorOffset(), _GradientInfo::type, RadialGradient, _RectangleInfo::x, _RectangleInfo::width, GetPixelInfoPixel(), _GradientInfo::spread, UndefinedSpread, PadSpread, _GradientInfo::number_stops, _GradientInfo::stops, _StopInfo::color, _StopInfo::offset, CompositePixelInfoBlend(), ReflectSpread, RepeatSpread, LinearGradient, and _GradientInfo::radius.
Referenced by GradientImage().
| MagickExport MagickBooleanType DrawImage | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 1667 of file draw.c.
References MaxTextExtent, _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, _DrawInfo::signature, _DrawInfo::primitive, DrawEvent, AcquireString(), FileToString(), SetImageArtifact(), AcquireMagickMemory(), DestroyString(), ThrowBinaryException, ResourceLimitError, AcquireQuantumMemory(), DestroyDrawInfo(), RelinquishMagickMemory(), CloneDrawInfo(), _DrawInfo::viewbox, _Image::page, _RectangleInfo::width, _RectangleInfo::height, _Image::columns, _Image::rows, QueryColorCompliance(), AllCompliance, SetImageStorageClass(), DirectClass, MagickTrue, GetMagickToken(), UndefinedPrimitive, _DrawInfo::affine, GetAffineMatrix(), LocaleCompare(), _AffineMatrix::sx, StringToDouble(), _AffineMatrix::rx, _AffineMatrix::ry, _AffineMatrix::sy, _AffineMatrix::tx, _AffineMatrix::ty, ArcPrimitive, BezierPrimitive, CloneString(), DrawClipPath(), ParseCommandOption(), MagickFillRuleOptions, _DrawInfo::fill_rule, MagickClipPathOptions, _DrawInfo::clip_units, ObjectBoundingBox, _DrawInfo::bounds, _SegmentInfo::x2, _SegmentInfo::y2, _SegmentInfo::x1, _SegmentInfo::y1, CirclePrimitive, ColorPrimitive, MagickDecorateOptions, _DrawInfo::decorate, EllipsePrimitive, FormatLocaleString(), GetImageArtifact(), DrawPatternPath(), AcquireImageInfo(), CopyMagickString(), _ImageInfo::filename, _DrawInfo::fill_pattern, ReadImage(), CatchException(), DestroyImageInfo(), _DrawInfo::fill, _PixelInfo::alpha, QuantumRange, _DrawInfo::pointsize, MagickStretchOptions, _DrawInfo::stretch, MagickStyleOptions, _DrawInfo::style, _DrawInfo::weight, StringToUnsignedLong(), MagickGravityOptions, _DrawInfo::gravity, ImagePrimitive, MagickComposeOptions, _DrawInfo::compose, _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, _DrawInfo::kerning, LinePrimitive, MattePrimitive, _DrawInfo::alpha, ClampToQuantum(), QuantumScale, _DrawInfo::stroke, PathPrimitive, PointPrimitive, PolylinePrimitive, PolygonPrimitive, ThrowMagickException(), DrawError, SetImageMask(), MagickMax(), _RectangleInfo::x, _RectangleInfo::y, ResizeQuantumMemory(), RectanglePrimitive, DegreesToRadians(), RoundRectanglePrimitive, GradientImage(), LinearGradient, ReflectSpread, _DrawInfo::stroke_pattern, _DrawInfo::stroke_antialias, StringToLong(), _DrawInfo::dash_pattern, IsPoint(), _DrawInfo::dash_offset, MagickLineCapOptions, _DrawInfo::linecap, MagickLineJoinOptions, _DrawInfo::linejoin, _DrawInfo::miterlimit, _DrawInfo::stroke_width, TextPrimitive, MagickAlignOptions, _DrawInfo::align, _DrawInfo::text_antialias, _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, _PrimitiveInfo::primitive, _PrimitiveInfo::coordinates, _PrimitiveInfo::method, FloodfillMethod, _PrimitiveInfo::text, BezierQuantum, MagickPI, TracePoint(), TraceLine(), TraceRectangle(), TraceRoundRectangle(), TraceArc(), TraceEllipse(), TraceCircle(), TraceBezier(), TracePath(), MagickMethodOptions, ThrowFatalException, ResourceLimitFatalError, _DrawInfo::clip_mask, DrawPrimitive(), SetImageProgress(), and RenderImageTag.
Referenced by AnnotateImage(), DrawClipPath(), DrawPatternPath(), and VignetteImage().
| MagickExport MagickBooleanType DrawPatternPath | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const char * | name, | ||
| Image ** | pattern, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 3458 of file draw.c.
References MaxTextExtent, _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, FormatLocaleString(), GetImageArtifact(), DestroyImage(), AcquireImageInfo(), _ImageInfo::size, AcquireString(), AcquireImage(), DestroyImageInfo(), QueryColorCompliance(), AllCompliance, SetImageBackgroundColor(), DrawEvent, CloneDrawInfo(), _DrawInfo::fill_pattern, NewImageList(), _DrawInfo::stroke_pattern, CloneString(), _DrawInfo::primitive, DrawImage(), and DestroyDrawInfo().
Referenced by DrawImage().
| static MagickBooleanType DrawPolygonPrimitive | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const PrimitiveInfo * | primitive_info, | ||
| ExceptionInfo * | exception | ||
| ) | [static] |
Definition at line 3765 of file draw.c.
References _Image::signature, MagickSignature, _Image::debug, MagickFalse, LogMagickEvent(), TraceEvent, GetMagickModule, _Image::filename, _DrawInfo::signature, _PrimitiveInfo::coordinates, MagickTrue, AcquirePolygonThreadSet(), DrawBoundingRectangles(), DrawEvent, _PrimitiveInfo::method, FillToBorderMethod, FloodfillMethod, ExpandAffine(), _DrawInfo::affine, _DrawInfo::stroke_width, _EdgeInfo::bounds, _SegmentInfo::x1, _SegmentInfo::y1, _SegmentInfo::x2, _SegmentInfo::y2, _Image::columns, _Image::rows, AcquireCacheView(), GetCacheViewAuthenticPixels(), GetPixelInfo(), _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, GetStrokeColor(), SetPixelInfoPixel(), GetPixelChannels(), SyncCacheViewAuthenticPixels(), DestroyCacheView(), DestroyPolygonThreadSet(), _Image::matte, SetImageAlphaChannel(), OpaqueAlphaChannel, GetOpenMPThreadId(), GetFillAlpha(), _DrawInfo::fill_rule, _DrawInfo::stroke_antialias, GetFillColor(), _PixelInfo::alpha, CompositePixelOver(), and GetPixelAlpha().
Referenced by DrawPrimitive(), DrawRoundLinecap(), and DrawStrokePolygon().
| MagickExport MagickBooleanType DrawPrimitive | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const PrimitiveInfo * | primitive_info, | ||
| ExceptionInfo * | exception | ||
| ) |
Definition at line 4115 of file draw.c.
References _Image::debug, MagickFalse, LogMagickEvent(), DrawEvent, GetMagickModule, _DrawInfo::affine, _AffineMatrix::sx, _AffineMatrix::rx, _AffineMatrix::ry, _AffineMatrix::sy, _AffineMatrix::tx, _AffineMatrix::ty, MagickTrue, _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, AcquireCacheView(), _PrimitiveInfo::primitive, PointPrimitive, _Image::rows, _Image::columns, GetCacheViewAuthenticPixels(), GetFillColor(), CompositePixelOver(), _PixelInfo::alpha, GetPixelAlpha(), SyncCacheViewAuthenticPixels(), ColorPrimitive, _PrimitiveInfo::method, PointMethod, GetPixelInfo(), SetPixelInfoPixel(), ReplaceMethod, CompositePixelChannel, GetOneCacheViewVirtualPixel(), _PixelInfo::red, RedPixelChannel, _PixelInfo::green, GreenPixelChannel, _PixelInfo::blue, BluePixelChannel, AlphaPixelChannel, GetPixelInfoPixel(), IsFuzzyEquivalencePixelInfo(), GetPixelChannels(), FloodfillMethod, FillToBorderMethod, GetOneVirtualPixelInfo(), TileVirtualPixelMethod, _DrawInfo::border_color, FloodfillPaintImage(), ResetMethod, MattePrimitive, _Image::matte, SetImageAlphaChannel(), OpaqueAlphaChannel, SetPixelAlpha(), ClampToQuantum(), SetPixelChannelMask(), AlphaChannel, TextPrimitive, MaxTextExtent, _PrimitiveInfo::text, CloneDrawInfo(), CloneString(), _DrawInfo::text, FormatLocaleString(), _DrawInfo::geometry, AnnotateImage(), DestroyDrawInfo(), ImagePrimitive, AcquireImageInfo(), LocaleNCompare(), ReadInlineImage(), CopyMagickString(), _ImageInfo::filename, ReadImage(), DestroyImageInfo(), SetImageProgressMonitor(), _Image::filter, TransformImage(), _DrawInfo::alpha, OpaqueAlpha, SetImageAlpha(), SetGeometry(), _Image::gravity, _DrawInfo::gravity, _RectangleInfo::x, _RectangleInfo::y, ParseGravityGeometry(), _Image::interpolate, _DrawInfo::compose, OverCompositeOp, DrawAffineImage(), CompositeImage(), DestroyImage(), IsEventLogging(), LogPrimitiveInfo(), ExpandAffine(), _DrawInfo::dash_pattern, _DrawInfo::stroke_width, MagickEpsilon, _DrawInfo::stroke, TransparentAlpha, DrawPolygonPrimitive(), DrawDashPolygon(), UndefinedPrimitive, _DrawInfo::linecap, RoundCap, _DrawInfo::linejoin, RoundJoin, DrawStrokePolygon(), and DestroyCacheView().
Referenced by DrawBoundingRectangles(), and DrawImage().
| static void DrawRoundLinecap | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const PrimitiveInfo * | primitive_info, | ||
| ExceptionInfo * | exception | ||
| ) | [static] |
Definition at line 4622 of file draw.c.
References _PrimitiveInfo::coordinates, _PrimitiveInfo::point, _PointInfo::x, MagickEpsilon, _PointInfo::y, _PrimitiveInfo::primitive, UndefinedPrimitive, and DrawPolygonPrimitive().
Referenced by DrawStrokePolygon().
| static MagickBooleanType DrawStrokePolygon | ( | Image * | image, |
| const DrawInfo * | draw_info, | ||
| const PrimitiveInfo * | primitive_info, | ||
| ExceptionInfo * | exception | ||
| ) | [static] |
Definition at line 4642 of file draw.c.
References _Image::debug, MagickFalse, LogMagickEvent(), DrawEvent, GetMagickModule, CloneDrawInfo(), _DrawInfo::fill, _DrawInfo::stroke, _DrawInfo::fill_pattern, DestroyImage(), _DrawInfo::stroke_pattern, CloneImage(), MagickTrue, _PixelInfo::alpha, TransparentAlpha, _DrawInfo::stroke_width, _DrawInfo::fill_rule, NonZeroRule, _PrimitiveInfo::primitive, UndefinedPrimitive, _PrimitiveInfo::coordinates, TraceStrokePolygon(), DrawPolygonPrimitive(), RelinquishMagickMemory(), _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, _DrawInfo::linecap, RoundCap, DrawRoundLinecap(), and DestroyDrawInfo().
Referenced by DrawDashPolygon(), and DrawPrimitive().
| MagickExport void GetAffineMatrix | ( | AffineMatrix * | affine_matrix | ) |
Definition at line 4721 of file draw.c.
References LogMagickEvent(), TraceEvent, GetMagickModule, ResetMagickMemory(), _AffineMatrix::sx, and _AffineMatrix::sy.
Referenced by DrawImage(), GetDrawInfo(), and ParseAffineGeometry().
Definition at line 4754 of file draw.c.
References LogMagickEvent(), TraceEvent, GetMagickModule, ResetMagickMemory(), GetAffineMatrix(), _DrawInfo::affine, AcquireExceptionInfo(), QueryColorCompliance(), AllCompliance, _DrawInfo::fill, _DrawInfo::stroke, _DrawInfo::stroke_width, _DrawInfo::alpha, OpaqueAlpha, _DrawInfo::fill_rule, EvenOddRule, _DrawInfo::linecap, ButtCap, _DrawInfo::linejoin, MiterJoin, _DrawInfo::miterlimit, _DrawInfo::decorate, NoDecoration, _DrawInfo::pointsize, _DrawInfo::undercolor, _PixelInfo::alpha, TransparentAlpha, _DrawInfo::compose, OverCompositeOp, _DrawInfo::render, MagickTrue, _DrawInfo::debug, IsEventLogging(), _DrawInfo::stroke_antialias, _ImageInfo::antialias, _ImageInfo::font, _DrawInfo::font, AcquireString(), _ImageInfo::density, _DrawInfo::density, _DrawInfo::text_antialias, _ImageInfo::pointsize, _DrawInfo::border_color, _ImageInfo::border_color, _ImageInfo::server_name, _DrawInfo::server_name, GetImageOption(), CloneString(), _DrawInfo::encoding, _DrawInfo::kerning, StringToDouble(), _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, _DrawInfo::direction, ParseCommandOption(), MagickDirectionOptions, MagickFalse, UndefinedDirection, _DrawInfo::gravity, MagickGravityOptions, DestroyExceptionInfo(), _DrawInfo::signature, and MagickSignature.
Referenced by AcquireDrawInfo(), and CloneDrawInfo().
| static MagickRealType GetFillAlpha | ( | PolygonInfo * | polygon_info, |
| const MagickRealType | mid, | ||
| const MagickBooleanType | fill, | ||
| const FillRule | fill_rule, | ||
| const double | x, | ||
| const double | y, | ||
| MagickRealType * | stroke_alpha | ||
| ) | [static] |
Definition at line 3594 of file draw.c.
References _PolygonInfo::edges, _PolygonInfo::number_edges, _EdgeInfo::bounds, _SegmentInfo::y1, _SegmentInfo::y2, DestroyEdge(), _SegmentInfo::x1, _SegmentInfo::x2, MagickMax(), _EdgeInfo::highwater, _EdgeInfo::number_points, _EdgeInfo::points, _PointInfo::y, _EdgeInfo::scanline, _PointInfo::x, _EdgeInfo::ghostline, MagickFalse, _EdgeInfo::direction, NonZeroRule, and MagickAbsoluteValue().
Referenced by DrawPolygonPrimitive().
| static MagickRealType GetStopColorOffset | ( | const GradientInfo * | gradient, |
| const ssize_t | x, | ||
| const ssize_t | y | ||
| ) | [inline, static] |
Definition at line 3144 of file draw.c.
References _GradientInfo::type, UndefinedGradient, LinearGradient, _GradientInfo::gradient_vector, _PointInfo::x, _SegmentInfo::x2, _SegmentInfo::x1, _PointInfo::y, _SegmentInfo::y2, _SegmentInfo::y1, MagickEpsilon, RadialGradient, _GradientInfo::center, _GradientInfo::spread, RepeatSpread, and _GradientInfo::radius.
Referenced by DrawGradientImage().
| static AffineMatrix InverseAffineMatrix | ( | const AffineMatrix * | affine | ) | [static] |
Definition at line 1035 of file draw.c.
References _AffineMatrix::sx, _AffineMatrix::sy, _AffineMatrix::rx, _AffineMatrix::ry, _AffineMatrix::tx, and _AffineMatrix::ty.
Referenced by DrawAffineImage().
| static MagickBooleanType IsPoint | ( | const char * | point | ) | [inline, static] |
Definition at line 1648 of file draw.c.
References StringToDouble(), MagickFalse, and MagickTrue.
Referenced by DrawImage(), and TracePath().
| static void LogPathInfo | ( | const PathInfo * | path_info | ) | [static] |
Definition at line 674 of file draw.c.
References LogMagickEvent(), DrawEvent, GetMagickModule, _PathInfo::code, EndCode, _PathInfo::point, _PointInfo::x, _PointInfo::y, GhostlineCode, OpenCode, MoveToCode, and LineToCode.
Referenced by ConvertPrimitiveToPath().
| static void LogPolygonInfo | ( | const PolygonInfo * | polygon_info | ) | [static] |
Definition at line 397 of file draw.c.
References LogMagickEvent(), DrawEvent, GetMagickModule, _PolygonInfo::edges, _PolygonInfo::number_edges, _EdgeInfo::direction, MagickFalse, _EdgeInfo::ghostline, _EdgeInfo::bounds, _SegmentInfo::x1, _SegmentInfo::y1, _SegmentInfo::x2, _SegmentInfo::y2, _EdgeInfo::number_points, _EdgeInfo::points, _PointInfo::x, and _PointInfo::y.
Referenced by ConvertPathToPolygon().
| static void LogPrimitiveInfo | ( | const PrimitiveInfo * | primitive_info | ) | [static] |
Definition at line 4013 of file draw.c.
References _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, _PrimitiveInfo::primitive, PointPrimitive, LogMagickEvent(), DrawEvent, GetMagickModule, _PrimitiveInfo::method, ColorPrimitive, MattePrimitive, TextPrimitive, ImagePrimitive, UndefinedPrimitive, and MagickEpsilon.
Referenced by DrawPrimitive().
| static ssize_t MagickAbsoluteValue | ( | const ssize_t | x | ) | [inline, static] |
Definition at line 1055 of file draw.c.
Referenced by GetFillAlpha().
| static double MagickMax | ( | const double | x, |
| const double | y | ||
| ) | [inline, static] |
Definition at line 1062 of file draw.c.
Referenced by DrawAffineImage(), DrawImage(), GetFillAlpha(), and TraceEllipse().
| static double MagickMin | ( | const double | x, |
| const double | y | ||
| ) | [inline, static] |
Definition at line 1069 of file draw.c.
Referenced by DrawAffineImage(), and TraceBezier().
| static MagickRealType Permutate | ( | const ssize_t | n, |
| const ssize_t | k | ||
| ) | [inline, static] |
Definition at line 4866 of file draw.c.
Referenced by TraceBezier().
| static void ReversePoints | ( | PointInfo * | points, |
| const size_t | number_points | ||
| ) | [static] |
Definition at line 427 of file draw.c.
Referenced by ConvertPathToPolygon().
| static void TraceArc | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end, | ||
| const PointInfo | degrees | ||
| ) | [static] |
Definition at line 4898 of file draw.c.
References _PointInfo::x, _PointInfo::y, and TraceEllipse().
Referenced by DrawImage().
| static void TraceArcPath | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end, | ||
| const PointInfo | arc, | ||
| const MagickRealType | angle, | ||
| const MagickBooleanType | large_arc, | ||
| const MagickBooleanType | sweep | ||
| ) |
Definition at line 4912 of file draw.c.
References _PointInfo::x, _PointInfo::y, TracePoint(), TraceLine(), DegreesToRadians(), MagickEpsilon, MagickFalse, MagickPI, _PrimitiveInfo::point, TraceBezier(), _PrimitiveInfo::coordinates, and _PrimitiveInfo::primitive.
Referenced by TracePath().
| static void TraceBezier | ( | PrimitiveInfo * | primitive_info, |
| const size_t | number_coordinates | ||
| ) |
Definition at line 5044 of file draw.c.
References _PointInfo::x, _PrimitiveInfo::point, _PointInfo::y, MagickMin(), BezierQuantum, AcquireQuantumMemory(), ThrowFatalException, ResourceLimitFatalError, Permutate(), TracePoint(), _PrimitiveInfo::coordinates, _PrimitiveInfo::primitive, and RelinquishMagickMemory().
Referenced by DrawImage(), TraceArcPath(), and TracePath().
| static void TraceCircle | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end | ||
| ) |
Definition at line 5138 of file draw.c.
References _PointInfo::x, _PointInfo::y, and TraceEllipse().
Referenced by DrawImage().
| static void TraceEllipse | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | stop, | ||
| const PointInfo | degrees | ||
| ) |
Definition at line 5160 of file draw.c.
References _PointInfo::x, _PointInfo::y, TracePoint(), MagickMax(), MagickPI, DegreesToRadians(), MagickEpsilon, _PrimitiveInfo::coordinates, and _PrimitiveInfo::primitive.
Referenced by DrawImage(), TraceArc(), TraceCircle(), and TraceRoundRectangle().
| static void TraceLine | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end | ||
| ) |
Definition at line 5214 of file draw.c.
References TracePoint(), _PointInfo::x, MagickEpsilon, _PointInfo::y, _PrimitiveInfo::primitive, PointPrimitive, and _PrimitiveInfo::coordinates.
Referenced by DrawImage(), and TraceArcPath().
| static size_t TracePath | ( | PrimitiveInfo * | primitive_info, |
| const char * | path | ||
| ) | [static] |
Definition at line 5230 of file draw.c.
References MaxTextExtent, _PointInfo::x, _PointInfo::y, _PrimitiveInfo::primitive, GetMagickToken(), StringToDouble(), StringToLong(), MagickTrue, MagickFalse, TraceArcPath(), _PrimitiveInfo::coordinates, IsPoint(), TraceBezier(), TracePoint(), FormatLocaleFile(), _PrimitiveInfo::method, and FillToBorderMethod.
Referenced by DrawImage().
| static void TracePoint | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | point | ||
| ) | [inline, static] |
Definition at line 1660 of file draw.c.
References _PrimitiveInfo::coordinates, and _PrimitiveInfo::point.
Referenced by DrawImage(), TraceArcPath(), TraceBezier(), TraceEllipse(), TraceLine(), TracePath(), TraceRectangle(), and TraceRoundRectangle().
| static void TraceRectangle | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end | ||
| ) |
Definition at line 5603 of file draw.c.
References TracePoint(), _PrimitiveInfo::coordinates, _PointInfo::x, _PointInfo::y, and _PrimitiveInfo::primitive.
Referenced by DrawBoundingRectangles(), and DrawImage().
| static void TraceRoundRectangle | ( | PrimitiveInfo * | primitive_info, |
| const PointInfo | start, | ||
| const PointInfo | end, | ||
| PointInfo | arc | ||
| ) |
Definition at line 5638 of file draw.c.
References _PointInfo::x, _PointInfo::y, TraceEllipse(), _PrimitiveInfo::coordinates, TracePoint(), _PrimitiveInfo::point, and _PrimitiveInfo::primitive.
Referenced by DrawImage().
| static void TraceSquareLinecap | ( | PrimitiveInfo * | primitive_info, |
| const size_t | number_vertices, | ||
| const MagickRealType | offset | ||
| ) |
Definition at line 5693 of file draw.c.
References _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, and MagickEpsilon.
Referenced by TraceStrokePolygon().
| static PrimitiveInfo * TraceStrokePolygon | ( | const DrawInfo * | draw_info, |
| const PrimitiveInfo * | primitive_info | ||
| ) | [static] |
Definition at line 5741 of file draw.c.
References _PrimitiveInfo::coordinates, BezierQuantum, AcquireQuantumMemory(), CopyMagickMemory(), _PrimitiveInfo::point, _PointInfo::x, _PointInfo::y, MagickTrue, MagickFalse, _DrawInfo::linejoin, RoundJoin, MiterJoin, _PrimitiveInfo::primitive, UndefinedPrimitive, MagickEpsilon, ExpandAffine(), _DrawInfo::affine, _DrawInfo::stroke_width, _DrawInfo::miterlimit, _DrawInfo::linecap, SquareCap, TraceSquareLinecap(), ResizeQuantumMemory(), RelinquishMagickMemory(), BevelJoin, MagickPI, and DegreesToRadians().
Referenced by DrawStrokePolygon().