Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Unified Diff: ui/gfx/compositor/compositor_win.cc

Issue 7044062: Use SkMatrix44 for the underlying implementation of ui::Transform (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Added 2D unittests Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/gfx/compositor/compositor_win.cc
diff --git a/ui/gfx/compositor/compositor_win.cc b/ui/gfx/compositor/compositor_win.cc
index ddb978761cb7ed8b271bc7c87cc4c1f81e03a11a..2b8aae142262a5f572c3e755f32ca16ba4e73054 100644
--- a/ui/gfx/compositor/compositor_win.cc
+++ b/ui/gfx/compositor/compositor_win.cc
@@ -350,21 +350,10 @@ void CompositorWin::Init() {
void CompositorWin::UpdatePerspective(const ui::Transform& transform,
const gfx::Size& view_size) {
- // Apply transform from view.
- const SkMatrix& sk_matrix(transform.matrix());
// Use -1 * kMTransY for y-translation as origin for views is upper left.
- D3DXMATRIX transform_matrix(
- // row 1
- sk_matrix[SkMatrix::kMScaleX], sk_matrix[SkMatrix::kMSkewX], 0.0f,
- sk_matrix[SkMatrix::kMPersp0],
- // row 2
- sk_matrix[SkMatrix::kMSkewY], sk_matrix[SkMatrix::kMScaleY], 0.0f,
- sk_matrix[SkMatrix::kMPersp1],
- // row 3
- 0.0f, 0.0f, 1.0f, sk_matrix[SkMatrix::kMPersp2],
- // row 4.
- sk_matrix[SkMatrix::kMTransX], -sk_matrix[SkMatrix::kMTransY], 0.0f,
- 1.0f);
+ float transform_data_buffer[16];
+ transform.matrix().asRowMajorf((transform_data_buffer);
+ D3DXMATRIX transform_matrix(&transform_data_buffer[0]);
// Scale so x and y are from 0-2.
D3DXMATRIX scale_matrix;
@@ -391,6 +380,7 @@ void CompositorWin::UpdatePerspective(const ui::Transform& transform,
D3DXMATRIX wvp = transform_matrix * scale_matrix * translate_matrix * view *
projection_matrix;
+
fx_->GetVariableByName("gWVP")->AsMatrix()->SetMatrix(wvp);
}
« no previous file with comments | « ui/gfx/compositor/compositor_gl.cc ('k') | ui/gfx/point3.h » ('j') | ui/gfx/point3.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698