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

Side by Side Diff: third_party/WebKit/Source/platform/geometry/FloatPoint.cpp

Issue 2191233002: Add platform/geometry pretty printers for logging and testing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Adjust tests to work around uninteresting cross-platform differences Created 4 years, 4 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) 2004, 2006, 2007 Apple Inc. All rights reserved. 2 * Copyright (C) 2004, 2006, 2007 Apple Inc. All rights reserved.
3 * Copyright (C) 2005 Nokia. All rights reserved. 3 * Copyright (C) 2005 Nokia. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 13 matching lines...) Expand all
24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 */ 25 */
26 26
27 #include "platform/geometry/FloatPoint.h" 27 #include "platform/geometry/FloatPoint.h"
28 28
29 #include "SkPoint.h" 29 #include "SkPoint.h"
30 #include "platform/FloatConversion.h" 30 #include "platform/FloatConversion.h"
31 #include "platform/geometry/DoublePoint.h" 31 #include "platform/geometry/DoublePoint.h"
32 #include "platform/geometry/LayoutPoint.h" 32 #include "platform/geometry/LayoutPoint.h"
33 #include "platform/geometry/LayoutSize.h" 33 #include "platform/geometry/LayoutSize.h"
34 #include "wtf/text/WTFString.h"
35 #include <limits> 34 #include <limits>
36 #include <math.h> 35 #include <math.h>
36 #include <ostream> // NOLINT
37 37
38 namespace blink { 38 namespace blink {
39 39
40 // Skia has problems when passed infinite, etc floats, filter them to 0. 40 // Skia has problems when passed infinite, etc floats, filter them to 0.
41 static inline SkScalar WebCoreFloatToSkScalar(float f) 41 static inline SkScalar WebCoreFloatToSkScalar(float f)
42 { 42 {
43 return SkFloatToScalar(std::isfinite(f) ? f : 0); 43 return SkFloatToScalar(std::isfinite(f) ? f : 0);
44 } 44 }
45 45
46 FloatPoint::FloatPoint(const IntPoint& p) : m_x(p.x()), m_y(p.y()) 46 FloatPoint::FloatPoint(const IntPoint& p) : m_x(p.x()), m_y(p.y())
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 if (!denom) 107 if (!denom)
108 return false; 108 return false;
109 109
110 float param = ((d1.x() - p1.x()) * dyLength - (d1.y() - p1.y()) * dxLength) / denom; 110 float param = ((d1.x() - p1.x()) * dyLength - (d1.y() - p1.y()) * dxLength) / denom;
111 111
112 intersection.setX(p1.x() + param * pxLength); 112 intersection.setX(p1.x() + param * pxLength);
113 intersection.setY(p1.y() + param * pyLength); 113 intersection.setY(p1.y() + param * pyLength);
114 return true; 114 return true;
115 } 115 }
116 116
117 #ifndef NDEBUG 117 std::ostream& operator<<(std::ostream& os, const FloatPoint& point)
118 String FloatPoint::toString() const
119 { 118 {
120 return String::format("%f,%f", x(), y()); 119 os << "FloatPoint("
120 << "x=" << point.x() << ", "
121 << "y=" << point.y() << ")";
122 return os;
121 } 123 }
122 #endif
123 124
124 } // namespace blink 125 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698