Reverse polygons to clockwise.
authorKoichi KAMICHI <kamichi@fonts.jp>
Wed, 23 Feb 2011 05:34:01 +0000 (05:34 +0000)
committerKoichi KAMICHI <kamichi@fonts.jp>
Wed, 23 Feb 2011 05:34:01 +0000 (05:34 +0000)
engine/kagecd.js

index 6bb900e..314db9d 100755 (executable)
@@ -400,6 +400,9 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
           poly.push(x1 - kMinWidthT, y1 + 1);\r
           poly.push(x1 + kMinWidthT, y1);\r
           poly.push(x1 - kMinWidthT * pm, y1 - kage.kMinWidthY * type * pm);\r
+          if(x1 > x2){\r
+            poly.reverse();\r
+          }\r
           polygons.push(poly);\r
         }\r
         else{\r
@@ -407,6 +410,9 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
           poly.push(x1 - kMinWidthT * XX + 1 * YX, y1 - kMinWidthT * XY + 1 * YY);\r
           poly.push(x1 + kMinWidthT * XX, y1 + kMinWidthT * XY);\r
           poly.push(x1 - kMinWidthT * pm * XX - kage.kMinWidthY * type * pm * YX, y1 - kMinWidthT * pm * XY - kage.kMinWidthY * type * pm * YY);\r
+          if(x1 > x2){\r
+            poly.reverse();\r
+          }\r
           polygons.push(poly);\r
         }\r
       }\r
@@ -423,6 +429,9 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
           poly.push(x1 - kMinWidthT * XX, y1 - kMinWidthT * XY);\r
           poly.push(x1 + kMinWidthT * XX, y1 + kMinWidthT * XY);\r
           poly.push(x1 + kMinWidthT * XX - kage.kMinWidthY * YX, y1 + kMinWidthT * XY - kage.kMinWidthY * YY);\r
+          if(x1 < x2){\r
+            poly.reverse();\r
+          }\r
           polygons.push(poly);\r
         }\r
       }\r
@@ -459,6 +468,9 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
                     y1 + kMinWidthT * 1.5 * XY + (kage.kMinWidthY - move * 1.2) * YY);\r
           poly.push(x1 + (kMinWidthT - 2) * XX + (kage.kMinWidthY * 2 - move * 0.8 + 1) * YX,\r
                     y1 + (kMinWidthT - 2) * XY + (kage.kMinWidthY * 2 - move * 0.8 + 1) * YY);\r
+          if(x1 < x2){\r
+            poly.reverse();\r
+          }\r
           polygons.push(poly);\r
         }\r
       }\r
@@ -475,6 +487,9 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
           poly.push(x1 - kMinWidthT * XX, y1 - kMinWidthT * XY);\r
           poly.push(x1 - kMinWidthT * 1.5 * XX + kage.kMinWidthY * YX, y1 + kage.kMinWidthY * YY - kMinWidthT * 1.5 * XY);\r
           poly.push(x1 - kMinWidthT * 0.5 * XX + kage.kMinWidthY * 3 * YX, y1 + kage.kMinWidthY * 3 * YY - kMinWidthT * 0.5 * XY);\r
+          if(x1 < x2){\r
+            poly.reverse();\r
+          }\r
           polygons.push(poly);\r
         }\r
       }\r
@@ -603,6 +618,7 @@ function cdDrawCurveU(kage, polygons, x1, y1, sx1, sy1, sx2, sy2, x2, y2, ta1, t
       poly.push(x2, y2 - kMinWidthT);\r
       poly.push(x2 - kage.kWidth * 4 * Math.pow(kMinWidthT / kage.kMinWidthT, 3), y2 - kMinWidthT);\r
       poly.push(x2 - kage.kWidth * 4 * Math.pow(kMinWidthT / kage.kMinWidthT, 3), y2 - kMinWidthT * 0.5);\r
+      poly.reverse();\r
       polygons.push(poly);\r
     }\r
   }\r