MagickCore  6.9.10
Convert, Edit, Or Compose Bitmap Images
draw.c File Reference
Include dependency graph for draw.c:

Data Structures

struct  _EdgeInfo
 
struct  _ElementInfo
 
struct  _MVGInfo
 
struct  _PolygonInfo
 
struct  _PathInfo
 

Macros

#define BezierQuantum   200
 
#define MaxBezierCoordinates   2097152
 
#define ThrowPointExpectedException(image, token)
 
#define DrawCompareEdge(p, q)
 
#define RenderImageTag   "Render/Image"
 
#define CheckPathExtent(pad)
 

Typedefs

typedef struct _EdgeInfo EdgeInfo
 
typedef struct _ElementInfo ElementInfo
 
typedef struct _MVGInfo MVGInfo
 
typedef struct _PolygonInfo PolygonInfo
 
typedef struct _PathInfo PathInfo
 

Enumerations

enum  PathInfoCode {
  MoveToCode, OpenCode, GhostlineCode, LineToCode,
  EndCode
}
 

Functions

static ImageDrawClippingMask (Image *, const DrawInfo *, const char *, const char *, ExceptionInfo *)
 
static MagickBooleanType DrawStrokePolygon (Image *, const DrawInfo *, const PrimitiveInfo *)
 
static PrimitiveInfoTraceStrokePolygon (const Image *, const DrawInfo *, const PrimitiveInfo *)
 
static size_t TracePath (Image *, MVGInfo *, const char *)
 
static void TraceArc (MVGInfo *, const PointInfo, const PointInfo, const PointInfo)
 
static void TraceArcPath (MVGInfo *, const PointInfo, const PointInfo, const PointInfo, const double, const MagickBooleanType, const MagickBooleanType)
 
static void TraceBezier (MVGInfo *, const size_t)
 
static void TraceCircle (MVGInfo *, const PointInfo, const PointInfo)
 
static void TraceEllipse (MVGInfo *, 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 (MVGInfo *, const PointInfo, const PointInfo, PointInfo)
 
static void TraceSquareLinecap (PrimitiveInfo *, const size_t, const double)
 
MagickExport DrawInfoAcquireDrawInfo (void)
 
MagickExport DrawInfoCloneDrawInfo (const ImageInfo *image_info, const DrawInfo *draw_info)
 
static int DrawCompareEdges (const void *p_edge, const void *q_edge)
 
static void LogPolygonInfo (const PolygonInfo *polygon_info)
 
static void ReversePoints (PointInfo *points, const size_t number_points)
 
static PolygonInfoConvertPathToPolygon (const PathInfo *path_info)
 
static void LogPathInfo (const PathInfo *path_info)
 
static PathInfoConvertPrimitiveToPath (const DrawInfo *magick_unused(draw_info), const PrimitiveInfo *primitive_info)
 
MagickExport DrawInfoDestroyDrawInfo (DrawInfo *draw_info)
 
static size_t DestroyEdge (PolygonInfo *polygon_info, const size_t edge)
 
static PolygonInfoDestroyPolygonInfo (PolygonInfo *polygon_info)
 
static SegmentInfo AffineEdge (const Image *image, const AffineMatrix *affine, const double y, const SegmentInfo *edge)
 
static AffineMatrix InverseAffineMatrix (const AffineMatrix *affine)
 
MagickExport MagickBooleanType DrawAffineImage (Image *image, const Image *source, const AffineMatrix *affine)
 
static double SaneStrokeWidth (const Image *image, const DrawInfo *draw_info)
 
static void DrawBoundingRectangles (Image *image, const DrawInfo *draw_info, const PolygonInfo *polygon_info)
 
MagickExport MagickBooleanType DrawClipPath (Image *image, const DrawInfo *draw_info, const char *id)
 
static ImageDrawCompositeMask (Image *image, const DrawInfo *draw_info, const char *id, const char *mask_path, ExceptionInfo *exception)
 
static MagickBooleanType DrawDashPolygon (const DrawInfo *draw_info, const PrimitiveInfo *primitive_info, Image *image)
 
static double GetStopColorOffset (const GradientInfo *gradient, const ssize_t x, const ssize_t y)
 
MagickExport MagickBooleanType DrawGradientImage (Image *image, const DrawInfo *draw_info)
 
static MagickBooleanType CheckPrimitiveExtent (MVGInfo *mvg_info, const size_t pad)
 
static SplayTreeInfoGetMVGMacros (const char *primitive)
 
static MagickBooleanType IsPoint (const char *point)
 
static void TracePoint (PrimitiveInfo *primitive_info, const PointInfo point)
 
MagickExport MagickBooleanType DrawImage (Image *image, const DrawInfo *draw_info)
 
MagickExport MagickBooleanType DrawPatternPath (Image *image, const DrawInfo *draw_info, const char *name, Image **pattern)
 
static PolygonInfo ** DestroyPolygonThreadSet (PolygonInfo **polygon_info)
 
static PolygonInfo ** AcquirePolygonThreadSet (const DrawInfo *draw_info, const PrimitiveInfo *primitive_info)
 
static double GetOpacityPixel (PolygonInfo *polygon_info, const double mid, const MagickBooleanType fill, const FillRule fill_rule, const ssize_t x, const ssize_t y, double *stroke_opacity)
 
static MagickBooleanType DrawPolygonPrimitive (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info)
 
static void LogPrimitiveInfo (const PrimitiveInfo *primitive_info)
 
MagickExport MagickBooleanType DrawPrimitive (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info)
 
static void DrawRoundLinecap (Image *image, const DrawInfo *draw_info, const PrimitiveInfo *primitive_info)
 
MagickExport void GetAffineMatrix (AffineMatrix *affine_matrix)
 
MagickExport void GetDrawInfo (const ImageInfo *image_info, DrawInfo *draw_info)
 
static double Permutate (const ssize_t n, const ssize_t k)
 

Macro Definition Documentation

◆ BezierQuantum

#define BezierQuantum   200

◆ CheckPathExtent

#define CheckPathExtent (   pad)
Value:
if ((q+(pad)) >= (ssize_t) max_strokes) \
{ \
if (~max_strokes < (pad)) \
{ \
path_p=(PointInfo *) RelinquishMagickMemory(path_p); \
path_q=(PointInfo *) RelinquishMagickMemory(path_q); \
} \
else \
{ \
max_strokes+=(pad); \
path_p=(PointInfo *) ResizeQuantumMemory(path_p,max_strokes, \
sizeof(*path_p)); \
path_q=(PointInfo *) ResizeQuantumMemory(path_q,max_strokes, \
sizeof(*path_q)); \
} \
if ((path_p == (PointInfo *) NULL) || (path_q == (PointInfo *) NULL)) \
{ \
if (path_p != (PointInfo *) NULL) \
path_p=(PointInfo *) RelinquishMagickMemory(path_p); \
if (path_q != (PointInfo *) NULL) \
path_q=(PointInfo *) RelinquishMagickMemory(path_q); \
polygon_primitive=(PrimitiveInfo *) \
RelinquishMagickMemory(polygon_primitive); \
return((PrimitiveInfo *) NULL); \
} \
}
MagickExport void * ResizeQuantumMemory(void *memory, const size_t count, const size_t quantum)
Definition: memory.c:1305
Definition: draw.h:356
MagickExport void * RelinquishMagickMemory(void *memory)
Definition: memory.c:1066
Definition: draw.h:138

Referenced by TraceStrokePolygon().

◆ DrawCompareEdge

#define DrawCompareEdge (   p,
 
)
Value:
{ \
if (((p)-(q)) < 0.0) \
return(-1); \
if (((p)-(q)) > 0.0) \
return(1); \
}

Referenced by DrawCompareEdges().

◆ MaxBezierCoordinates

#define MaxBezierCoordinates   2097152

Referenced by DrawDashPolygon(), and DrawImage().

◆ RenderImageTag

#define RenderImageTag   "Render/Image"

Referenced by DrawImage().

◆ ThrowPointExpectedException

#define ThrowPointExpectedException (   image,
  token 
)
Value:
{ \
(void) ThrowMagickException(&(image)->exception,GetMagickModule(),DrawError, \
"NonconformingDrawingPrimitiveDefinition","`%s'",token); \
status=MagickFalse; \
break; \
}
Definition: exception.h:68
MagickExport MagickBooleanType ThrowMagickException(ExceptionInfo *exception, const char *module, const char *function, const size_t line, const ExceptionType severity, const char *tag, const char *format,...)
Definition: exception.c:1068
#define GetMagickModule()
Definition: log.h:29
Definition: magick-type.h:191

Referenced by DrawImage(), and TracePath().

Typedef Documentation

◆ EdgeInfo

typedef struct _EdgeInfo EdgeInfo

◆ ElementInfo

typedef struct _ElementInfo ElementInfo

◆ MVGInfo

typedef struct _MVGInfo MVGInfo

◆ PathInfo

typedef struct _PathInfo PathInfo

◆ PolygonInfo

typedef struct _PolygonInfo PolygonInfo

Enumeration Type Documentation

◆ PathInfoCode

Enumerator
MoveToCode 
OpenCode 
GhostlineCode 
LineToCode 
EndCode 

Function Documentation

◆ AcquireDrawInfo()

MagickExport DrawInfo* AcquireDrawInfo ( void  )

References AcquireCriticalMemory(), and GetDrawInfo().

Referenced by GradientImage().

◆ AcquirePolygonThreadSet()

◆ AffineEdge()

◆ CheckPrimitiveExtent()

◆ CloneDrawInfo()

MagickExport DrawInfo* CloneDrawInfo ( const ImageInfo image_info,
const DrawInfo draw_info 
)

References AcquireCriticalMemory(), AcquireQuantumMemory(), _DrawInfo::affine, _DrawInfo::align, _DrawInfo::border_color, _DrawInfo::bounds, _DrawInfo::clip_mask, _DrawInfo::clip_path, _DrawInfo::clip_units, _DrawInfo::clipping_mask, CloneImage(), CloneString(), _DrawInfo::compliance, _DrawInfo::compose, _DrawInfo::composite_mask, _DrawInfo::dash_offset, _DrawInfo::dash_pattern, _DrawInfo::debug, _DrawInfo::decorate, _DrawInfo::density, _DrawInfo::direction, _DrawInfo::element_reference, _DrawInfo::encoding, _Image::exception, _DrawInfo::family, _DrawInfo::fill, _DrawInfo::fill_opacity, _DrawInfo::fill_pattern, _DrawInfo::fill_rule, _DrawInfo::font, _DrawInfo::geometry, GetDrawInfo(), _DrawInfo::gradient, _DrawInfo::gravity, _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, IsEventLogging(), _DrawInfo::kerning, _DrawInfo::linecap, _DrawInfo::linejoin, MagickEpsilon, MagickTrue, _DrawInfo::metrics, _DrawInfo::miterlimit, NewImageList(), _GradientInfo::number_stops, _DrawInfo::pointsize, _DrawInfo::primitive, _DrawInfo::render, ResourceLimitFatalError, _DrawInfo::server_name, _GradientInfo::stops, _DrawInfo::stretch, _DrawInfo::stroke, _DrawInfo::stroke_antialias, _DrawInfo::stroke_opacity, _DrawInfo::stroke_pattern, _DrawInfo::stroke_width, _DrawInfo::style, _DrawInfo::text, _DrawInfo::text_antialias, ThrowFatalException, _DrawInfo::tile, _DrawInfo::undercolor, _DrawInfo::viewbox, and _DrawInfo::weight.

Referenced by AnnotateImage(), DrawBoundingRectangles(), DrawClippingMask(), DrawCompositeMask(), DrawDashPolygon(), DrawImage(), DrawPatternPath(), DrawPrimitive(), DrawStrokePolygon(), GetMultilineTypeMetrics(), GetTypeMetrics(), MontageImageList(), PolaroidImage(), RenderHoughLines(), RenderType(), and VignetteImage().

◆ ConvertPathToPolygon()

◆ ConvertPrimitiveToPath()

◆ DestroyDrawInfo()

◆ DestroyEdge()

static size_t DestroyEdge ( PolygonInfo polygon_info,
const size_t  edge 
)
static

◆ DestroyPolygonInfo()

static PolygonInfo* DestroyPolygonInfo ( PolygonInfo polygon_info)
static

◆ DestroyPolygonThreadSet()

static PolygonInfo** DestroyPolygonThreadSet ( PolygonInfo **  polygon_info)
static

◆ DrawAffineImage()

◆ DrawBoundingRectangles()

◆ DrawClipPath()

MagickExport MagickBooleanType DrawClipPath ( Image image,
const DrawInfo draw_info,
const char *  id 
)

◆ DrawClippingMask()

◆ DrawCompareEdges()

static int DrawCompareEdges ( const void *  p_edge,
const void *  q_edge 
)
static

References DrawCompareEdge.

Referenced by ConvertPathToPolygon().

◆ DrawCompositeMask()

◆ DrawDashPolygon()

◆ DrawGradientImage()

◆ DrawImage()

MagickExport MagickBooleanType DrawImage ( Image image,
const DrawInfo draw_info 
)

References AcquireMagickMemory(), AcquireQuantumMemory(), AcquireString(), _DrawInfo::affine, _DrawInfo::align, ArcPrimitive, BezierPrimitive, BezierQuantum, _EdgeInfo::bounds, _DrawInfo::bounds, CheckPrimitiveExtent(), CirclePrimitive, ClampToQuantum(), _DrawInfo::clip_units, _DrawInfo::clipping_mask, CloneDrawInfo(), CloneString(), _PrimitiveInfo::closed_subpath, ColorPrimitive, _Image::columns, _DrawInfo::compliance, _DrawInfo::compose, _DrawInfo::composite_mask, ConcatenateString(), _PrimitiveInfo::coordinates, CopyMagickString(), _DrawInfo::dash_offset, _DrawInfo::dash_pattern, _Image::debug, _DrawInfo::decorate, DegreesToRadians(), DestroyDrawInfo(), DestroyImage(), DestroySplayTree(), DestroyString(), DirectClass, _EdgeInfo::direction, _DrawInfo::direction, DrawClipPath(), DrawClippingMask(), DrawCompositeMask(), DrawError, DrawEvent, DrawPatternPath(), DrawPrimitive(), EllipsePrimitive, _MVGInfo::exception, _Image::exception, _MVGInfo::extent, _Image::filename, FileToString(), _DrawInfo::fill, _DrawInfo::fill_opacity, _DrawInfo::fill_rule, FloodfillMethod, FormatLocaleString(), GetAffineMatrix(), GetImageArtifact(), GetMagickModule, GetMVGMacros(), GetNextToken(), GetTypeMetrics(), GetValueFromSplayTree(), _DrawInfo::gradient, GradientImage(), _DrawInfo::gravity, _RectangleInfo::height, ImagePrimitive, _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, IsPoint(), _DrawInfo::kerning, LinearGradient, _DrawInfo::linecap, _DrawInfo::linejoin, LinePrimitive, LocaleCompare(), LogMagickEvent(), MagickAlignOptions, MagickClipPathOptions, MagickComplianceOptions, MagickComposeOptions, MagickCoreSignature, MagickDecorateOptions, MagickDirectionOptions, MagickEpsilon, MagickFalse, MagickFillRuleOptions, MagickGravityOptions, MagickLineCapOptions, MagickLineJoinOptions, MagickMax, MagickMethodOptions, MagickMin, MagickPathExtent, MagickPI, MagickStretchOptions, MagickStyleOptions, MagickTrue, MagickWeightOptions, _Image::matte, MattePrimitive, MaxBezierCoordinates, MaxTextExtent, _PrimitiveInfo::method, _DrawInfo::miterlimit, _EdgeInfo::number_points, ObjectBoundingBox, _MVGInfo::offset, _PixelPacket::opacity, OpaqueAlphaChannel, OpaqueOpacity, PadSpread, _Image::page, ParseCommandOption(), PathPrimitive, _PrimitiveInfo::point, PointPrimitive, _DrawInfo::pointsize, PolygonPrimitive, PolylinePrimitive, _DrawInfo::primitive, _PrimitiveInfo::primitive, _MVGInfo::primitive_info, QuantumRange, QueryColorDatabase(), RadialGradient, RectanglePrimitive, RelinquishMagickMemory(), _DrawInfo::render, RenderImageTag, ResizeQuantumMemory(), ResourceLimitError, ResourceLimitFatalError, RoundRectanglePrimitive, _Image::rows, _AffineMatrix::rx, _AffineMatrix::ry, SetImageAlphaChannel(), SetImageArtifact(), SetImageClipMask(), SetImageMask(), SetImageProgress(), SetImageStorageClass(), _Image::signature, _DrawInfo::signature, _DrawInfo::stretch, StringToDouble(), StringToLong(), StringToUnsignedLong(), _DrawInfo::stroke, _DrawInfo::stroke_antialias, _DrawInfo::stroke_opacity, _DrawInfo::stroke_width, _DrawInfo::style, SVGCompliance, _AffineMatrix::sx, _AffineMatrix::sy, _DrawInfo::text, _PrimitiveInfo::text, _DrawInfo::text_antialias, TextPrimitive, ThrowBinaryException, ThrowFatalException, ThrowMagickException(), ThrowPointExpectedException, TraceArc(), TraceBezier(), TraceCircle(), TraceEllipse(), TraceEvent, TraceLine(), TracePath(), TracePoint(), TraceRectangle(), TraceRoundRectangle(), _AffineMatrix::tx, _AffineMatrix::ty, _GradientInfo::type, UndefinedPrimitive, _DrawInfo::viewbox, _DrawInfo::weight, _RectangleInfo::width, _TypeMetric::width, _RectangleInfo::x, _PointInfo::x, _SegmentInfo::x1, _SegmentInfo::x2, _RectangleInfo::y, _PointInfo::y, _SegmentInfo::y1, and _SegmentInfo::y2.

Referenced by AnnotateImage(), DrawClippingMask(), DrawCompositeMask(), DrawPatternPath(), RenderHoughLines(), RenderType(), and VignetteImage().

◆ DrawPatternPath()

◆ DrawPolygonPrimitive()

◆ DrawPrimitive()

MagickExport MagickBooleanType DrawPrimitive ( Image image,
const DrawInfo draw_info,
const PrimitiveInfo primitive_info 
)

References AcquireAuthenticCacheView(), AcquireImageInfo(), _DrawInfo::affine, AnnotateImage(), _MagickPixelPacket::blue, _PixelPacket::blue, _DrawInfo::border_color, _DrawInfo::clipping_mask, CloneDrawInfo(), CloneString(), _PrimitiveInfo::closed_subpath, ColorPrimitive, _Image::colorspace, _Image::columns, _DrawInfo::compliance, _DrawInfo::compose, _DrawInfo::composite_mask, CompositeImage(), CopyMagickString(), _DrawInfo::dash_pattern, _Image::debug, DefaultChannels, DestroyCacheView(), DestroyDrawInfo(), DestroyImage(), DestroyImageInfo(), DrawAffineImage(), DrawDashPolygon(), DrawEvent, DrawPolygonPrimitive(), DrawStrokePolygon(), _Image::exception, ExpandAffine(), _ImageInfo::filename, _DrawInfo::fill, FillToBorderMethod, _Image::filter, FloodfillMethod, FloodfillPaintImage(), FormatLocaleString(), _DrawInfo::geometry, GetCacheViewAuthenticPixels(), GetFillColor(), GetMagickModule, GetOneCacheViewVirtualPixel(), GetOneVirtualMagickPixel(), _DrawInfo::gravity, _Image::gravity, _MagickPixelPacket::green, _PixelPacket::green, ImagePrimitive, _Image::interpolate, IsColorSimilar(), IsEventLogging(), IsGrayColorspace(), IsPixelGray(), _DrawInfo::linecap, _DrawInfo::linejoin, LocaleNCompare(), LogMagickEvent(), LogPrimitiveInfo(), magick_restrict, MagickCompositeOver(), MagickEpsilon, MagickFalse, MagickTrue, _Image::matte, MattePrimitive, MaxTextExtent, _PrimitiveInfo::method, _PixelPacket::opacity, _DrawInfo::opacity, OpacityChannel, OpaqueAlphaChannel, OpaqueOpacity, OverCompositeOp, ParseGravityGeometry(), _PrimitiveInfo::point, PointMethod, PointPrimitive, _PrimitiveInfo::primitive, ReadImage(), ReadInlineImage(), _MagickPixelPacket::red, _PixelPacket::red, ReplaceMethod, ResetMethod, RoundCap, RoundJoin, _Image::rows, _AffineMatrix::rx, _AffineMatrix::ry, SaneStrokeWidth(), SetGeometry(), SetImageAlphaChannel(), SetImageClipMask(), SetImageColorspace(), SetImageMask(), SetImageOpacity(), SetImageProgressMonitor(), SetPixelOpacity, SrcOverCompositeOp, sRGBColorspace, _DrawInfo::stroke, _DrawInfo::stroke_pattern, _DrawInfo::stroke_width, SVGCompliance, _AffineMatrix::sx, _AffineMatrix::sy, SyncCacheViewAuthenticPixels(), _DrawInfo::text, _PrimitiveInfo::text, TextPrimitive, TransformImage(), TransparentOpacity, _AffineMatrix::tx, _AffineMatrix::ty, UndefinedPrimitive, _RectangleInfo::x, _PointInfo::x, _RectangleInfo::y, and _PointInfo::y.

Referenced by DrawBoundingRectangles(), and DrawImage().

◆ DrawRoundLinecap()

static void DrawRoundLinecap ( Image image,
const DrawInfo draw_info,
const PrimitiveInfo primitive_info 
)
static

◆ DrawStrokePolygon()

◆ GetAffineMatrix()

◆ GetDrawInfo()

MagickExport void GetDrawInfo ( const ImageInfo image_info,
DrawInfo draw_info 
)

References AcquireExceptionInfo(), AcquireString(), _DrawInfo::affine, _ImageInfo::antialias, _DrawInfo::border_color, _ImageInfo::border_color, ButtCap, _DrawInfo::clip_path, CloneImageInfo(), CloneString(), _DrawInfo::compose, _DrawInfo::debug, _DrawInfo::decorate, _DrawInfo::density, _ImageInfo::density, DestroyExceptionInfo(), DestroyImageInfo(), _DrawInfo::direction, _DrawInfo::encoding, EvenOddRule, _DrawInfo::family, _DrawInfo::fill, _DrawInfo::fill_opacity, _DrawInfo::fill_rule, _DrawInfo::font, _ImageInfo::font, GetAffineMatrix(), GetImageOption(), GetMagickModule, _DrawInfo::gravity, _DrawInfo::interline_spacing, _DrawInfo::interword_spacing, IsEventLogging(), _DrawInfo::kerning, _DrawInfo::linecap, _DrawInfo::linejoin, LogMagickEvent(), MagickCoreSignature, MagickDirectionOptions, MagickEpsilon, MagickFalse, MagickGravityOptions, MagickStyleOptions, MagickTrue, MagickWeightOptions, MiterJoin, _DrawInfo::miterlimit, NoDecoration, _PixelPacket::opacity, _DrawInfo::opacity, OpaqueOpacity, OverCompositeOp, ParseCommandOption(), _DrawInfo::pointsize, _ImageInfo::pointsize, QueryColorDatabase(), _DrawInfo::render, _DrawInfo::server_name, _ImageInfo::server_name, _DrawInfo::signature, StringToDouble(), StringToUnsignedLong(), _DrawInfo::stroke, _DrawInfo::stroke_antialias, _DrawInfo::stroke_opacity, _DrawInfo::stroke_width, _DrawInfo::style, _DrawInfo::text_antialias, TraceEvent, TransparentOpacity, UndefinedDirection, _DrawInfo::undercolor, and _DrawInfo::weight.

Referenced by AcquireDrawInfo(), and CloneDrawInfo().

◆ GetMVGMacros()

◆ GetOpacityPixel()

◆ GetStopColorOffset()

◆ InverseAffineMatrix()

◆ IsPoint()

static MagickBooleanType IsPoint ( const char *  point)
inlinestatic

◆ LogPathInfo()

◆ LogPolygonInfo()

◆ LogPrimitiveInfo()

◆ Permutate()

static double Permutate ( const ssize_t  n,
const ssize_t  k 
)
inlinestatic

Referenced by TraceBezier().

◆ ReversePoints()

static void ReversePoints ( PointInfo points,
const size_t  number_points 
)
static

Referenced by ConvertPathToPolygon().

◆ SaneStrokeWidth()

static double SaneStrokeWidth ( const Image image,
const DrawInfo draw_info 
)
inlinestatic

◆ TraceArc()

static void TraceArc ( MVGInfo mvg_info,
const PointInfo  start,
const PointInfo  end,
const PointInfo  degrees 
)
static

References TraceEllipse(), _PointInfo::x, and _PointInfo::y.

Referenced by DrawImage().

◆ TraceArcPath()

◆ TraceBezier()

◆ TraceCircle()

static void TraceCircle ( MVGInfo mvg_info,
const PointInfo  start,
const PointInfo  end 
)

References TraceEllipse(), _PointInfo::x, and _PointInfo::y.

Referenced by DrawImage().

◆ TraceEllipse()

◆ TraceLine()

◆ TracePath()

◆ TracePoint()

◆ TraceRectangle()

◆ TraceRoundRectangle()

◆ TraceSquareLinecap()

static void TraceSquareLinecap ( PrimitiveInfo primitive_info,
const size_t  number_vertices,
const double  offset 
)

◆ TraceStrokePolygon()