43 SkPoint p0[] = {{0, 0}, {60, 0}, {90, 40}};
44 SkPoint p1[] = {{0, 0}, {0, 40}, {60, 40}, {40, 0}};
45 SkPoint p2[] = {{0, 0}, {40, 40}, {80, 40}, {40, 0}};
46 SkPoint p3[] = {{10, 0}, {50, 0}, {60, 10}, {60, 30}, {50, 40},
47 {10, 40}, {0, 30}, {0, 10}};
49 SkPoint p5[] = {{0, 0}, {20, 20}, {0, 40}, {60, 20}};
50 SkPoint p6[] = {{0, 40}, {0, 30}, {15, 30}, {15, 20}, {30, 20},
51 {30, 10}, {45, 10}, {45, 0}, {60, 0}, {60, 40}};
52 SkPoint p7[] = {{0, 20}, {20, 20}, {30, 0}, {40, 20}, {60, 20},
53 {45, 30}, {55, 50}, {30, 40}, {5, 50}, {15, 30}};
55 for (
size_t i = 0; i < std::size(p4); ++i) {
64 { p0, std::size(p0) },
65 { p1, std::size(p1) },
66 { p2, std::size(p2) },
67 { p3, std::size(p3) },
68 { p4, std::size(p4) },
69 { p5, std::size(p5) },
70 { p6, std::size(p6) },
74 SkASSERT(std::size(pgs) == kNumPolygons);
75 for (
size_t pgIndex = 0; pgIndex < std::size(pgs); ++pgIndex) {
77 b.
moveTo(pgs[pgIndex].fPoints[0].fX,
78 pgs[pgIndex].fPoints[0].fY);
79 for (
size_t ptIndex = 1; ptIndex < pgs[pgIndex].fPointNum; ++ptIndex) {
80 b.
lineTo(pgs[pgIndex].fPoints[ptIndex].fX,
81 pgs[pgIndex].fPoints[ptIndex].fY);
108 constexpr int kStrokeWidths[] = {0, 10, 40};
109 SkASSERT(kNumStrokeWidths == std::size(kStrokeWidths));
114 SkASSERT(kNumJoins == std::size(kJoins));
118 paint.setAntiAlias(
true);
123 for (
int join = 0; join < kNumJoins; ++join) {
125 for (
int i = 0; i < fPolygons.
size(); ++i) {
130 paint.setStrokeJoin(kJoins[join]);
144 SkASSERT(kNumExtraStyles == std::size(kStyles));
148 for (
int style = 0; style < kNumExtraStyles; ++style) {
149 paint.setStyle(kStyles[style]);
150 for (
int i = 0; i < fPolygons.
size(); ++i) {