Flutter Engine
The Flutter Engine
inverseclip.cpp
Go to the documentation of this file.
1/*
2 * Copyright 2019 Google LLC.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#include "gm/gm.h"
11
12// Repro case for http://skbug.com/9453
13DEF_SIMPLE_GM(inverseclip, canvas, 400, 400) {
16 clip.moveTo(195.448f, 31);
17 clip.cubicTo(97.9925f, 31, 18.99f, 105.23f, 18.99f, 196.797f);
18 clip.cubicTo(18.99f, 288.365f, 97.9925f, 362.595f, 195.448f, 362.595f);
19 clip.cubicTo(292.905f, 362.595f, 371.905f, 288.365f, 371.905f, 196.797f);
20 clip.cubicTo(371.905f, 105.23f, 292.905f, 31, 195.448f, 31);
21 clip.close();
22 canvas->clipPath(clip.detach(), true);
23
25 paint.setColor(SK_ColorBLUE);
26 canvas->drawRect(SkRect::MakeWH(400, 400), paint);
27}
constexpr SkColor SK_ColorBLUE
Definition: SkColor.h:135
static SkPath clip(const SkPath &path, const SkHalfPlane &plane)
Definition: SkPath.cpp:3892
SkPath & moveTo(SkScalar x, SkScalar y)
Definition: SkPath.cpp:688
void setFillType(SkPathFillType ft)
Definition: SkPath.h:235
SkPath detach()
Definition: SkPath.h:147
SkPath & cubicTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2, SkScalar x3, SkScalar y3)
Definition: SkPath.cpp:799
SkPath & close()
Definition: SkPath.cpp:823
const Paint & paint
Definition: color_source.cc:38
DEF_SIMPLE_GM(inverseclip, canvas, 400, 400)
Definition: inverseclip.cpp:13
static constexpr SkRect MakeWH(float w, float h)
Definition: SkRect.h:609