% %
% %
% Software Design %
-% John Cristy %
+% Cristy %
% July 1998 %
% %
% %
-% Copyright 1999-2013 ImageMagick Studio LLC, a non-profit organization %
+% Copyright 1999-2014 ImageMagick Studio LLC, a non-profit organization %
% dedicated to making software imaging solutions freely available. %
% %
% You may not use this file except in compliance with the License. You may %
next_direction=((path_info[i].point.y > point.y) ||
((path_info[i].point.y == point.y) &&
(path_info[i].point.x > point.x))) ? 1 : -1;
- if ((direction != 0) && (direction != next_direction))
+ if ((points != (PointInfo *) NULL) && (direction != 0) &&
+ (direction != next_direction))
{
/*
New edge.
{
offset-=length;
n++;
- length=scale*(draw_info->dash_pattern[n]+(n == 0 ? -0.5 : 0.5));
+ length=scale*(draw_info->dash_pattern[n]+0.5);
continue;
}
if (offset < length)
if (*draw_info->primitive != '@')
primitive=AcquireString(draw_info->primitive);
else
- primitive=FileToString(draw_info->primitive+1,~0,exception);
+ primitive=FileToString(draw_info->primitive+1,~0UL,exception);
if (primitive == (char *) NULL)
return(MagickFalse);
primitive_extent=(double) strlen(primitive);
graphic_context[n]->decorate=(DecorationType) decorate;
break;
}
+ if (LocaleCompare("direction",keyword) == 0)
+ {
+ ssize_t
+ direction;
+
+ GetMagickToken(q,&q,token);
+ direction=ParseCommandOption(MagickDirectionOptions,MagickFalse,
+ token);
+ if (direction == -1)
+ status=MagickFalse;
+ else
+ graphic_context[n]->direction=(DirectionType) direction;
+ break;
+ }
status=MagickFalse;
break;
}
&graphic_context[n]->fill_pattern,exception);
else
{
- double
- alpha;
-
- alpha=graphic_context[n]->fill.alpha;
status&=QueryColorCompliance(token,AllCompliance,
&graphic_context[n]->fill,exception);
- graphic_context[n]->fill.alpha=alpha;
if (status == MagickFalse)
{
ImageInfo
&graphic_context[n]->stroke_pattern,exception);
else
{
- double
- alpha;
-
- alpha=graphic_context[n]->stroke.alpha;
status&=QueryColorCompliance(token,AllCompliance,
&graphic_context[n]->stroke,exception);
- graphic_context[n]->stroke.alpha=alpha;
if (status == MagickFalse)
{
ImageInfo
polygon_info=AcquirePolygonThreadSet(draw_info,primitive_info);
if (polygon_info == (PolygonInfo **) NULL)
return(MagickFalse);
+DisableMSCWarning(4127)
if (0)
DrawBoundingRectangles(image,draw_info,polygon_info[0],exception);
+RestoreMSCWarning
if (image->debug != MagickFalse)
(void) LogMagickEvent(DrawEvent,GetMagickModule()," begin draw-polygon");
fill=(primitive_info->method == FillToBorderMethod) ||
exception=AcquireExceptionInfo();
(void) QueryColorCompliance("#000F",AllCompliance,&draw_info->fill,
exception);
- (void) QueryColorCompliance("#FFF0",AllCompliance,&draw_info->stroke,
+ (void) QueryColorCompliance("#FFFF",AllCompliance,&draw_info->stroke,
exception);
draw_info->stroke_width=1.0;
draw_info->alpha=OpaqueAlpha;
z_count;
attribute=0;
+ end.x=0.0;
+ end.y=0.0;
point.x=0.0;
point.y=0.0;
start.x=0.0;
start.y=0.0;
number_coordinates=0;
z_count=0;
+ (void) ResetMagickMemory(points,0,sizeof(*points));
primitive_type=primitive_info->primitive;
q=primitive_info;
for (p=path; *p != '\0'; )