35 clip.copyToMask(&mask);
67 : fGeomType(geomType) {
126 canvas->
clipPath(fRectPath, op,
true);
147 str.
printf(
"simpleaaclip_%s",
171 for (
size_t op = 0; op < std::size(gOps); op++) {
175 this->
drawRgnOped(canvas, gOps[op].fOp, gOps[op].fColor);
199 using INHERITED =
GM;
constexpr SkColor SK_ColorRED
constexpr SkColor SK_ColorBLACK
std::unique_ptr< uint8_t, SkFunctionObject< SkMaskBuilder::FreeImage > > SkAutoMaskFreeImage
static SkPath clip(const SkPath &path, const SkHalfPlane &plane)
bool setPath(const SkPath &, const SkIRect &bounds, bool doAA=true)
bool installMaskPixels(SkMaskBuilder &mask)
sk_sp< SkImage > asImage() const
SkColorType colorType() const
void drawRect(const SkRect &rect, const SkPaint &paint)
void clipRect(const SkRect &rect, SkClipOp op, bool doAntiAlias)
void translate(SkScalar dx, SkScalar dy)
void clipPath(const SkPath &path, SkClipOp op, bool doAntiAlias)
void drawString(const char str[], SkScalar x, SkScalar y, const SkFont &font, const SkPaint &paint)
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
@ kStroke_Style
set to stroke geometry
SkPath & addRoundRect(const SkRect &rect, SkScalar rx, SkScalar ry, SkPathDirection dir=SkPathDirection::kCW)
const SkRect & getBounds() const
void printf(const char format[],...) SK_PRINTF_LIKE(2
void drawRgnOped(SkCanvas *canvas, SkClipOp op, SkColor color)
void drawOrig(SkCanvas *canvas)
SimpleClipGM(SkGeomTypes geomType)
void drawPathsOped(SkCanvas *canvas, SkClipOp op, SkColor color)
void onDraw(SkCanvas *canvas) override
SkISize getISize() override
void onOnceBeforeDraw() override
SkString getName() const override
void buildRgn(SkAAClip *clip, SkClipOp op)
static void paint_rgn(SkCanvas *canvas, const SkAAClip &clip, const SkPaint &paint)
int32_t fTop
smaller y-axis bounds
int32_t fLeft
smaller x-axis bounds
static constexpr SkISize Make(int32_t w, int32_t h)
void inset(float dx, float dy)
void roundOut(SkIRect *dst) const
void offset(float dx, float dy)
void setLTRB(float left, float top, float right, float bottom)
static constexpr SkRect MakeLTRB(float l, float t, float r, float b)