aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/aarectmodes.cpp
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-11-14 13:14:58 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-11-14 13:14:58 +0000
commit761661580e798abe3caed8d45c7e742ac87521c6 (patch)
treec51bf67bef134be8899eba9bdfcdac0dc4c86394 /gm/aarectmodes.cpp
parentb42403bdb9989150878ef55d32773070abf53ce1 (diff)
add test for bad scanconversion (disabled)
git-svn-id: http://skia.googlecode.com/svn/trunk@2673 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gm/aarectmodes.cpp')
-rw-r--r--gm/aarectmodes.cpp46
1 files changed, 45 insertions, 1 deletions
diff --git a/gm/aarectmodes.cpp b/gm/aarectmodes.cpp
index 4ef1f6083e..058d824041 100644
--- a/gm/aarectmodes.cpp
+++ b/gm/aarectmodes.cpp
@@ -10,6 +10,50 @@
#include "SkColorPriv.h"
#include "SkShader.h"
+static void test4(SkCanvas* canvas) {
+ SkPaint paint;
+ paint.setAntiAlias(true);
+ SkPoint pts[] = {
+ {10, 160}, {610, 160},
+ {610, 160}, {10, 160},
+
+ {610, 160}, {610, 160},
+ {610, 199}, {610, 199},
+
+ {10, 198}, {610, 198},
+ {610, 199}, {10, 199},
+
+ {10, 160}, {10, 160},
+ {10, 199}, {10, 199}
+ };
+ char verbs[] = {
+ 0, 1, 1, 1, 4,
+ 0, 1, 1, 1, 4,
+ 0, 1, 1, 1, 4,
+ 0, 1, 1, 1, 4
+ };
+ SkPath path;
+ SkPoint* ptPtr = pts;
+ for (int i = 0; i < sizeof(verbs); ++i) {
+ switch ((SkPath::Verb) verbs[i]) {
+ case SkPath::kMove_Verb:
+ path.moveTo(ptPtr->fX, ptPtr->fY);
+ ++ptPtr;
+ break;
+ case SkPath::kLine_Verb:
+ path.lineTo(ptPtr->fX, ptPtr->fY);
+ ++ptPtr;
+ break;
+ case SkPath::kClose_Verb:
+ path.close();
+ break;
+ }
+ }
+ SkRect clip = {0, 130, 772, 531};
+ canvas->clipRect(clip);
+ canvas->drawPath(path, paint);
+}
+
static SkCanvas* create_canvas(int w, int h) {
SkBitmap bm;
bm.setConfig(SkBitmap::kARGB_8888_Config, w, h);
@@ -107,7 +151,7 @@ namespace skiagm {
virtual SkISize onISize() { return make_isize(640, 480); }
virtual void onDraw(SkCanvas* canvas) {
-
+// test4(canvas);
const SkRect bounds = SkRect::MakeWH(W, H);
static const SkAlpha gAlphaValue[] = { 0xFF, 0x88, 0x88 };