Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(766)

Unified Diff: samplecode/SampleArc.cpp

Issue 736583004: allow pictures to have a full bounds (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: use new roundOut Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: samplecode/SampleArc.cpp
diff --git a/samplecode/SampleArc.cpp b/samplecode/SampleArc.cpp
index a44eeb59ba1545cd30d5a2183355c48e71166e98..ecea90bf3f6fb876d55ced5ce99eb619f534df24 100644
--- a/samplecode/SampleArc.cpp
+++ b/samplecode/SampleArc.cpp
@@ -37,6 +37,27 @@ static void testparse() {
SkParsePath::ToSVGString(p2, &str2);
}
+#include "SkPictureRecorder.h"
+static void test_pictbounds(SkCanvas* canvas) {
+ SkRect r = SkRect::MakeXYWH(100, 50, 100, 100);
+ SkPictureRecorder recorder;
+ {
+ SkCanvas* c = recorder.beginRecording(r, NULL, 0);
+ c->drawOval(r, SkPaint());
+
+ SkIRect ir;
+ c->getClipDeviceBounds(&ir);
+ SkDebugf("devbounds [%d %d %d %d]\n", ir.left(), ir.top(), ir.right(), ir.bottom());
+
+ SkASSERT(!c->quickReject(r));
+ }
+ SkPicture* pic = recorder.endRecording();
+
+ canvas->drawPicture(pic);
+ SkASSERT(pic->cullRect() == r);
+ pic->unref();
+}
+
class ArcsView : public SampleView {
class MyDrawable : public SkCanvasDrawable {
SkRect fR;
@@ -176,6 +197,8 @@ protected:
}
virtual void onDrawContent(SkCanvas* canvas) {
+ if (true) { test_pictbounds(canvas); return; }
f(malita) 2014/11/19 15:02:27 Disabling "Arcs" intentionally?
+
fDrawable->setSweep(SampleCode::GetAnimScalar(SkIntToScalar(360)/24,
SkIntToScalar(360)));

Powered by Google App Engine
This is Rietveld 408576698