Skip to content

Commit b1b17f6

Browse files
committed
#17 add test for high curvature bezier strokes
1 parent 4210917 commit b1b17f6

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

Tests/vgerTests/vgerTests.mm

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -939,4 +939,36 @@ - (void) testPathRectangle {
939939
vgerDelete(vger);
940940
}
941941

942+
- (void) testHighCurvatureBezierStroke {
943+
944+
auto vger = vgerNew(0, MTLPixelFormatBGRA8Unorm);
945+
946+
vgerBegin(vger, 512, 512, 1.0);
947+
948+
auto red = vgerColorPaint(vger, float4{1,0,0,1});
949+
auto green = vgerColorPaint(vger, float4{0,1,0,1});
950+
auto blue = vgerColorPaint(vger, float4{0,0,1,1});
951+
auto cyan = vgerColorPaint(vger, float4{0,1,1,1});
952+
auto magenta = vgerColorPaint(vger, float4{1,0,1,1});
953+
auto yellow = vgerColorPaint(vger, float4{1,1,0,1});
954+
auto white = vgerColorPaint(vger, float4{1,1,1,1});
955+
956+
vgerStrokeBezier(vger, {{100, 200}, {120, 100}, {140, 200}}, 10, red);
957+
958+
vgerStrokeBezier(vger, {{200, 200}, {201, 150}, {202, 200}}, 8, green);
959+
960+
vgerStrokeBezier(vger, {{300, 200}, {305, 120}, {310, 200}}, 12, blue);
961+
962+
vgerStrokeBezier(vger, {{100, 350}, {150, 250}, {200, 350}}, 6, cyan);
963+
964+
vgerStrokeBezier(vger, {{300, 350}, {350, 280}, {320, 380}}, 8, magenta);
965+
966+
vgerFillCircle(vger, float2{450, 200}, 5, yellow); // Small filled circles for reference
967+
vgerFillCircle(vger, float2{450, 350}, 4, white);
968+
969+
[self render:vger name:@"high_curvature_bezier_strokes.png"];
970+
971+
vgerDelete(vger);
972+
}
973+
942974
@end

0 commit comments

Comments
 (0)