Options
These globals are now defined:
double duration; // The requested duration of the animation. double frame; // A value in [0, 1] of where we are in the animation.
This global is now defined:
GrBackendRenderTarget backEndRenderTarget;
GrBackendTexture backEndTextureRenderTarget;
Optional source image
These globals are now defined:
SkBitmap source; sk_sp<SkImage> image; GrBackendTexture backEndTexture; // GPU Only.
Note:
Adding comments with SK_FOLD_START and SK_FOLD_END creates foldable code
blocks.
These blocks will be folded by default and are useful for highlighting specific lines of code.
You can also use the keyboard shortcuts Ctrl+S and Ctrl+E in the code editor to set them.
These blocks will be folded by default and are useful for highlighting specific lines of code.
You can also use the keyboard shortcuts Ctrl+S and Ctrl+E in the code editor to set them.
xxxxxxxxxx
21
void draw(SkCanvas* canvas) {
struct {
SkPathFillType fill;
const char* name;
} fills[] = {
nameValue(kWinding),
nameValue(kEvenOdd),
nameValue(kInverseWinding),
nameValue(kInverseEvenOdd),
};
for (unsigned i = 0; i < std::size(fills); ++i) {
if (fills[i].fill != (SkPathFillType) i) {
SkDebugf("fills array order does not match FillType enum order");
break;
}
SkDebugf("ConvertToNonInverseFillType(%s) == %s\n", fills[i].name,
fills[(int) SkPathFillType_ConvertToNonInverse(fills[i].fill)].name);
}
}