summaryrefslogtreecommitdiffstatsci
path: root/gunit_tests/basicDraw.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gunit_tests/basicDraw.cpp')
-rw-r--r--gunit_tests/basicDraw.cpp58
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();
+}