11 #define MAGICKCORE_IMPLEMENTATION  1    12 #define MAGICK_PLUSPLUS_IMPLEMENTATION 1    13 #define MAGICK_DRAWABLE_IMPLEMENTATION    27   return((left_.
x() == right_.
x()) && (left_.
y() == right_.
y()));
    33   return(!(left_ == right_));
    39   return (!(left_ < right_) && (left_ != right_));
    46   return((sqrt(left_.
x()*left_.
x() + left_.
y()*left_.
y())) <
    47     (sqrt(right_.
x()*right_.
x() + right_.
y()*right_.
y())));
    53   return((left_ > right_) || (left_ == right_));
    59   return((left_ < right_) || (left_ == right_));
    88   : dp(original_.copy())
   110   if (
this != &original_)
   123     dp->operator()(context_);
   139   : dp(original_.copy())
   152   : dp(original_.dp? original_.dp->copy(): 0)
   159   if (
this != &original_)
   161       VPathBase* temp_dp = (original_.dp ? original_.dp->
copy() : 0);
   172     dp->operator()( context_ );
   181                                         double rx_, 
double ry_,
   182                                         double tx_, 
double ty_ )
   193   GetAffineMatrix(&_affine);
   200   DrawAffine( context_, &_affine );
   213   DrawAlpha(context_,_x,_y,_paintMethod);
   227   DrawArc( context_, _startX, _startY, _endX, _endY, _startDegrees, _endDegrees );
   239   : _coordinates(coordinates_)
   245     _coordinates(original_._coordinates)
   254   size_t num_coords = (size_t) _coordinates.size();
   255   PointInfo *coordinates = 
new PointInfo[num_coords];
   257   PointInfo *q = coordinates;
   258   CoordinateList::const_iterator p = _coordinates.begin();
   260   while( p != _coordinates.end() )
   268   DrawBezier( context_, num_coords, coordinates );
   269   delete [] coordinates;
   286     _color(original_._color)
   295   MagickCore::DrawingWand *context_)
 const   303   color=
static_cast<PixelInfo
>(_color);
   304   pixel_wand=NewPixelWand();
   305   PixelSetPixelColor(pixel_wand,&color);
   306   DrawSetBorderColor(context_,pixel_wand);
   307   pixel_wand=DestroyPixelWand(pixel_wand);
   337   MagickCore::DrawingWand * context_)
 const   339   DrawSetClipRule(context_,_fillRule);
   369   MagickCore::DrawingWand * context_)
 const   371   DrawSetClipUnits(context_, _units);
   400   DrawPopClipPath( context_ );
   401   DrawPopDefs(context_);
   416     _id(original_._id.c_str())
   422 void Magick::DrawablePushClipPath::operator()
   423   ( MagickCore::DrawingWand * context_ ) 
const   425   DrawPushDefs(context_);
   426   DrawPushClipPath( context_, _id.c_str());
   442     _id(original_._id.c_str())
   450         (void) DrawSetClipPath( context_, _id.c_str());
   463   DrawCircle( context_, _originX, _originY, _perimX, _perimY );
   476   DrawColor( context_, _x, _y, _paintMethod );
   485 ( 
double x_, 
double y_,
   486   double width_, 
double height_,
   487   const std::string &filename_,
   488   Magick::CompositeOperator composition_ )
   489   : _composition(composition_),
   494     _image(
new Image(filename_))
   498 ( 
double x_, 
double y_,
   499   double width_, 
double height_,
   501   Magick::CompositeOperator composition_ )
   502   : _composition(composition_),
   507     _image(
new Image(image_))
   511 ( 
double x_, 
double y_,
   512   double width_, 
double height_,
   513   const std::string &filename_ )
   514   :_composition(CopyCompositeOp),
   519    _image(
new Image(filename_))
   523 ( 
double x_, 
double y_,
   524   double width_, 
double height_,
   526   :_composition(CopyCompositeOp),
   531    _image(
new Image(image_))
   535 ( 
double x_, 
double y_,
   536   const std::string &filename_ )
   537   : _composition(CopyCompositeOp),
   542     _image(
new Image(filename_))
   544   _width=_image->columns();
   545   _height=_image->rows();
   548 ( 
double x_, 
double y_,
   550   : _composition(CopyCompositeOp),
   555     _image(
new Image(image_))
   557   _width=_image->columns();
   558   _height=_image->rows();
   564      _composition(original_._composition),
   567      _width(original_._width),
   568      _height(original_._height),
   569      _image(
new Image(*original_._image))
   581   if ( 
this != &original_ )
   583       _composition = original_._composition;
   586       _width = original_._width;
   587       _height = original_._height;
   588       Image* temp_image = 
new Image(*original_._image);
   602   return _image->fileName();
   619   _image->magick( magick_ );
   623   return _image->magick();
   626 void Magick::DrawableCompositeImage::operator()
   627   ( MagickCore::DrawingWand * context_ ) 
const   632   magick_wand=NewMagickWandFromImage(_image->constImage());
   633   (void) DrawComposite( context_, _composition, _x, _y, _width, _height,
   635   magick_wand=DestroyMagickWand(magick_wand);
   658   MagickCore::DrawingWand *context_)
 const   660   DrawSetDensity(context_,_density.c_str());
   672 void Magick::DrawableEllipse::operator()
   673   ( MagickCore::DrawingWand * context_ ) 
const   675   DrawEllipse( context_, _originX, _originY, _radiusX, _radiusY,
   676                _arcStart, _arcEnd );
   691     _color(original_._color)
   697 void Magick::DrawableFillColor::operator()
   698   ( MagickCore::DrawingWand * context_ ) 
const   700   PixelInfo color = 
static_cast<PixelInfo
>(_color);
   701   PixelWand *pixel_wand=NewPixelWand();
   702   PixelSetPixelColor(pixel_wand,&color);
   703   DrawSetFillColor(context_,pixel_wand);
   704   pixel_wand=DestroyPixelWand(pixel_wand);
   729   MagickCore::DrawingWand * context_)
 const   731   DrawSetFillPatternURL(context_, _url.c_str());
   753 void Magick::DrawableFillRule::operator()
   754   ( MagickCore::DrawingWand * context_ ) 
const   756   DrawSetFillRule( context_, _fillRule );
   767 void Magick::DrawableFillOpacity::operator()
   768   (MagickCore::DrawingWand *context_) 
const   770   DrawSetFillOpacity(context_,_opacity);
   784     _stretch(
Magick::NormalStretch)
   788                                      Magick::StyleType style_,
   789                                      const unsigned int weight_,
   790                                      Magick::StretchType stretch_ )
   800     _font(original_._font),
   801     _family(original_._family),
   802     _style(original_._style),
   803     _weight(original_._weight),
   804     _stretch(original_._stretch)
   815       (void) DrawSetFont( context_, _font.c_str() );
   821       (void) DrawSetFontFamily( context_, _family.c_str() );
   824       DrawSetFontStyle( context_, _style );
   827       DrawSetFontWeight( context_, _weight );
   830       DrawSetFontStretch( context_, _stretch );
   842 void Magick::DrawableGravity::operator()
   843   ( MagickCore::DrawingWand * context_ ) 
const   845   DrawSetGravity( context_, _gravity );
   858   DrawLine( context_, _startX, _startY, _endX, _endY );
   872     _path(original_._path)
   880   DrawPathStart( context_ );
   882   for( VPathList::const_iterator p = _path.begin();
   883        p != _path.end(); p++ )
   884     p->operator()( context_ ); 
   886   DrawPathFinish( context_ );
   899   DrawPoint( context_, _x, _y );
   910 void Magick::DrawablePointSize::operator()
   911   ( MagickCore::DrawingWand * context_ ) 
const   913   DrawSetFontSize( context_, _pointSize );
   922   : _coordinates(coordinates_)
   928     _coordinates(original_._coordinates)
   934 void Magick::DrawablePolygon::operator()
   935   ( MagickCore::DrawingWand * context_ ) 
const   937   size_t num_coords = (size_t) _coordinates.size();
   938   PointInfo *coordinates = 
new PointInfo[num_coords];
   940   PointInfo *q = coordinates;
   941   CoordinateList::const_iterator p = _coordinates.begin();
   943   while( p != _coordinates.end() )
   951   DrawPolygon( context_, num_coords, coordinates );
   952   delete [] coordinates;
   962   : _coordinates(coordinates_)
   968     _coordinates(original_._coordinates)
   974 void Magick::DrawablePolyline::operator()
   975   ( MagickCore::DrawingWand * context_ ) 
const   977   size_t num_coords = (size_t) _coordinates.size();
   978   PointInfo *coordinates = 
new PointInfo[num_coords];
   980   PointInfo *q = coordinates;
   981   CoordinateList::const_iterator p = _coordinates.begin();
   983   while( p != _coordinates.end() )
   991   DrawPolyline( context_, num_coords, coordinates );
   992   delete [] coordinates;
  1003 void Magick::DrawablePopGraphicContext::operator()
  1004   ( MagickCore::DrawingWand * context_ ) 
const  1006   PopDrawingWand( context_ );
  1017 void Magick::DrawablePushGraphicContext::operator()
  1018   ( MagickCore::DrawingWand * context_ ) 
const  1020   PushDrawingWand( context_ );
  1031 void Magick::DrawablePopPattern::operator()
  1032   ( MagickCore::DrawingWand * context_ ) 
const  1034   (void) DrawPopPattern( context_ );
  1043 ( 
const std::string &id_, ssize_t x_, ssize_t y_,
  1044   size_t width_, 
size_t height_ )
  1058     _width(original_._width),
  1059     _height(original_._height)
  1065 void Magick::DrawablePushPattern::operator()
  1066   ( MagickCore::DrawingWand * context_ ) 
const  1068   (void) DrawPushPattern( context_, _id.c_str(), _x, _y, _width, _height );
  1079 void Magick::DrawableRectangle::operator()
  1080   ( MagickCore::DrawingWand * context_ ) 
const  1082   DrawRectangle( context_, _upperLeftX, _upperLeftY,
  1083                  _lowerRightX, _lowerRightY );
  1094 void Magick::DrawableRotation::operator()
  1095   ( MagickCore::DrawingWand * context_ ) 
const  1097   DrawRotate( context_, _angle );
  1108 void Magick::DrawableRoundRectangle::operator()
  1109   ( MagickCore::DrawingWand * context_ ) 
const  1111   DrawRoundRectangle(context_,_upperLeftX,_upperLeftY,_lowerRightX,
  1112     _lowerRightY,_cornerWidth, _cornerHeight);
  1123 void Magick::DrawableScaling::operator()
  1124   ( MagickCore::DrawingWand * context_ ) 
const  1126   DrawScale( context_, _x, _y );
  1137 void Magick::DrawableSkewX::operator()
  1138   ( MagickCore::DrawingWand * context_ ) 
const  1140   DrawSkewX( context_, _angle );
  1153   DrawSkewY( context_, _angle );
  1171     _size(original_._size),
  1172     _dasharray(new double[_size+1])
  1176     for (
size_t i=0; i < _size; i++)
  1177       _dasharray[i]=original_._dasharray[i];
  1178     _dasharray[_size]=0.0;
  1184   delete [] _dasharray;
  1186   _dasharray=(
double *) NULL;
  1192   if (
this != &original_)
  1194       delete [] _dasharray;
  1195       _size=original_._size;
  1196       _dasharray = 
new double[_size+1];
  1199         for (
size_t i=0; i < _size; i++)
  1200           _dasharray[i]=original_._dasharray[i];
  1201         _dasharray[_size]=0.0;
  1208   MagickCore::DrawingWand *context_)
 const  1210   (void) DrawSetStrokeDashArray(context_,(
const unsigned long) _size,
  1224   delete [] _dasharray;
  1228   if (dasharray_ != (
const double *) NULL)
  1243       _dasharray=
new double[_size+1];
  1246         for (
size_t i=0; i < _size; i++)
  1247           _dasharray[i]=dasharray_[i];
  1248         _dasharray[_size]=0.0;
  1263 void Magick::DrawableStrokeDashOffset::operator()
  1264   ( MagickCore::DrawingWand * context_) 
const  1266   DrawSetStrokeDashOffset(context_,_offset);
  1288 void Magick::DrawableStrokeLineCap::operator()
  1289   ( MagickCore::DrawingWand * context_ ) 
const  1291   DrawSetStrokeLineCap( context_, _linecap );
  1302 void Magick::DrawableStrokeLineJoin::operator()
  1303   ( MagickCore::DrawingWand * context_ ) 
const  1305   DrawSetStrokeLineJoin( context_, _linejoin );
  1316 void Magick::DrawableMiterLimit::operator()
  1317   ( MagickCore::DrawingWand * context_ ) 
const  1319   DrawSetStrokeMiterLimit( context_, _miterlimit );
  1329   const std::string &url_)
  1337   _url(original_._url)
  1346   MagickCore::DrawingWand * context_)
 const  1348   DrawSetStrokePatternURL(context_, _url.c_str());
  1370 void Magick::DrawableStrokeAntialias::operator()
  1371 ( MagickCore::DrawingWand * context_ ) 
const  1373   DrawSetStrokeAntialias( context_, static_cast<MagickBooleanType>
  1374     (_flag ? MagickTrue : MagickFalse) );
  1390     _color(original_._color)
  1396 void Magick::DrawableStrokeColor::operator()
  1397   ( MagickCore::DrawingWand * context_ ) 
const  1399   PixelInfo color = 
static_cast<PixelInfo
>(_color);
  1400   PixelWand *pixel_wand=NewPixelWand();
  1401   PixelSetPixelColor(pixel_wand,&color);
  1402   DrawSetStrokeColor(context_,pixel_wand);
  1403   pixel_wand=DestroyPixelWand(pixel_wand);
  1414 void Magick::DrawableStrokeOpacity::operator()
  1415   (MagickCore::DrawingWand * context_) 
const  1417   DrawSetStrokeOpacity(context_,_opacity);
  1429 void Magick::DrawableStrokeWidth::operator()
  1430   ( MagickCore::DrawingWand * context_ ) 
const  1432   DrawSetStrokeWidth( context_, _width );
  1441                                      const std::string &text_ )
  1449                                      const std::string &text_,  
const std::string &encoding_)
  1453     _encoding(encoding_)
  1460     _text(original_._text),
  1461     _encoding(original_._encoding)
  1467 void Magick::DrawableText::operator()
  1468   ( MagickCore::DrawingWand * context_ ) 
const  1470   DrawSetTextEncoding( context_, _encoding.c_str() );
  1471   DrawAnnotation( context_, _x, _y,
  1472                   reinterpret_cast<const unsigned char*>(_text.c_str()) );
  1481   Magick::AlignType alignment_)
  1482   : _alignment(alignment_)
  1489   _alignment(original_._alignment)
  1498   MagickCore::DrawingWand * context_)
 const  1500   DrawSetTextAlignment(context_, _alignment);
  1505   _alignment=alignment_;
  1525     _flag(original_._flag)
  1531 void Magick::DrawableTextAntialias::operator()
  1532   ( MagickCore::DrawingWand * context_ ) 
const  1534   DrawSetTextAntialias( context_, static_cast<MagickBooleanType>
  1535     (_flag ? MagickTrue : MagickFalse) );
  1545   ( Magick::DecorationType decoration_ )
  1546     : _decoration(decoration_)
  1552       _decoration(original_._decoration)
  1558 void Magick::DrawableTextDecoration::operator()
  1559   ( MagickCore::DrawingWand * context_ ) 
const  1561   DrawSetTextDecoration( context_, _decoration );
  1570   DirectionType direction_)
  1571   : _direction(direction_)
  1580   MagickCore::DrawingWand *context_)
 const  1582   DrawSetTextDirection(context_,_direction);
  1587   _direction=direction_;
  1603   : _spacing(spacing_)
  1612   MagickCore::DrawingWand *context_)
 const  1614   DrawSetTextInterlineSpacing(context_,_spacing);
  1635   : _spacing(spacing_)
  1644   MagickCore::DrawingWand *context_)
 const  1646   DrawSetTextInterwordSpacing(context_,_spacing);
  1667   : _kerning(kerning_)
  1676   MagickCore::DrawingWand *context_)
 const  1678   DrawSetTextKerning(context_,_kerning);
  1705     _color(original_._color)
  1711 void Magick::DrawableTextUnderColor::operator()
  1712   ( MagickCore::DrawingWand * context_ ) 
const  1714   PixelInfo color = 
static_cast<PixelInfo
>(_color);
  1715   PixelWand *pixel_wand=NewPixelWand();
  1716   PixelSetPixelColor(pixel_wand,&color);
  1717   DrawSetTextUnderColor(context_,pixel_wand);
  1718   pixel_wand=DestroyPixelWand(pixel_wand);
  1729 void Magick::DrawableTranslation::operator()
  1730   ( MagickCore::DrawingWand * context_ ) 
const  1732   DrawTranslate( context_, _x, _y );
  1743 void Magick::DrawableViewbox::operator()
  1744   ( MagickCore::DrawingWand * context_ ) 
const  1746   DrawSetViewbox( context_, _x1, _y1, _x2, _y2 );
  1783   return ( ( left_ > right_ ) || ( left_ == right_ ) );
  1788   return ( ( left_ < right_ ) || ( left_ == right_ ) );
  1795      _largeArcFlag(false),
  1803                                   double xAxisRotation_, 
bool largeArcFlag_,
  1804                                   bool sweepFlag_, 
double x_, 
double y_ )
  1805   : _radiusX(radiusX_),
  1807     _xAxisRotation(xAxisRotation_),
  1808     _largeArcFlag(largeArcFlag_),
  1809     _sweepFlag(sweepFlag_),
  1816   :  _radiusX(original_._radiusX),
  1817      _radiusY(original_._radiusY),
  1818      _xAxisRotation(original_._xAxisRotation),
  1819      _largeArcFlag(original_._largeArcFlag),
  1820      _sweepFlag(original_._sweepFlag),
  1832   : _coordinates(1,coordinates_)
  1836   : _coordinates(coordinates_)
  1841     _coordinates(original_._coordinates)
  1849   for( PathArcArgsList::const_iterator p = _coordinates.begin();
  1850        p != _coordinates.end(); p++ )
  1852       DrawPathEllipticArcAbsolute( context_, p->radiusX(), p->radiusY(),
  1853                                    p->xAxisRotation(), (MagickBooleanType) p->largeArcFlag(),
  1854                                    (MagickBooleanType) p->sweepFlag(), p->x(), p->y() );
  1863   : _coordinates(1,coordinates_)
  1867   : _coordinates(coordinates_)
  1872     _coordinates(original_._coordinates)
  1880   for( PathArcArgsList::const_iterator p = _coordinates.begin();
  1881        p != _coordinates.end(); p++ )
  1883       DrawPathEllipticArcRelative( context_, p->radiusX(), p->radiusY(),
  1884                                    p->xAxisRotation(), (MagickBooleanType) p->largeArcFlag(),
  1885                                    (MagickBooleanType) p->sweepFlag(), p->x(), p->y() );
  1901   DrawPathClose( context_ );
  1934   return ( ( left_ > right_ ) || ( left_ == right_ ) );
  1939   return ( ( left_ < right_ ) || ( left_ == right_ ) );
  1953                                           double x2_, 
double y2_,
  1954                                           double x_, 
double y_ )
  1965   : _x1(original_._x1),
  1989      _args(original_._args)
  1995 void Magick::PathCurvetoAbs::operator()
  1996   ( MagickCore::DrawingWand * context_ ) 
const  1998   for( PathCurveToArgsList::const_iterator p = _args.begin();
  1999        p != _args.end(); p++ )
  2001       DrawPathCurveToAbsolute( context_, p->x1(), p->y1(), p->x2(), p->y2(),
  2020     _args(original_._args)
  2026 void Magick::PathCurvetoRel::operator()
  2027   ( MagickCore::DrawingWand * context_ ) 
const  2029   for( PathCurveToArgsList::const_iterator p = _args.begin();
  2030        p != _args.end(); p++ )
  2032       DrawPathCurveToRelative( context_, p->x1(), p->y1(), p->x2(), p->y2(),
  2042   : _coordinates(1,coordinates_)
  2047   : _coordinates(coordinates_)
  2053     _coordinates(original_._coordinates)
  2059 void Magick::PathSmoothCurvetoAbs::operator()
  2060   ( MagickCore::DrawingWand * context_ ) 
const  2062   for( CoordinateList::const_iterator p = _coordinates.begin();
  2063        p != _coordinates.end(); p++ )
  2068       if (p == _coordinates.end() )
  2070       DrawPathCurveToSmoothAbsolute( context_, x2, y2, p->x(), p->y() );
  2079   : _coordinates(1,coordinates_)
  2084   : _coordinates(coordinates_)
  2090     _coordinates(original_._coordinates)
  2096 void Magick::PathSmoothCurvetoRel::operator()
  2097   ( MagickCore::DrawingWand * context_ ) 
const  2099   for( CoordinateList::const_iterator p = _coordinates.begin();
  2100        p != _coordinates.end(); p++ )
  2105       if (p == _coordinates.end() )
  2107       DrawPathCurveToSmoothRelative( context_, x2, y2, p->x(), p->y() );
  2146   return ( ( left_ > right_ ) || ( left_ == right_ ) );
  2152   return ( ( left_ < right_ ) || ( left_ == right_ ) );
  2175   : _x1(original_._x1),
  2199     _args(original_._args)
  2205 void Magick::PathQuadraticCurvetoAbs::operator()
  2206   ( MagickCore::DrawingWand * context_ ) 
const  2208   for( PathQuadraticCurvetoArgsList::const_iterator p = _args.begin();
  2209        p != _args.end(); p++ )
  2211       DrawPathCurveToQuadraticBezierAbsolute( context_, p->x1(), p->y1(),
  2232     _args(original_._args)
  2238 void Magick::PathQuadraticCurvetoRel::operator()
  2239   ( MagickCore::DrawingWand * context_ ) 
const  2241   for( PathQuadraticCurvetoArgsList::const_iterator p = _args.begin();
  2242        p != _args.end(); p++ )
  2244       DrawPathCurveToQuadraticBezierRelative( context_, p->x1(), p->y1(),
  2254   : _coordinates(1,coordinate_)
  2259   : _coordinates(coordinates_)
  2265     _coordinates(original_._coordinates)
  2271 void Magick::PathSmoothQuadraticCurvetoAbs::operator()
  2272   ( MagickCore::DrawingWand * context_ ) 
const  2274   for( CoordinateList::const_iterator p = _coordinates.begin();
  2275        p != _coordinates.end(); p++ )
  2277       DrawPathCurveToQuadraticBezierSmoothAbsolute( context_, p->x(), p->y() );
  2286   : _coordinates(1,coordinate_)
  2291   : _coordinates(coordinates_)
  2297     _coordinates(original_._coordinates)
  2303 void Magick::PathSmoothQuadraticCurvetoRel::operator()
  2304   ( MagickCore::DrawingWand * context_ ) 
const  2306   for( CoordinateList::const_iterator p = _coordinates.begin();
  2307        p != _coordinates.end(); p++ )
  2309       DrawPathCurveToQuadraticBezierSmoothRelative( context_, p->x(), p->y() );
  2321   : _coordinates(1,coordinate_)
  2325   : _coordinates(coordinates_)
  2330     _coordinates(original_._coordinates)
  2338   for( CoordinateList::const_iterator p = _coordinates.begin();
  2339        p != _coordinates.end(); p++ )
  2341       DrawPathLineToAbsolute( context_, p->x(), p->y() );
  2349   : _coordinates(1,coordinate_)
  2353   : _coordinates(coordinates_)
  2358     _coordinates(original_._coordinates)
  2366   for( CoordinateList::const_iterator p = _coordinates.begin();
  2367        p != _coordinates.end(); p++ )
  2369       DrawPathLineToRelative( context_, p->x(), p->y() );
  2384 void Magick::PathLinetoHorizontalAbs::operator()
  2385   ( MagickCore::DrawingWand * context_ ) 
const  2387   DrawPathLineToHorizontalAbsolute( context_, _x );
  2396 void Magick::PathLinetoHorizontalRel::operator()
  2397   ( MagickCore::DrawingWand * context_ ) 
const  2399   DrawPathLineToHorizontalRelative( context_, _x );
  2412 void Magick::PathLinetoVerticalAbs::operator()
  2413   ( MagickCore::DrawingWand * context_ ) 
const  2415   DrawPathLineToVerticalAbsolute( context_, _y );
  2424 void Magick::PathLinetoVerticalRel::operator()
  2425   ( MagickCore::DrawingWand * context_ ) 
const  2427   DrawPathLineToVerticalRelative( context_, _y );
  2439   : _coordinates(1,coordinate_)
  2443   : _coordinates(coordinates_)
  2448     _coordinates(original_._coordinates)
  2456   for( CoordinateList::const_iterator p = _coordinates.begin();
  2457        p != _coordinates.end(); p++ )
  2459       DrawPathMoveToAbsolute( context_, p->x(), p->y() );
  2467   : _coordinates(1,coordinate_)
  2471   : _coordinates(coordinates_)
  2476     _coordinates(original_._coordinates)
  2484   for( CoordinateList::const_iterator p = _coordinates.begin();
  2485        p != _coordinates.end(); p++ )
  2487       DrawPathMoveToRelative( context_, p->x(), p->y() );
 ~DrawableTextDecoration(void)
~PathLinetoHorizontalRel(void)
void operator()(MagickCore::DrawingWand *context_) const
void operator()(MagickCore::DrawingWand *context_) const
DrawableStrokePatternUrl(const std::string &url_)
double spacing(void) const
DrawableClipRule(const FillRule fillRule_)
PathSmoothCurvetoAbs(const Magick::Coordinate &coordinates_)
~DrawableMiterLimit(void)
MagickPPExport int operator!=(const Magick::Color &left_, const Magick::Color &right_)
DrawableFont(const std::string &font_)
~DrawableFillPatternUrl(void)
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
const double * dasharray(void) const
~DrawableStrokeOpacity(void)
~DrawableTextUnderColor(void)
DrawableBase * copy() const
std::string url(void) const
DrawablePolygon(const CoordinateList &coordinates_)
std::vector< Magick::PathCurvetoArgs > PathCurveToArgsList
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableClipUnits(const ClipPathUnits units_)
DrawableStrokeDashArray & operator=(const Magick::DrawableStrokeDashArray &original_)
~DrawableRoundRectangle(void)
DrawableBase * copy() const
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBorderColor(const Color &color_)
virtual ~DrawableBase(void)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
DrawableBase * copy() const
~PathQuadraticCurvetoAbs(void)
~DrawableTranslation(void)
virtual DrawableBase * copy() const
~DrawablePopClipPath(void)
std::vector< Magick::PathQuadraticCurvetoArgs > PathQuadraticCurvetoArgsList
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableClipPath(const std::string &id_)
~DrawableFillOpacity(void)
DrawableBase * copy() const
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
double spacing(void) const
~DrawablePopPattern(void)
~DrawableStrokeAntialias(void)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
void operator()(MagickCore::DrawingWand *) const
PathLinetoRel(const Magick::Coordinate &coordinate_)
~DrawableCompositeImage(void)
MagickPPExport int operator<(const Magick::Color &left_, const Magick::Color &right_)
~DrawableTextAntialias(void)
~PathSmoothQuadraticCurvetoRel(void)
~DrawableTextDirection(void)
DrawableTextInterwordSpacing(double spacing_)
void operator()(MagickCore::DrawingWand *context_) const
~DrawableStrokeDashOffset(void)
DrawableBase * copy() const
DrawableBase * copy() const
~PathQuadraticCurvetoRel(void)
~PathLinetoVerticalAbs(void)
PathQuadraticCurvetoRel(const Magick::PathQuadraticCurvetoArgs &args_)
DrawableBase * copy() const
DrawableStrokeDashArray(const double *dasharray_)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableFillColor(const Color &color_)
void operator()(MagickCore::DrawingWand *context_) const
DrawableTextDecoration(DecorationType decoration_)
DrawableBase * copy() const
~DrawableStrokeWidth(void)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
ClipPathUnits units(void) const
~DrawableStrokePatternUrl(void)
MagickPPExport int operator<=(const Magick::Color &left_, const Magick::Color &right_)
PathSmoothQuadraticCurvetoRel(const Magick::Coordinate &coordinate_)
DrawableCompositeImage(double x_, double y_, const std::string &filename_)
MagickPPExport int operator>=(const Magick::Color &left_, const Magick::Color &right_)
DrawableBase * copy() const
DrawableBase * copy() const
virtual VPathBase * copy() const =0
~DrawableStrokeDashArray(void)
DrawableTextKerning(double kerning_)
~DrawableTextAlignment(void)
~DrawableTextKerning(void)
DrawableBase * copy() const
DrawableTextUnderColor(const Color &color_)
DrawablePushClipPath(const std::string &id_)
double kerning(void) const
DrawableBase * copy() const
PathSmoothCurvetoRel(const Coordinate &coordinates_)
void operator()(MagickCore::DrawingWand *context_) const
~PathLinetoVerticalRel(void)
PathCurvetoAbs(const PathCurvetoArgs &args_)
~DrawablePushClipPath(void)
~DrawableStrokeLineCap(void)
~DrawablePushPattern(void)
void operator()(MagickCore::DrawingWand *context_) const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBezier(const CoordinateList &coordinates_)
PathQuadraticCurvetoAbs(const Magick::PathQuadraticCurvetoArgs &args_)
void operator()(MagickCore::DrawingWand *context_) const
DrawableTextDirection(DirectionType direction_)
std::vector< Magick::VPath > VPathList
DrawableBase * copy() const
double offset(void) const
PathSmoothQuadraticCurvetoAbs(const Magick::Coordinate &coordinate_)
DrawableBase * copy() const
~DrawableBorderColor(void)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawablePath(const VPathList &path_)
virtual void operator()(MagickCore::DrawingWand *) const
VPath & operator=(const VPath &original_)
DrawableBase * copy() const
PathCurvetoRel(const PathCurvetoArgs &args_)
DrawableBase * copy() const
Magick::Image image(void) const
void operator()(MagickCore::DrawingWand *context_) const
AlignType alignment(void) const
DrawableBase * copy() const
~DrawableTextInterlineSpacing(void)
DrawableBase * copy() const
DirectionType direction(void) const
DrawablePushPattern(const std::string &id_, ::ssize_t x_, ::ssize_t y_, size_t width_, size_t height_)
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
std::vector< Magick::PathArcArgs > PathArcArgsList
void operator()(MagickCore::DrawingWand *context_) const
~PathSmoothCurvetoRel(void)
~PathSmoothCurvetoAbs(void)
void operator()(MagickCore::DrawingWand *context_) const
~PathQuadraticCurvetoArgs(void)
void operator()(MagickCore::DrawingWand *context_) const
~DrawablePopGraphicContext(void)
void operator()(MagickCore::DrawingWand *context_) const
PathLinetoAbs(const Magick::Coordinate &coordinate_)
DrawableText(const double x_, const double y_, const std::string &text_)
void operator()(MagickCore::DrawingWand *context_) const
Drawable & operator=(const Drawable &original_)
DrawableTextAlignment(AlignType alignment_)
void operator()(MagickCore::DrawingWand *context_) const
PathMovetoAbs(const Magick::Coordinate &coordinate_)
DrawableFillPatternUrl(const std::string &url_)
void operator()(MagickCore::DrawingWand *context_) const
PathMovetoRel(const Magick::Coordinate &coordinate_)
PathArcRel(const PathArcArgs &coordinates_)
DrawableBase * copy() const
MagickPPExport int operator>(const Magick::Color &left_, const Magick::Color &right_)
DrawableStrokeColor(const Color &color_)
void operator()(MagickCore::DrawingWand *context_) const
void operator()(MagickCore::DrawingWand *context_) const
MagickPPExport int operator==(const Magick::Color &left_, const Magick::Color &right_)
~PathLinetoHorizontalAbs(void)
DrawableBase * copy() const
class MagickPPExport Image
DrawableBase * copy() const
~PathSmoothQuadraticCurvetoAbs(void)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
DrawableBase * copy() const
std::string url(void) const
PathQuadraticCurvetoArgs(void)
~DrawablePushGraphicContext(void)
DrawableBase * copy() const
~DrawableStrokeColor(void)
std::vector< Magick::Coordinate > CoordinateList
DrawableBase * copy() const
DrawablePolyline(const CoordinateList &coordinates_)
DrawableBase * copy() const
~DrawableStrokeLineJoin(void)
DrawableBase * copy() const
DrawableBase * copy() const
DrawableTextInterlineSpacing(double spacing_)
DrawableBase * copy() const
void operator()(MagickCore::DrawingWand *context_) const
PathArcAbs(const PathArcArgs &coordinates_)
~DrawableTextInterwordSpacing(void)
DrawableBase * copy() const
DrawableTextAntialias(bool flag_)
void operator()(MagickCore::DrawingWand *context_) const
DrawableDensity(const Point &density_)
void operator()(MagickCore::DrawingWand *context_) const
FillRule fillRule(void) const
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
DrawableBase * copy() const
std::string filename(void) const