aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/viewer/Viewer.h
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2018-05-02 15:40:20 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-05-02 20:09:38 +0000
commit805a727d262f3a85e619a1cb00735a05f9f63cb4 (patch)
tree0cd210b23f16c372faf474d386041bdf95265453 /tools/viewer/Viewer.h
parent97b48a9c7cbf2e8a5f1faf081084ddf706b88ac1 (diff)
Add toggle for 'real' vs. 'fake' perspective in Viewer
Real perspective draws content with perspective applied. Fake perspective rasterizes in ortho, then stretches the image by the perspective matrix. Change-Id: I738cd379f9a58b965469ef8a57fb2dfd597fda10 Reviewed-on: https://skia-review.googlesource.com/125442 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com> Commit-Queue: Ben Wagner <bungeman@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
Diffstat (limited to 'tools/viewer/Viewer.h')
-rw-r--r--tools/viewer/Viewer.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/viewer/Viewer.h b/tools/viewer/Viewer.h
index be35a88525..d843946ab1 100644
--- a/tools/viewer/Viewer.h
+++ b/tools/viewer/Viewer.h
@@ -102,6 +102,7 @@ private:
void changeZoomLevel(float delta);
void preTouchMatrixChanged();
SkMatrix computePreTouchMatrix();
+ SkMatrix computePerspectiveMatrix();
SkMatrix computeMatrix();
SkPoint mapEvent(float x, float y);
@@ -158,7 +159,12 @@ private:
// identity unless the window initially scales the content to fit the screen.
SkMatrix fDefaultMatrix;
- bool fPerspective;
+ enum PerspectiveMode {
+ kPerspective_Off,
+ kPerspective_Real,
+ kPerspective_Fake,
+ };
+ PerspectiveMode fPerspectiveMode;
SkPoint fPerspectivePoints[4];
SkTArray<std::function<void(void)>> fDeferredActions;