Flutter Engine
The Flutter Engine
third_party
skia
docs
examples
Matrix_postSkew.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
REG_FIDDLE
(Matrix_postSkew, 256, 256,
false
, 3) {
5
void
draw
(
SkCanvas
* canvas) {
6
SkMatrix
matrix
;
7
SkPoint
bitmapBounds[4], perspect[4] = {{50, 10}, {180, 40}, {236, 176}, {10, 206}};
8
SkRect::Make
(
image
->
bounds
()).
toQuad
(bitmapBounds);
9
matrix
.setPolyToPoly(bitmapBounds, perspect, 4);
10
matrix
.postSkew(.5f, 0,
image
->
width
() / 2,
image
->
height
() / 2);
11
canvas->
concat
(
matrix
);
12
canvas->
drawImage
(
image
, 0, 0);
13
}
14
}
// END FIDDLE
REG_FIDDLE
REG_FIDDLE(Matrix_postSkew, 256, 256, false, 3)
Definition:
Matrix_postSkew.cpp:4
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:1318
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
examples.h
SkRecords::matrix
unsigned useCenter Optional< SkMatrix > matrix
Definition:
SkRecords.h:258
SkRecords::image
sk_sp< const SkImage > image
Definition:
SkRecords.h:269
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 Sun Jun 23 2024 21:55:55 for Flutter Engine by
1.9.4