Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
docs
examples
Matrix_preRotate.cpp
Go to the documentation of this file.
1
// Copyright 2019 Google LLC.
2
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3
#include "
tools/fiddle/examples.h
"
4
// HASH=a70bb18d67c06a20ab514e7a47924e5a
5
REG_FIDDLE
(Matrix_preRotate, 256, 256,
false
, 3) {
6
void
draw
(
SkCanvas
* canvas) {
7
SkMatrix
matrix;
8
SkPoint
bitmapBounds[4], perspect[4] = {{50, 10}, {180, 40}, {236, 176}, {10, 206}};
9
SkRect::Make
(
image
->
bounds
()).
toQuad
(bitmapBounds);
10
matrix.setPolyToPoly(bitmapBounds, perspect, 4);
11
matrix.preRotate(45,
image
->
width
() / 2,
image
->
height
() / 2);
12
canvas->
concat
(matrix);
13
canvas->
drawImage
(
image
, 0, 0);
14
}
15
}
// END FIDDLE
draw
static void draw(SkCanvas *canvas, SkRect &target, int x, int y)
Definition
aaclip.cpp:27
SkCanvas
Definition
SkCanvas.h:106
SkCanvas::concat
void concat(const SkMatrix &matrix)
Definition
SkCanvas.cpp:1642
SkCanvas::drawImage
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
Definition
SkCanvas.h:1528
SkImage::width
int width() const
Definition
SkImage.h:285
SkImage::height
int height() const
Definition
SkImage.h:291
SkImage::bounds
SkIRect bounds() const
Definition
SkImage.h:303
SkMatrix
Definition
SkMatrix.h:54
image
sk_sp< SkImage > image
Definition
examples.cpp:29
examples.h
REG_FIDDLE
#define REG_FIDDLE(NAME, W, H, TEXT, I)
Definition
examples.h:60
SkPoint
Definition
SkPoint_impl.h:163
SkRect::Make
static SkRect Make(const SkISize &size)
Definition
SkRect.h:669
SkRect::toQuad
void toQuad(SkPoint quad[4]) const
Definition
SkRect.cpp:50
Generated on Fri Apr 26 2024 06:15:43 for Flutter Engine by
1.9.8