OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_GFX_POINT3_F_H_ | 5 #ifndef UI_GFX_POINT3_F_H_ |
6 #define UI_GFX_POINT3_F_H_ | 6 #define UI_GFX_POINT3_F_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "ui/gfx/gfx_export.h" | 10 #include "ui/gfx/gfx_export.h" |
11 #include "ui/gfx/point_f.h" | 11 #include "ui/gfx/point_f.h" |
12 #include "ui/gfx/vector3d_f.h" | 12 #include "ui/gfx/vector3d_f.h" |
13 | 13 |
14 namespace gfx { | 14 namespace gfx { |
15 | 15 |
16 // A point has an x, y and z coordinate. | 16 // A point has an x, y and z coordinate. |
17 class UI_EXPORT Point3F { | 17 class GFX_EXPORT Point3F { |
18 public: | 18 public: |
19 Point3F() : x_(0), y_(0), z_(0) {} | 19 Point3F() : x_(0), y_(0), z_(0) {} |
20 | 20 |
21 Point3F(float x, float y, float z) : x_(x), y_(y), z_(z) {} | 21 Point3F(float x, float y, float z) : x_(x), y_(y), z_(z) {} |
22 | 22 |
23 explicit Point3F(const PointF& point) : x_(point.x()), y_(point.y()), z_(0) {} | 23 explicit Point3F(const PointF& point) : x_(point.x()), y_(point.y()), z_(0) {} |
24 | 24 |
25 ~Point3F() {} | 25 ~Point3F() {} |
26 | 26 |
27 void Scale(float scale) { | 27 void Scale(float scale) { |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 | 83 |
84 inline bool operator==(const Point3F& lhs, const Point3F& rhs) { | 84 inline bool operator==(const Point3F& lhs, const Point3F& rhs) { |
85 return lhs.x() == rhs.x() && lhs.y() == rhs.y() && lhs.z() == rhs.z(); | 85 return lhs.x() == rhs.x() && lhs.y() == rhs.y() && lhs.z() == rhs.z(); |
86 } | 86 } |
87 | 87 |
88 inline bool operator!=(const Point3F& lhs, const Point3F& rhs) { | 88 inline bool operator!=(const Point3F& lhs, const Point3F& rhs) { |
89 return !(lhs == rhs); | 89 return !(lhs == rhs); |
90 } | 90 } |
91 | 91 |
92 // Add a vector to a point, producing a new point offset by the vector. | 92 // Add a vector to a point, producing a new point offset by the vector. |
93 UI_EXPORT Point3F operator+(const Point3F& lhs, const Vector3dF& rhs); | 93 GFX_EXPORT Point3F operator+(const Point3F& lhs, const Vector3dF& rhs); |
94 | 94 |
95 // Subtract a vector from a point, producing a new point offset by the vector's | 95 // Subtract a vector from a point, producing a new point offset by the vector's |
96 // inverse. | 96 // inverse. |
97 UI_EXPORT Point3F operator-(const Point3F& lhs, const Vector3dF& rhs); | 97 GFX_EXPORT Point3F operator-(const Point3F& lhs, const Vector3dF& rhs); |
98 | 98 |
99 // Subtract one point from another, producing a vector that represents the | 99 // Subtract one point from another, producing a vector that represents the |
100 // distances between the two points along each axis. | 100 // distances between the two points along each axis. |
101 UI_EXPORT Vector3dF operator-(const Point3F& lhs, const Point3F& rhs); | 101 GFX_EXPORT Vector3dF operator-(const Point3F& lhs, const Point3F& rhs); |
102 | 102 |
103 inline Point3F PointAtOffsetFromOrigin(const Vector3dF& offset) { | 103 inline Point3F PointAtOffsetFromOrigin(const Vector3dF& offset) { |
104 return Point3F(offset.x(), offset.y(), offset.z()); | 104 return Point3F(offset.x(), offset.y(), offset.z()); |
105 } | 105 } |
106 | 106 |
107 inline Point3F ScalePoint(const Point3F& p, | 107 inline Point3F ScalePoint(const Point3F& p, |
108 float x_scale, | 108 float x_scale, |
109 float y_scale, | 109 float y_scale, |
110 float z_scale) { | 110 float z_scale) { |
111 return Point3F(p.x() * x_scale, p.y() * y_scale, p.z() * z_scale); | 111 return Point3F(p.x() * x_scale, p.y() * y_scale, p.z() * z_scale); |
112 } | 112 } |
113 | 113 |
114 inline Point3F ScalePoint(const Point3F& p, float scale) { | 114 inline Point3F ScalePoint(const Point3F& p, float scale) { |
115 return ScalePoint(p, scale, scale, scale); | 115 return ScalePoint(p, scale, scale, scale); |
116 } | 116 } |
117 | 117 |
118 } // namespace gfx | 118 } // namespace gfx |
119 | 119 |
120 #endif // UI_GFX_POINT3_F_H_ | 120 #endif // UI_GFX_POINT3_F_H_ |
OLD | NEW |