diff options
Diffstat (limited to 'gunit_tests/basicDraw.cpp')
| -rw-r--r-- | gunit_tests/basicDraw.cpp | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/gunit_tests/basicDraw.cpp b/gunit_tests/basicDraw.cpp index e4e290f..c07544d 100644 --- a/gunit_tests/basicDraw.cpp +++ b/gunit_tests/basicDraw.cpp @@ -130,3 +130,61 @@ TEST_F(BasicDrawTest, CtxSolidPaintClippedOver) { compareWithRefImage(); } +void drawLineJoin(VkvgContext ctx) { + vkvg_move_to(ctx, 20, 70); + vkvg_line_to(ctx, 50, 20); + vkvg_line_to(ctx, 80, 70); + vkvg_stroke(ctx); +} +TEST_F(BasicDrawTest, CtxStrokeJoins) { + VkvgContext ctx = vkvg_create(surf); + vkvg_set_source_rgba(ctx,0,0,0,1); + vkvg_set_line_width(ctx, 20); + + vkvg_set_line_join(ctx, VKVG_LINE_JOIN_BEVEL); + drawLineJoin(ctx); + + vkvg_translate(ctx, 0, 80); + vkvg_set_line_join(ctx, VKVG_LINE_JOIN_MITER); + drawLineJoin(ctx); + + vkvg_translate(ctx, 0, 80 ); + vkvg_set_line_join(ctx, VKVG_LINE_JOIN_ROUND); + drawLineJoin(ctx); + + vkvg_destroy(ctx); + + compareWithRefImage(); +} +void drawLineCap(VkvgContext ctx) { + vkvg_set_source_rgba(ctx,0,0,0,1); + vkvg_set_line_width(ctx, 20); + vkvg_move_to(ctx, 50, 50); + vkvg_line_to(ctx, 200, 50); + vkvg_stroke(ctx); + vkvg_set_line_cap(ctx, VKVG_LINE_CAP_BUTT); + vkvg_set_source_rgba(ctx,1,0,0,1); + vkvg_set_line_width(ctx, 2); + vkvg_move_to(ctx, 50, 50); + vkvg_line_to(ctx, 200, 50); + vkvg_stroke(ctx); + +} +TEST_F(BasicDrawTest, CtxStrokeCaps) { + VkvgContext ctx = vkvg_create(surf); + + vkvg_set_line_cap(ctx, VKVG_LINE_CAP_BUTT); + drawLineCap(ctx); + + vkvg_translate(ctx, 0, 50); + vkvg_set_line_cap(ctx, VKVG_LINE_CAP_ROUND); + drawLineCap(ctx); + + vkvg_translate(ctx, 0, 50 ); + vkvg_set_line_cap(ctx, VKVG_LINE_CAP_SQUARE); + drawLineCap(ctx); + + vkvg_destroy(ctx); + + compareWithRefImage(); +} |