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
16
void draw(SkCanvas* canvas) {
SkMatrix matrix;
matrix.setRotate(90 * SK_Scalar1);
matrix.postScale(1.f / 4, 1.f / 2);
matrix.dump();
SkSize scale = {SK_ScalarNaN, SK_ScalarNaN};
SkMatrix remaining;
remaining.reset();
bool success = matrix.decomposeScale(&scale, &remaining);
SkDebugf("success: %s ", success ? "true" : "false");
SkDebugf("scale: %g, %g\n", scale.width(), scale.height());
remaining.dump();
SkMatrix scaleMatrix = SkMatrix::Scale(scale.width(), scale.height());
SkMatrix combined = SkMatrix::Concat(scaleMatrix, remaining);
combined.dump();
}