aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/strokefill.cpp
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-01-10 18:40:03 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-01-10 18:40:03 +0000
commitd1ab9320b09b922bd2f3b3d4f888c754fde5b58c (patch)
tree211edc69f0a303c94e33c833a6d87ef7fc222d9c /gm/strokefill.cpp
parentdf6bcb14126853b16bcca75401644cef6055d200 (diff)
restore (debugged) cheapComputeDirection
git-svn-id: http://skia.googlecode.com/svn/trunk@3000 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gm/strokefill.cpp')
-rw-r--r--gm/strokefill.cpp83
1 files changed, 39 insertions, 44 deletions
diff --git a/gm/strokefill.cpp b/gm/strokefill.cpp
index 1fb5470dd1..274c4cdf83 100644
--- a/gm/strokefill.cpp
+++ b/gm/strokefill.cpp
@@ -10,48 +10,6 @@
#include "SkPath.h"
#include "SkTypeface.h"
-static void test10(SkCanvas* canvas) {
- SkPaint paint;
- const char text[] = "Hello"; // "Hello";
- const size_t len = sizeof(text) - 1;
- paint.setAntiAlias(true);
- paint.setTextSize(SkIntToScalar(100));
- SkTypeface* hira = SkTypeface::CreateFromName("Hiragino Maru Gothic Pro",
- SkTypeface::kNormal);
- paint.setTypeface(hira);
- SkScalar x = 180;
- SkScalar y = 88;
-
- canvas->drawText(text, len, x, y, paint);
- paint.setFakeBoldText(true);
- canvas->drawText(text, len, x, y + 100, paint);
- paint.setStyle(SkPaint::kStrokeAndFill_Style);
- paint.setStrokeWidth(5);
-
- SkPath path;
- path.setFillType(SkPath::kWinding_FillType);
- path.addCircle(x, y + 200, 50, SkPath::kCW_Direction);
- path.addCircle(x, y + 200, 40, SkPath::kCCW_Direction);
- canvas->drawPath(path, paint);
-
- SkPath path2;
- path2.setFillType(SkPath::kWinding_FillType);
- path2.addCircle(x + 120, y + 200, 50, SkPath::kCCW_Direction);
- path2.addCircle(x + 120, y + 200, 40, SkPath::kCW_Direction);
- canvas->drawPath(path2, paint);
-
- path2.reset();
- path2.addCircle(x + 240, y + 200, 50, SkPath::kCCW_Direction);
- canvas->drawPath(path2, paint);
- SkASSERT(path2.cheapIsDirection(SkPath::kCCW_Direction));
-
- path2.reset();
- SkASSERT(!path2.cheapComputeDirection(NULL));
- path2.addCircle(x + 360, y + 200, 50, SkPath::kCW_Direction);
- SkASSERT(path2.cheapIsDirection(SkPath::kCW_Direction));
- canvas->drawPath(path2, paint);
-}
-
static void test_path(SkCanvas* canvas, const SkPath& path) {
SkPaint paint;
paint.setAntiAlias(true);
@@ -120,8 +78,45 @@ protected:
}
virtual void onDraw(SkCanvas* canvas) {
- // test10(canvas);
- // test_rev(canvas);
+ SkPaint paint;
+ const char text[] = "Hello"; // "Hello";
+ const size_t len = sizeof(text) - 1;
+ paint.setAntiAlias(true);
+ paint.setTextSize(SkIntToScalar(100));
+ SkTypeface* hira = SkTypeface::CreateFromName("Hiragino Maru Gothic Pro",
+ SkTypeface::kNormal);
+ paint.setTypeface(hira);
+ SkScalar x = 180;
+ SkScalar y = 88;
+
+ canvas->drawText(text, len, x, y, paint);
+ paint.setFakeBoldText(true);
+ canvas->drawText(text, len, x, y + 100, paint);
+ paint.setStyle(SkPaint::kStrokeAndFill_Style);
+ paint.setStrokeWidth(5);
+
+ SkPath path;
+ path.setFillType(SkPath::kWinding_FillType);
+ path.addCircle(x, y + 200, 50, SkPath::kCW_Direction);
+ path.addCircle(x, y + 200, 40, SkPath::kCCW_Direction);
+ canvas->drawPath(path, paint);
+
+ SkPath path2;
+ path2.setFillType(SkPath::kWinding_FillType);
+ path2.addCircle(x + 120, y + 200, 50, SkPath::kCCW_Direction);
+ path2.addCircle(x + 120, y + 200, 40, SkPath::kCW_Direction);
+ canvas->drawPath(path2, paint);
+
+ path2.reset();
+ path2.addCircle(x + 240, y + 200, 50, SkPath::kCCW_Direction);
+ canvas->drawPath(path2, paint);
+ SkASSERT(path2.cheapIsDirection(SkPath::kCCW_Direction));
+
+ path2.reset();
+ SkASSERT(!path2.cheapComputeDirection(NULL));
+ path2.addCircle(x + 360, y + 200, 50, SkPath::kCW_Direction);
+ SkASSERT(path2.cheapIsDirection(SkPath::kCW_Direction));
+ canvas->drawPath(path2, paint);
}
private: