diff options
Diffstat (limited to 'src/skia-tests/roundrect.cpp')
| -rw-r--r-- | src/skia-tests/roundrect.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/skia-tests/roundrect.cpp b/src/skia-tests/roundrect.cpp index e3aba75..722c95a 100644 --- a/src/skia-tests/roundrect.cpp +++ b/src/skia-tests/roundrect.cpp @@ -32,7 +32,7 @@ int sk_test_roundrect(caskbench_context_t *ctx) { int i; - double line_width, x, y; + double line_width, x, y, radius; SkRect rect; for (i=0; i<ctx->size; i++) { @@ -42,10 +42,13 @@ sk_test_roundrect(caskbench_context_t *ctx) y = trunc( (((double)ctx->canvas_height-20)*rand())/RAND_MAX ) + 10; rect.set(x, y, x+100, y+40); - line_width = trunc( ((double)ctx->size*rand())/RAND_MAX ) + 1; - ctx->skia_paint->setStrokeWidth(line_width); + /* vary radius upto half of MIN(X,Y) */ + radius = (double)rand()/RAND_MAX * 20; - ctx->skia_canvas->drawRoundRect(rect, 4.0, 4.0, *(ctx->skia_paint)); + /* line_width cannot be more than twice of radius due to skia limitation - Issue #4 in skia https://github.com/Samsung/skia/issues/4 */ + line_width = (double)rand()/RAND_MAX * (2*radius); + ctx->skia_paint->setStrokeWidth(line_width); + ctx->skia_canvas->drawRoundRect(rect, radius, radius, *(ctx->skia_paint)); } return 1; |