Index: gm/bug530095.cpp |
diff --git a/gm/bug530095.cpp b/gm/bug530095.cpp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..df1a03b188409c49f3fd6c0ae6b52bd486e95554 |
--- /dev/null |
+++ b/gm/bug530095.cpp |
@@ -0,0 +1,48 @@ |
+/* |
+ * Copyright 2016 Google Inc. |
+ * |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ */ |
+ |
+#include "gm.h" |
+#include "SkPath.h" |
+#include "SkDashPathEffect.h" |
+ |
+DEF_SIMPLE_GM(bug530095, canvas, 900, 1200) { |
+ SkPath path1, path2; |
+ path1.addCircle(200, 200, 124); |
+ path2.addCircle(2, 2, 1.24f); |
+ |
+ SkPaint paint; |
+ paint.setAntiAlias(true); |
+ paint.setStyle(SkPaint::kStroke_Style); |
+ paint.setStrokeWidth(26); |
+ SkScalar intervals[] = {700, 700 }; |
+ int intervalCount = (int) SK_ARRAY_COUNT(intervals); |
+ paint.setPathEffect(SkDashPathEffect::Create(intervals, intervalCount, -40))->unref(); |
+ canvas->drawPath(path1, paint); |
+ |
+ paint.setStrokeWidth(0.26f); |
+ SkScalar smIntervals[] = {7, 7 }; |
+ int smIntervalCount = (int) SK_ARRAY_COUNT(smIntervals); |
+ paint.setPathEffect(SkDashPathEffect::Create(smIntervals, smIntervalCount, -0.40f))->unref(); |
+ canvas->save(); |
+ canvas->scale(100, 100); |
+ canvas->translate(4, 0); |
+ canvas->drawPath(path2, paint); |
+ canvas->restore(); |
+ |
+ paint.setStrokeWidth(26); |
+ paint.setPathEffect(SkDashPathEffect::Create(intervals, intervalCount, 0))->unref(); |
+ canvas->save(); |
+ canvas->translate(0, 400); |
+ canvas->drawPath(path1, paint); |
+ canvas->restore(); |
+ |
+ paint.setStrokeWidth(0.26f); |
+ paint.setPathEffect(SkDashPathEffect::Create(smIntervals, smIntervalCount, 0))->unref(); |
+ canvas->scale(100, 100); |
+ canvas->translate(4, 4); |
+ canvas->drawPath(path2, paint); |
+} |