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

Side by Side Diff: Source/platform/transforms/AffineTransform.cpp

Issue 536573002: Modifications to DisplayList for better Slimming Paint (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Testing FIXME Created 6 years, 3 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2005, 2006 Apple Computer, Inc. All rights reserved. 2 * Copyright (C) 2005, 2006 Apple Computer, Inc. All rights reserved.
3 * 2010 Dirk Schulze <krit@webkit.org> 3 * 2010 Dirk Schulze <krit@webkit.org>
4 * Copyright (C) 2013 Google Inc. All rights reserved. 4 * Copyright (C) 2013 Google Inc. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 AffineTransform& AffineTransform::skewX(double angle) 216 AffineTransform& AffineTransform::skewX(double angle)
217 { 217 {
218 return shear(tan(deg2rad(angle)), 0); 218 return shear(tan(deg2rad(angle)), 0);
219 } 219 }
220 220
221 AffineTransform& AffineTransform::skewY(double angle) 221 AffineTransform& AffineTransform::skewY(double angle)
222 { 222 {
223 return shear(0, tan(deg2rad(angle))); 223 return shear(0, tan(deg2rad(angle)));
224 } 224 }
225 225
226 AffineTransform makeMapBetweenRects(const FloatRect& source, const FloatRect& de st)
227 {
228 AffineTransform transform;
229 transform.translate(dest.x() - source.x(), dest.y() - source.y());
230 transform.scale(dest.width() / source.width(), dest.height() / source.height ());
231 return transform;
232 }
233
234 void AffineTransform::map(double x, double y, double& x2, double& y2) const 226 void AffineTransform::map(double x, double y, double& x2, double& y2) const
235 { 227 {
236 x2 = (m_transform[0] * x + m_transform[2] * y + m_transform[4]); 228 x2 = (m_transform[0] * x + m_transform[2] * y + m_transform[4]);
237 y2 = (m_transform[1] * x + m_transform[3] * y + m_transform[5]); 229 y2 = (m_transform[1] * x + m_transform[3] * y + m_transform[5]);
238 } 230 }
239 231
240 IntPoint AffineTransform::mapPoint(const IntPoint& point) const 232 IntPoint AffineTransform::mapPoint(const IntPoint& point) const
241 { 233 {
242 double x2, y2; 234 double x2, y2;
243 map(point.x(), point.y(), x2, y2); 235 map(point.x(), point.y(), x2, y2);
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
363 this->setB(decomp.remainderB); 355 this->setB(decomp.remainderB);
364 this->setC(decomp.remainderC); 356 this->setC(decomp.remainderC);
365 this->setD(decomp.remainderD); 357 this->setD(decomp.remainderD);
366 this->setE(decomp.translateX); 358 this->setE(decomp.translateX);
367 this->setF(decomp.translateY); 359 this->setF(decomp.translateY);
368 this->rotateRadians(decomp.angle); 360 this->rotateRadians(decomp.angle);
369 this->scale(decomp.scaleX, decomp.scaleY); 361 this->scale(decomp.scaleX, decomp.scaleY);
370 } 362 }
371 363
372 } 364 }
OLDNEW
« Source/platform/graphics/DisplayList.h ('K') | « Source/platform/transforms/AffineTransform.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698