6 {
13 constexpr SkRect gRects[] = {
22 {0, 0, 0, 0},
23 {0, 0,
W, FLT_EPSILON},
24 {0, 0, FLT_EPSILON,
H},
25 {0, 0, FLT_EPSILON, FLT_EPSILON},
26 };
28 for (int doFill = 0; doFill <= 1; ++doFill) {
30 for (size_t i = 0; i < std::size(gJoins); ++i) {
32 for (size_t j = 0; j < std::size(gRects); ++j) {
38
42
44 paint.setStyle(style);
45 paint.setStrokeJoin(join);
47
48 paint.setAntiAlias(
true);
49 paint.setColor(0xFF8C8A8C);
51
53 paint.setStrokeWidth(0);
56
57 paint.setStrokeWidth(3);
64 }
65 }
66 }
67}
68}
static const int points[]
constexpr SkColor SK_ColorRED
static void draw(SkCanvas *canvas, SkRect &target, int x, int y)
void drawRect(const SkRect &rect, const SkPaint &paint)
void drawPoints(PointMode mode, size_t count, const SkPoint pts[], const SkPaint &paint)
void translate(SkScalar dx, SkScalar dy)
void drawPath(const SkPath &path, const SkPaint &paint)
@ kPoints_PointMode
draw each point separately
@ kStroke_Style
set to stroke geometry
@ kStrokeAndFill_Style
sets to stroke and fill geometry
@ kMiter_Join
extends to miter limit
@ kBevel_Join
connects outside edges
int getPoints(SkPoint points[], int max) const
sk_sp< SkBlender > blender SkRect rect
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path
SK_API bool FillPathWithPaint(const SkPath &src, const SkPaint &paint, SkPath *dst, const SkRect *cullRect, SkScalar resScale=1)
SINT Vec< 2 *N, T > join(const Vec< N, T > &lo, const Vec< N, T > &hi)
constexpr SkScalar kStrokeWidth