]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Sun, 10 Oct 2010 13:46:51 +0000 (13:46 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Sun, 10 Oct 2010 13:46:51 +0000 (13:46 +0000)
coders/msl.c
coders/svg.c
config/configure.xml
magick/draw.c
magick/version.h
wand/drawing-wand.c

index 3577f114c514d30243bf2270d0dff3269e8d36ea..f0204a4f580f7ff7901eb5f281536658fe796ce3 100644 (file)
@@ -1065,14 +1065,14 @@ static void MSLStartElement(void *context,const xmlChar *tag,
             "%.20gx%.20g%+.20g%+.20g",(double) geometry.width,(double)
             geometry.height,(double) geometry.x,(double) geometry.y);
           CloneString(&draw_info->geometry,text);
-          draw_info->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
-          draw_info->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
-          draw_info->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
-          draw_info->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
-          draw_info->affine.tx=current.sx*affine.tx+current.ry*affine.ty+
-            current.tx;
-          draw_info->affine.ty=current.rx*affine.tx+current.sy*affine.ty+
-            current.ty;
+          draw_info->affine.sx=affine.sx*current.sx+affine.ry*current.rx;
+          draw_info->affine.rx=affine.rx*current.sx+affine.sy*current.rx;
+          draw_info->affine.ry=affine.sx*current.ry+affine.ry*current.sy;
+          draw_info->affine.sy=affine.rx*current.ry+affine.sy*current.sy;
+          draw_info->affine.tx=affine.sx*current.tx+affine.ry*current.ty+
+            affine.tx;
+          draw_info->affine.ty=affine.rx*current.tx+affine.sy*current.ty+
+            affine.ty;
           (void) AnnotateImage(msl_info->image[n],draw_info);
           draw_info=DestroyDrawInfo(draw_info);
           break;
@@ -2655,14 +2655,14 @@ static void MSLStartElement(void *context,const xmlChar *tag,
             "%.20gx%.20g%+.20g%+.20g",(double) geometry.width,(double)
             geometry.height,(double) geometry.x,(double) geometry.y);
           CloneString(&draw_info->geometry,text);
-          draw_info->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
-          draw_info->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
-          draw_info->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
-          draw_info->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
-          draw_info->affine.tx=current.sx*affine.tx+current.ry*affine.ty+
-            current.tx;
-          draw_info->affine.ty=current.rx*affine.tx+current.sy*affine.ty+
-            current.ty;
+          draw_info->affine.sx=affine.sx*current.sx+affine.ry*current.rx;
+          draw_info->affine.rx=affine.rx*current.sx+affine.sy*current.rx;
+          draw_info->affine.ry=affine.sx*current.ry+affine.ry*current.sy;
+          draw_info->affine.sy=affine.rx*current.ry+affine.sy*current.sy;
+          draw_info->affine.tx=affine.sx*current.tx+affine.ry*current.ty+
+            affine.tx;
+          draw_info->affine.ty=affine.rx*current.tx+affine.sy*current.ty+
+            affine.ty;
           (void) DrawImage(msl_info->image[n],draw_info);
           draw_info=DestroyDrawInfo(draw_info);
           break;
@@ -4798,14 +4798,14 @@ static void MSLStartElement(void *context,const xmlChar *tag,
             "%.20gx%.20g%+.20g%+.20g",(double) geometry.width,(double)
             geometry.height,(double) geometry.x,(double) geometry.y);
           CloneString(&draw_info->geometry,text);
-          draw_info->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
-          draw_info->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
-          draw_info->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
-          draw_info->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
-          draw_info->affine.tx=current.sx*affine.tx+current.ry*affine.ty+
-            current.tx;
-          draw_info->affine.ty=current.rx*affine.tx+current.sy*affine.ty+
-            current.ty;
+          draw_info->affine.sx=affine.sx*current.sx+affine.ry*current.rx;
+          draw_info->affine.rx=affine.rx*current.sx+affine.sy*current.rx;
+          draw_info->affine.ry=affine.sx*current.ry+affine.ry*current.sy;
+          draw_info->affine.sy=affine.rx*current.ry+affine.sy*current.sy;
+          draw_info->affine.tx=affine.sx*current.tx+affine.ry*current.ty+
+            affine.tx;
+          draw_info->affine.ty=affine.rx*current.tx+affine.sy*current.ty+
+            affine.ty;
           status=GetTypeMetrics(msl_info->attributes[n],draw_info,&metrics);
           if (status != MagickFalse)
             {
index 82e443120e82e547245ca51ee942eb82d2e91bbb..880d4518e0abaf608adc4bd4dc821ae9c6f9f97d 100644 (file)
@@ -1391,14 +1391,14 @@ static void SVGStartElement(void *context,const xmlChar *name,
                   default:
                     break;
                 }
-                transform.sx=current.sx*affine.sx+current.ry*affine.rx;
-                transform.rx=current.rx*affine.sx+current.sy*affine.rx;
-                transform.ry=current.sx*affine.ry+current.ry*affine.sy;
-                transform.sy=current.rx*affine.ry+current.sy*affine.sy;
-                transform.tx=current.sx*affine.tx+current.ry*affine.ty+
-                  current.tx;
-                transform.ty=current.rx*affine.tx+current.sy*affine.ty+
-                  current.ty;
+                transform.sx=affine.sx*current.sx+affine.ry*current.rx;
+                transform.rx=affine.rx*current.sx+affine.sy*current.rx;
+                transform.ry=affine.sx*current.ry+affine.ry*current.sy;
+                transform.sy=affine.rx*current.ry+affine.sy*current.sy;
+                transform.tx=affine.sx*current.tx+affine.ry*current.ty+
+                  affine.tx;
+                transform.ty=affine.rx*current.tx+affine.sy*current.ty+
+                  affine.ty;
               }
               MVGPrintf(svg_info->file,
                 "affine %g %g %g %g %g %g\n",transform.sx,
@@ -1983,14 +1983,14 @@ static void SVGStartElement(void *context,const xmlChar *name,
                   default:
                     break;
                 }
-                transform.sx=current.sx*affine.sx+current.ry*affine.rx;
-                transform.rx=current.rx*affine.sx+current.sy*affine.rx;
-                transform.ry=current.sx*affine.ry+current.ry*affine.sy;
-                transform.sy=current.rx*affine.ry+current.sy*affine.sy;
-                transform.tx=current.sx*affine.tx+current.ry*affine.ty+
-                  current.tx;
-                transform.ty=current.rx*affine.tx+current.sy*affine.ty+
-                  current.ty;
+                transform.sx=affine.sx*current.sx+affine.ry*current.rx;
+                transform.rx=affine.rx*current.sx+affine.sy*current.rx;
+                transform.ry=affine.sx*current.ry+affine.ry*current.sy;
+                transform.sy=affine.rx*current.ry+affine.sy*current.sy;
+                transform.tx=affine.sx*current.tx+affine.ry*current.ty+
+                  affine.tx;
+                transform.ty=affine.rx*current.tx+affine.sy*current.ty+
+                  affine.ty;
               }
               MVGPrintf(svg_info->file,
                 "affine %g %g %g %g %g %g\n",transform.sx,
index 3bbce2dba417bb573deaa3748756c4849b32cc10..109a76a7a5715a95ac0778017a84a8ede69a2af4 100644 (file)
@@ -9,7 +9,7 @@
   <configure name="NAME" value="ImageMagick"/>
   <configure name="LIB_VERSION" value="0x665"/>
   <configure name="LIB_VERSION_NUMBER" value="6,6,5,0"/>
-  <configure name="RELEASE_DATE" value="2010-10-09"/>
+  <configure name="RELEASE_DATE" value="2010-10-10"/>
   <configure name="CONFIGURE" value="./configure "/>
   <configure name="PREFIX" value="/usr/local"/>
   <configure name="EXEC-PREFIX" value="/usr/local"/>
index d4cd7fdfe2ca3f0450af45725c51d01d68f53856..061d38d773868c7081e91ec48a6b206d1db65d5b 100644 (file)
@@ -2761,14 +2761,14 @@ MagickExport MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info)
     if ((affine.sx != 1.0) || (affine.rx != 0.0) || (affine.ry != 0.0) ||
         (affine.sy != 1.0) || (affine.tx != 0.0) || (affine.ty != 0.0))
       {
-        graphic_context[n]->affine.sx=current.sx*affine.sx+current.ry*affine.rx;
-        graphic_context[n]->affine.rx=current.rx*affine.sx+current.sy*affine.rx;
-        graphic_context[n]->affine.ry=current.sx*affine.ry+current.ry*affine.sy;
-        graphic_context[n]->affine.sy=current.rx*affine.ry+current.sy*affine.sy;
-        graphic_context[n]->affine.tx=
-          current.sx*affine.tx+current.ry*affine.ty+current.tx;
-        graphic_context[n]->affine.ty=
-          current.rx*affine.tx+current.sy*affine.ty+current.ty;
+        graphic_context[n]->affine.sx=affine.sx*current.sx+affine.ry*current.rx;
+        graphic_context[n]->affine.rx=affine.rx*current.sx+affine.sy*current.rx;
+        graphic_context[n]->affine.ry=affine.sx*current.ry+affine.ry*current.sy;
+        graphic_context[n]->affine.sy=affine.rx*current.ry+affine.sy*current.sy;
+        graphic_context[n]->affine.tx=affine.sx*current.tx+affine.ry*current.ty+
+          affine.tx;
+        graphic_context[n]->affine.ty=affine.rx*current.tx+affine.sy*current.ty+
+          affine.ty;
       }
     if (primitive_type == UndefinedPrimitive)
       {
index 22a2866f932a23ca10b91934c385b0bead4fa2d8..475a2e6ec978768508be62dd7268d38f603e6e69 100644 (file)
@@ -33,7 +33,7 @@ extern "C" {
 #define MagickLibAddendum  "-0"
 #define MagickLibInterface  4
 #define MagickLibMinInterface  4
-#define MagickReleaseDate  "2010-10-09"
+#define MagickReleaseDate  "2010-10-10"
 #define MagickChangeDate   "20101008"
 #define MagickAuthoritativeURL  "http://www.imagemagick.org"
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
index ba0df15986dfb93befcae3841d78e370f8d70cbf..77f8d5d3a5ff46ef66e35061bea5a1f5ba26bc32 100644 (file)
@@ -441,14 +441,14 @@ static void AdjustAffine(DrawingWand *wand,const AffineMatrix *affine)
         current;
 
       current=CurrentContext->affine;
-      CurrentContext->affine.sx=current.sx*affine->sx+current.ry*affine->rx;
-      CurrentContext->affine.rx=current.rx*affine->sx+current.sy*affine->rx;
-      CurrentContext->affine.ry=current.sx*affine->ry+current.ry*affine->sy;
-      CurrentContext->affine.sy=current.rx*affine->ry+current.sy*affine->sy;
-      CurrentContext->affine.tx=current.sx*affine->tx+current.ry*affine->ty+
-        current.tx;
-      CurrentContext->affine.ty=current.rx*affine->tx+current.sy*affine->ty+
-        current.ty;
+      CurrentContext->affine.sx=affine->sx*current.sx+affine->ry*current.rx;
+      CurrentContext->affine.rx=affine->rx*current.sx+affine->sy*current.rx;
+      CurrentContext->affine.ry=affine->sx*current.ry+affine->ry*current.sy;
+      CurrentContext->affine.sy=affine->rx*current.ry+affine->sy*current.sy;
+      CurrentContext->affine.tx=affine->sx*current.tx+affine->ry*current.ty+
+        affine->tx;
+      CurrentContext->affine.ty=affine->rx*current.tx+affine->sy*current.ty+
+        affine->ty;
     }
 }
 \f
@@ -4326,19 +4326,10 @@ WandExport void DrawResetVectorGraphics(DrawingWand *wand)
 */
 WandExport void DrawRotate(DrawingWand *wand,const double degrees)
 {
-  AffineMatrix
-    affine;
-
   assert(wand != (DrawingWand *) NULL);
   assert(wand->signature == WandSignature);
   if (wand->debug != MagickFalse)
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
-  GetAffineMatrix(&affine);
-  affine.sx=cos(DegreesToRadians(fmod(degrees,360.0)));
-  affine.rx=sin(DegreesToRadians(fmod(degrees,360.0)));
-  affine.ry=(-sin(DegreesToRadians(fmod(degrees,360.0))));
-  affine.sy=cos(DegreesToRadians(fmod(degrees,360.0)));
-  AdjustAffine(wand,&affine);
   (void) MvgPrintf(wand,"rotate %g\n",degrees);
 }
 \f
@@ -4419,17 +4410,10 @@ WandExport void DrawRoundRectangle(DrawingWand *wand,double x1,double y1,
 */
 WandExport void DrawScale(DrawingWand *wand,const double x,const double y)
 {
-  AffineMatrix
-    affine;
-
   assert(wand != (DrawingWand *) NULL);
   assert(wand->signature == WandSignature);
   if (wand->debug != MagickFalse)
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
-  GetAffineMatrix(&affine);
-  affine.sx=x;
-  affine.sy=y;
-  AdjustAffine(wand,&affine);
   (void) MvgPrintf(wand,"scale %g,%g\n",x,y);
 }
 \f
@@ -6368,16 +6352,10 @@ WandExport MagickBooleanType DrawSetVectorGraphics(DrawingWand *wand,
 */
 WandExport void DrawSkewX(DrawingWand *wand,const double degrees)
 {
-  AffineMatrix
-    affine;
-
   assert(wand != (DrawingWand *) NULL);
   assert(wand->signature == WandSignature);
   if (wand->debug != MagickFalse)
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
-  GetAffineMatrix(&affine);
-  affine.ry=tan(DegreesToRadians(fmod(degrees,360.0)));
-  AdjustAffine(wand,&affine);
   (void) MvgPrintf(wand,"skewX %g\n",degrees);
 }
 \f
@@ -6408,16 +6386,10 @@ WandExport void DrawSkewX(DrawingWand *wand,const double degrees)
 */
 WandExport void DrawSkewY(DrawingWand *wand,const double degrees)
 {
-  AffineMatrix
-    affine;
-
   assert(wand != (DrawingWand *) NULL);
   assert(wand->signature == WandSignature);
   if (wand->debug != MagickFalse)
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
-  GetAffineMatrix(&affine);
-  affine.rx=tan(DegreesToRadians(fmod(degrees,360.0)));
-  DrawAffine(wand,&affine);
   (void) MvgPrintf(wand,"skewY %g\n",degrees);
 }
 \f
@@ -6452,17 +6424,10 @@ WandExport void DrawSkewY(DrawingWand *wand,const double degrees)
 */
 WandExport void DrawTranslate(DrawingWand *wand,const double x,const double y)
 {
-  AffineMatrix
-    affine;
-
   assert(wand != (DrawingWand *) NULL);
   assert(wand->signature == WandSignature);
   if (wand->debug != MagickFalse)
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
-  GetAffineMatrix(&affine);
-  affine.tx=x;
-  affine.ty=y;
-  AdjustAffine(wand,&affine);
   (void) MvgPrintf(wand,"translate %g,%g\n",x,y);
 }
 \f