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) {
auto debugster = [](const char* prefix, const SkPath& path) -> void {
SkPoint line[2];
if (path.isLine(line)) {
SkDebugf("%s is line (%1.8g,%1.8g) (%1.8g,%1.8g)\n", prefix,
line[0].fX, line[0].fY, line[1].fX, line[1].fY);
} else {
SkDebugf("%s is not line\n", prefix);
}
};
SkPath path;
debugster("empty", path);
path.lineTo(0, 0);
debugster("zero line", path);
path.rewind();
path.moveTo(10, 10);
path.lineTo(20, 20);
debugster("line", path);
path.moveTo(20, 20);
debugster("second move", path);
}
Compilation Warnings/Errors
Runtime Errors
Output
empty is not line zero line is line (0,0) (0,0) line is line (10,10) (20,20) second move is not line