diff options
| author | chevalam <chevalam.s@samsung.com> | 2014-04-15 18:16:06 +0530 |
|---|---|---|
| committer | Bryce Harrington <b.harrington@samsung.com> | 2014-04-16 19:09:22 -0700 |
| commit | efbc73399e862e72063271983c643de4f0dd0604 (patch) | |
| tree | e4cbdcad0eb246cce23c5353571d81e931117f97 /src/skia-shapes.cpp | |
| parent | 6ce3ba4a1e61d9cf396cea9a58fcb5e828ad45c4 (diff) | |
Issue#2 - Establish shared shapes code for cairo and skia tests
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Diffstat (limited to 'src/skia-shapes.cpp')
| -rw-r--r-- | src/skia-shapes.cpp | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/skia-shapes.cpp b/src/skia-shapes.cpp new file mode 100644 index 0000000..03fefd6 --- /dev/null +++ b/src/skia-shapes.cpp @@ -0,0 +1,59 @@ +#include "skia-shapes.h" + +void skiaDrawCircle(caskbench_context_t *ctx, shapes_t *args) +{ + ctx->skia_canvas->drawCircle(args->centre_x, args->centre_y, args->radius, + *(ctx->skia_paint)); + +} + +void skiaDrawRectangle(caskbench_context_t *ctx, shapes_t *args) +{ + ctx->skia_canvas->drawRectCoords(args->centre_x, args->centre_y, args->width, args->height, + *(ctx->skia_paint)); + +} + +void skiaDrawTriangle(caskbench_context_t *ctx, shapes_t *args) +{ + + for (int p = 0; p < ctx->shape_args.numpoints ; p++ ) { + if(p == 0) + args->path.moveTo(args->points[p][0], args->points[p][1]); + else + args->path.rLineTo(args->points[p][0], args->points[p][1]); + } + ctx->skia_canvas->drawPath(args->path, + *(ctx->skia_paint)); + +} + +void skiaDrawStar(caskbench_context_t *ctx, shapes_t *args) +{ + + for (int p = 0; p < args->numpoints; p++ ) { + if(p == 0) + args->path.moveTo(args->points[p][0], args->points[p][1]); + else + args->path.lineTo(args->points[p][0], args->points[p][1]); + } + ctx->skia_canvas->drawPath(args->path, + *(ctx->skia_paint)); +} + +void skiaDrawRoundedRectangle (caskbench_context_t *ctx, shapes_t *args) +{ + args->rect.set(args->centre_x, args->centre_y, args->width, args->height); + + ctx->skia_canvas->drawRoundRect(args->rect, 4.0, 4.0, *(ctx->skia_paint)); + +} +void (*skiaShapes[5])(caskbench_context_t *ctx , shapes_t *args) = { + skiaDrawCircle, + skiaDrawRectangle, + skiaDrawTriangle, + skiaDrawStar, + skiaDrawRoundedRectangle + }; + + |