| Flutter Impeller |

Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
impeller::TPoint< T > Struct Template Reference

`#include <point.h>`

## Public Types
using | Type = T

## Public Member Functions
constexpr | TPoint ()=default
template<class U >
constexpr | TPoint (const TPoint< U > &other)
template<class U >
constexpr | TPoint (const TSize< U > &other)
constexpr | TPoint (Type x, Type y)
constexpr bool | operator== (const TPoint &p) const
constexpr bool | operator!= (const TPoint &p) const
template<class U >
TPoint | operator+= (const TPoint< U > &p)
template<class U >
TPoint | operator+= (const TSize< U > &s)
template<class U >
TPoint | operator-= (const TPoint< U > &p)
template<class U >
TPoint | operator-= (const TSize< U > &s)
template<class U >
TPoint | operator*= (const TPoint< U > &p)
template<class U >
TPoint | operator*= (const TSize< U > &s)
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>
TPoint | operator*= (U scale)
template<class U >
TPoint | operator/= (const TPoint< U > &p)
template<class U >
TPoint | operator/= (const TSize< U > &s)
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>
TPoint | operator/= (U scale)
constexpr TPoint | operator- () const
constexpr TPoint | operator+ (const TPoint &p) const
template<class U >
constexpr TPoint | operator+ (const TSize< U > &s) const
constexpr TPoint | operator- (const TPoint &p) const
template<class U >
constexpr TPoint | operator- (const TSize< U > &s) const
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>
constexpr TPoint | operator* (U scale) const
constexpr TPoint | operator* (const TPoint &p) const
template<class U >
constexpr TPoint | operator* (const TSize< U > &s) const
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>
constexpr TPoint | operator/ (U d) const
constexpr TPoint | operator/ (const TPoint &p) const
template<class U >
constexpr TPoint | operator/ (const TSize< U > &s) const
constexpr Type | GetDistanceSquared (const TPoint &p) const
constexpr TPoint | Min (const TPoint &p) const
constexpr TPoint | Max (const TPoint &p) const
constexpr TPoint | Floor () const
constexpr TPoint | Ceil () const
constexpr TPoint | Round () const
constexpr Type | GetDistance (const TPoint &p) const
constexpr Type | GetLengthSquared () const
constexpr Type | GetLength () const
constexpr TPoint | Normalize () const
constexpr TPoint | Abs () const
constexpr Type | Cross (const TPoint &p) const
constexpr Type | Dot (const TPoint &p) const
constexpr TPoint | Reflect (const TPoint &axis) const
constexpr Radians | AngleTo (const TPoint &p) const
constexpr TPoint | Lerp (const TPoint &p, Scalar t) const
constexpr bool | IsZero () const

## Static Public Member Functions
static constexpr TPoint< Type > | MakeXY (Type x, Type y)
template<class U >
static constexpr TPoint | Round (const TPoint< U > &other)

## Public Attributes
Type | x = {}
Type | y = {}

## Detailed Description

### template<class T>
struct impeller::TPoint< T >

Definition at line 20 of file point.h.

## Member Typedef Documentation

## ◆ Type

template<class T >

using impeller::TPoint< T >::Type = T

Definition at line 21 of file point.h.

## Constructor & Destructor Documentation

## ◆ TPoint() [1/4]

template<class T >

constexpr impeller::TPoint< T >::TPoint | ( |  | ) |
| constexpr default

## ◆ TPoint() [2/4]

template<class T >
template<class U >

constexpr impeller::TPoint< T >::TPoint | ( | const TPoint< U > & | other | ) |
| inline explicit constexpr

Definition at line 29 of file point.h.

30 : TPoint(static_cast<Type>(other.x), static_cast<Type>(other.y)) {}

## ◆ TPoint() [3/4]

template<class T >
template<class U >

constexpr impeller::TPoint< T >::TPoint | ( | const TSize< U > & | other | ) |
| inline explicit constexpr

Definition at line 33 of file point.h.

34 : TPoint(static_cast<Type>(other.width),
35 static_cast<Type>(other.height)) {}

## ◆ TPoint() [4/4]

template<class T >

constexpr impeller::TPoint< T >::TPoint | ( | Type | x,
|  | Type | y
| ) |  |
| inline constexpr

Definition at line 37 of file point.h.

37 : x(x), y(y) {}

## Member Function Documentation

## ◆ Abs()

template<class T >

constexpr TPoint impeller::TPoint< T >::Abs | ( |  | ) | const
| inline constexpr

Definition at line 209 of file point.h.

209 { return {std::fabs(x), std::fabs(y)}; }

Referenced by impeller::testing::TEST().

## ◆ AngleTo()

template<class T >

constexpr Radians impeller::TPoint< T >::AngleTo | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 219 of file point.h.

219 {
220 return Radians{std::atan2(this->Cross(p), this->Dot(p))};
221 }

Referenced by impeller::testing::TEST().

## ◆ Ceil()

template<class T >

constexpr TPoint impeller::TPoint< T >::Ceil | ( |  | ) | const
| inline constexpr

Definition at line 189 of file point.h.

189 { return {std::ceil(x), std::ceil(y)}; }

Referenced by impeller::testing::TEST().

## ◆ Cross()

template<class T >

constexpr Type impeller::TPoint< T >::Cross | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 211 of file point.h.

211 { return (x * p.y) - (y * p.x); }

Referenced by impeller::TPoint< Type >::AngleTo(), and impeller::testing::TEST().

## ◆ Dot()

template<class T >

constexpr Type impeller::TPoint< T >::Dot | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 213 of file point.h.

213 { return (x * p.x) + (y * p.y); }

Referenced by impeller::TPoint< Type >::AngleTo(), impeller::QuadraticPathComponent::FillPointsForPolyline(), impeller::TPoint< Type >::Reflect(), impeller::testing::TEST(), and impeller::CubicPathComponent::ToQuadraticPathComponents().

## ◆ Floor()

template<class T >

constexpr TPoint impeller::TPoint< T >::Floor | ( |  | ) | const
| inline constexpr

Definition at line 187 of file point.h.

187 { return {std::floor(x), std::floor(y)}; }

Referenced by impeller::testing::TEST().

## ◆ GetDistance()

template<class T >

constexpr Type impeller::TPoint< T >::GetDistance | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 193 of file point.h.

193 {
194 return sqrt(GetDistanceSquared(p));
195 }

Referenced by impeller::TPoint< Type >::GetLength(), and impeller::testing::TEST_P().

## ◆ GetDistanceSquared()

template<class T >

constexpr Type impeller::TPoint< T >::GetDistanceSquared | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 173 of file point.h.

173 {
174 double dx = p.x - x;
175 double dy = p.y - y;
176 return dx * dx + dy * dy;
177 }

Referenced by impeller::TPoint< Type >::GetDistance(), and impeller::TPoint< Type >::GetLengthSquared().

## ◆ GetLength()

template<class T >

constexpr Type impeller::TPoint< T >::GetLength | ( |  | ) | const
| inline constexpr

Definition at line 199 of file point.h.

199 { return GetDistance({}); }

Referenced by impeller::TPoint< Type >::Normalize(), and impeller::testing::TEST_P().

## ◆ GetLengthSquared()

template<class T >

constexpr Type impeller::TPoint< T >::GetLengthSquared | ( |  | ) | const
| inline constexpr

Definition at line 197 of file point.h.

197 { return GetDistanceSquared({}); }

## ◆ IsZero()

template<class T >

constexpr bool impeller::TPoint< T >::IsZero | ( |  | ) | const
| inline constexpr

Definition at line 227 of file point.h.

227 { return x == 0 && y == 0; }

Referenced by impeller::PathBuilder::RoundingRadii::AreAllZero(), impeller::DirectionalMorphologyFilterContents::SetDirection(), and impeller::DirectionalGaussianBlurFilterContents::SetDirection().

## ◆ Lerp()

template<class T >

constexpr TPoint impeller::TPoint< T >::Lerp | ( | const TPoint< T > & | p,
|  | Scalar | t
| ) |  | const
| inline constexpr

Definition at line 223 of file point.h.

223 {
224 return *this + (p - *this) * t;
225 }

Referenced by impeller::testing::TEST().

## ◆ MakeXY()

template<class T >

static constexpr TPoint<Type> impeller::TPoint< T >::MakeXY | ( | Type | x,
|  | Type | y
| ) |  |
| inline static constexpr

Definition at line 39 of file point.h.

39 { return {x, y}; }

## ◆ Max()

template<class T >

constexpr TPoint impeller::TPoint< T >::Max | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 183 of file point.h.

183 {
184 return {std::max<Type>(x, p.x), std::max<Type>(y, p.y)};
185 }

Referenced by impeller::testing::TEST().

## ◆ Min()

template<class T >

constexpr TPoint impeller::TPoint< T >::Min | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 179 of file point.h.

179 {
180 return {std::min<Type>(x, p.x), std::min<Type>(y, p.y)};
181 }

Referenced by impeller::testing::TEST().

## ◆ Normalize()

template<class T >

constexpr TPoint impeller::TPoint< T >::Normalize | ( |  | ) | const
| inline constexpr

Definition at line 201 of file point.h.

201 {
202 const auto length = GetLength();
203 if (length == 0) {
204 return {1, 0};
205 }
206 return {x / length, y / length};
207 }

Referenced by impeller::DirectionalMorphologyFilterContents::SetDirection(), impeller::DirectionalGaussianBlurFilterContents::SetDirection(), impeller::testing::TEST(), and impeller::testing::TEST_P().

## ◆ operator!=()

template<class T >

constexpr bool impeller::TPoint< T >::operator!= | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 51 of file point.h.

51 {
52 return p.x != x || p.y != y;
53 }

## ◆ operator*() [1/3]

template<class T >

constexpr TPoint impeller::TPoint< T >::operator* | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 150 of file point.h.

150 {
151 return {x * p.x, y * p.y};
152 }

## ◆ operator*() [2/3]

template<class T >
template<class U >

constexpr TPoint impeller::TPoint< T >::operator* | ( | const TSize< U > & | s | ) | const
| inline constexpr

Definition at line 155 of file point.h.

155 {
156 return {x * static_cast<Type>(s.width), y * static_cast<Type>(s.height)};
157 }

## ◆ operator*() [3/3]

template<class T >
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>

constexpr TPoint impeller::TPoint< T >::operator* | ( | U | scale | ) | const
| inline constexpr

Definition at line 146 of file point.h.

146 {
147 return {static_cast<Type>(x * scale), static_cast<Type>(y * scale)};
148 }

## ◆ operator*=() [1/3]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator*= | ( | const TPoint< U > & | p | ) |
| inline

Definition at line 84 of file point.h.

84 {
85 x *= static_cast<Type>(p.x);
86 y *= static_cast<Type>(p.y);
87 return *this;
88 }

## ◆ operator*=() [2/3]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator*= | ( | const TSize< U > & | s | ) |
| inline

Definition at line 91 of file point.h.

91 {
92 x *= static_cast<Type>(s.width);
93 y *= static_cast<Type>(s.height);
94 return *this;
95 }

## ◆ operator*=() [3/3]

template<class T >
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>

TPoint impeller::TPoint< T >::operator*= | ( | U | scale | ) |
| inline

Definition at line 98 of file point.h.

98 {
99 x *= static_cast<Type>(scale);
100 y *= static_cast<Type>(scale);
101 return *this;
102 }

## ◆ operator+() [1/2]

template<class T >

constexpr TPoint impeller::TPoint< T >::operator+ | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 127 of file point.h.

127 {
128 return {x + p.x, y + p.y};
129 }

## ◆ operator+() [2/2]

template<class T >
template<class U >

constexpr TPoint impeller::TPoint< T >::operator+ | ( | const TSize< U > & | s | ) | const
| inline constexpr

Definition at line 132 of file point.h.

132 {
133 return {x + static_cast<Type>(s.width), y + static_cast<Type>(s.height)};
134 }

## ◆ operator+=() [1/2]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator+= | ( | const TPoint< U > & | p | ) |
| inline

Definition at line 56 of file point.h.

56 {
57 x += static_cast<Type>(p.x);
58 y += static_cast<Type>(p.y);
59 return *this;
60 }

## ◆ operator+=() [2/2]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator+= | ( | const TSize< U > & | s | ) |
| inline

Definition at line 63 of file point.h.

63 {
64 x += static_cast<Type>(s.width);
65 y += static_cast<Type>(s.height);
66 return *this;
67 }

## ◆ operator-() [1/3]

template<class T >

constexpr TPoint impeller::TPoint< T >::operator- | ( |  | ) | const
| inline constexpr

Definition at line 125 of file point.h.

125 { return {-x, -y}; }

## ◆ operator-() [2/3]

template<class T >

constexpr TPoint impeller::TPoint< T >::operator- | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 136 of file point.h.

136 {
137 return {x - p.x, y - p.y};
138 }

## ◆ operator-() [3/3]

template<class T >
template<class U >

constexpr TPoint impeller::TPoint< T >::operator- | ( | const TSize< U > & | s | ) | const
| inline constexpr

Definition at line 141 of file point.h.

141 {
142 return {x - static_cast<Type>(s.width), y - static_cast<Type>(s.height)};
143 }

## ◆ operator-=() [1/2]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator-= | ( | const TPoint< U > & | p | ) |
| inline

Definition at line 70 of file point.h.

70 {
71 x -= static_cast<Type>(p.x);
72 y -= static_cast<Type>(p.y);
73 return *this;
74 }

## ◆ operator-=() [2/2]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator-= | ( | const TSize< U > & | s | ) |
| inline

Definition at line 77 of file point.h.

77 {
78 x -= static_cast<Type>(s.width);
79 y -= static_cast<Type>(s.height);
80 return *this;
81 }

## ◆ operator/() [1/3]

template<class T >

constexpr TPoint impeller::TPoint< T >::operator/ | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 164 of file point.h.

164 {
165 return {x / p.x, y / p.y};
166 }

## ◆ operator/() [2/3]

template<class T >
template<class U >

constexpr TPoint impeller::TPoint< T >::operator/ | ( | const TSize< U > & | s | ) | const
| inline constexpr

Definition at line 169 of file point.h.

169 {
170 return {x / static_cast<Type>(s.width), y / static_cast<Type>(s.height)};
171 }

## ◆ operator/() [3/3]

template<class T >
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>

constexpr TPoint impeller::TPoint< T >::operator/ | ( | U | d | ) | const
| inline constexpr

Definition at line 160 of file point.h.

160 {
161 return {static_cast<Type>(x / d), static_cast<Type>(y / d)};
162 }

## ◆ operator/=() [1/3]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator/= | ( | const TPoint< U > & | p | ) |
| inline

Definition at line 105 of file point.h.

105 {
106 x /= static_cast<Type>(p.x);
107 y /= static_cast<Type>(p.y);
108 return *this;
109 }

## ◆ operator/=() [2/3]

template<class T >
template<class U >

TPoint impeller::TPoint< T >::operator/= | ( | const TSize< U > & | s | ) |
| inline

Definition at line 112 of file point.h.

112 {
113 x /= static_cast<Type>(s.width);
114 y /= static_cast<Type>(s.height);
115 return *this;
116 }

## ◆ operator/=() [3/3]

template<class T >
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>>

TPoint impeller::TPoint< T >::operator/= | ( | U | scale | ) |
| inline

Definition at line 119 of file point.h.

119 {
120 x /= static_cast<Type>(scale);
121 y /= static_cast<Type>(scale);
122 return *this;
123 }

## ◆ operator==()

template<class T >

constexpr bool impeller::TPoint< T >::operator== | ( | const TPoint< T > & | p | ) | const
| inline constexpr

Definition at line 47 of file point.h.

47 {
48 return p.x == x && p.y == y;
49 }

## ◆ Reflect()

template<class T >

constexpr TPoint impeller::TPoint< T >::Reflect | ( | const TPoint< T > & | axis | ) | const
| inline constexpr

Definition at line 215 of file point.h.

215 {
216 return *this - axis * this->Dot(axis) * 2;
217 }

Referenced by impeller::testing::TEST().

## ◆ Round() [1/2]

template<class T >

constexpr TPoint impeller::TPoint< T >::Round | ( |  | ) | const
| inline constexpr

Definition at line 191 of file point.h.

191 { return {std::round(x), std::round(y)}; }

## ◆ Round() [2/2]

template<class T >
template<class U >

static constexpr TPoint impeller::TPoint< T >::Round | ( | const TPoint< U > & | other | ) |
| inline static constexpr

Definition at line 42 of file point.h.

42 {
43 return TPoint{static_cast<Type>(std::round(other.x)),
44 static_cast<Type>(std::round(other.y))};
45 }

Referenced by impeller::testing::TEST().

## Member Data Documentation

## ◆ x

template<class T >

Type impeller::TPoint< T >::x = {}

Definition at line 23 of file point.h.

Referenced by impeller::TPoint< Type >::Abs(), impeller::PathBuilder::AddArc(), impeller::PathBuilder::AddCircle(), impeller::PathBuilder::AddOval(), impeller::PathBuilder::AddRoundedRect(), impeller::TPoint< Type >::Ceil(), impeller::TRect< Scalar >::Contains(), impeller::TPoint< Type >::Cross(), impeller::TPoint< Type >::Dot(), impeller::DrawGlyph(), impeller::Canvas::DrawImage(), impeller::BlitCopyTextureToTextureCommandGLES::Encode(), impeller::BlitCopyTextureToTextureCommandMTL::Encode(), impeller::BlitCopyTextureToTextureCommandVK::Encode(), impeller::BlitCopyTextureToBufferCommandGLES::Encode(), impeller::BlitCopyTextureToBufferCommandMTL::Encode(), impeller::BlitCopyTextureToBufferCommandVK::Encode(), impeller::BlitCopyBufferToTextureCommandVK::Encode(), impeller::BlitCopyBufferToTextureCommandMTL::Encode(), impeller::TRect< Scalar >::Expand(), impeller::CubicPathComponent::Extrema(), impeller::TPoint< Type >::Floor(), impeller::PlaygroundImpl::GetContentScale(), impeller::TPoint< Type >::GetDistanceSquared(), impeller::TRect< Scalar >::GetLeft(), impeller::BitmapSTB::GetPixelAddress(), impeller::TRect< Scalar >::GetRight(), impeller::PathBuilder::HorizontalLineTo(), impeller::TPoint< Type >::IsZero(), impeller::Matrix::MakeScale(), impeller::testing::MetalScreenshoter::MakeScreenshot(), impeller::MakeTextFrameFromTextBlobSkia(), impeller::TPoint< Type >::MakeXY(), impeller::TPoint< Type >::Max(), impeller::TPoint< Type >::Min(), impeller::TPoint< Type >::Normalize(), impeller::TPoint< Type >::operator!=(), impeller::AtlasBlenderKey::Hash::operator()(), impeller::TRect< Scalar >::operator*(), impeller::TPoint< Type >::operator*(), impeller::operator*(), impeller::Matrix::operator*(), impeller::TPoint< Type >::operator*=(), impeller::TRect< Scalar >::operator+(), impeller::TPoint< Type >::operator+(), impeller::operator+(), impeller::TPoint< Type >::operator+=(), impeller::TRect< Scalar >::operator-(), impeller::TPoint< Type >::operator-(), impeller::operator-(), impeller::TPoint< Type >::operator-=(), impeller::TPoint< Type >::operator/(), impeller::operator/(), impeller::TPoint< Type >::operator/=(), std::operator<<(), impeller::TPoint< Type >::operator==(), PointNear(), RectNear(), impeller::TextContents::Render(), impeller::TPoint< Type >::Round(), impeller::TRect< Scalar >::Scale(), impeller::PassBindingsCache::SetScissor(), impeller::PassBindingsCache::SetViewport(), impeller::TRect< Scalar >::Shift(), impeller::LinearPathComponent::Solve(), impeller::QuadraticPathComponent::Solve(), impeller::CubicPathComponent::Solve(), impeller::QuadraticPathComponent::SolveDerivative(), impeller::CubicPathComponent::SolveDerivative(), impeller::testing::TEST(), impeller::testing::TEST_P(), impeller::scene::importer::ToFBVec2(), impeller::skia_conversions::ToPath(), impeller::Matrix::TransformDirection(), and impeller::PathBuilder::VerticalLineTo().

## ◆ y

template<class T >

Type impeller::TPoint< T >::y = {}

Definition at line 24 of file point.h.

Referenced by impeller::TPoint< Type >::Abs(), impeller::PathBuilder::AddArc(), impeller::PathBuilder::AddCircle(), impeller::PathBuilder::AddOval(), impeller::PathBuilder::AddRoundedRect(), impeller::TPoint< Type >::Ceil(), impeller::TRect< Scalar >::Contains(), impeller::TPoint< Type >::Cross(), impeller::TPoint< Type >::Dot(), impeller::DrawGlyph(), impeller::Canvas::DrawImage(), impeller::BlitCopyTextureToTextureCommandGLES::Encode(), impeller::BlitCopyTextureToTextureCommandMTL::Encode(), impeller::BlitCopyTextureToTextureCommandVK::Encode(), impeller::BlitCopyTextureToBufferCommandGLES::Encode(), impeller::BlitCopyTextureToBufferCommandMTL::Encode(), impeller::BlitCopyTextureToBufferCommandVK::Encode(), impeller::BlitCopyBufferToTextureCommandVK::Encode(), impeller::BlitCopyBufferToTextureCommandMTL::Encode(), impeller::TRect< Scalar >::Expand(), impeller::CubicPathComponent::Extrema(), impeller::TPoint< Type >::Floor(), impeller::TRect< Scalar >::GetBottom(), impeller::PlaygroundImpl::GetContentScale(), impeller::TPoint< Type >::GetDistanceSquared(), impeller::BitmapSTB::GetPixelAddress(), impeller::TRect< Scalar >::GetTop(), impeller::PathBuilder::HorizontalLineTo(), impeller::TPoint< Type >::IsZero(), impeller::Matrix::MakeScale(), impeller::testing::MetalScreenshoter::MakeScreenshot(), impeller::TPoint< Type >::MakeXY(), impeller::TPoint< Type >::Max(), impeller::TPoint< Type >::Min(), impeller::TPoint< Type >::Normalize(), impeller::TPoint< Type >::operator!=(), impeller::AtlasBlenderKey::Hash::operator()(), impeller::TRect< Scalar >::operator*(), impeller::TPoint< Type >::operator*(), impeller::operator*(), impeller::Matrix::operator*(), impeller::TPoint< Type >::operator*=(), impeller::TRect< Scalar >::operator+(), impeller::TPoint< Type >::operator+(), impeller::operator+(), impeller::TPoint< Type >::operator+=(), impeller::TRect< Scalar >::operator-(), impeller::TPoint< Type >::operator-(), impeller::operator-(), impeller::TPoint< Type >::operator-=(), impeller::TPoint< Type >::operator/(), impeller::operator/(), impeller::TPoint< Type >::operator/=(), std::operator<<(), impeller::TPoint< Type >::operator==(), PointNear(), RectNear(), impeller::TextContents::Render(), impeller::TPoint< Type >::Round(), impeller::TRect< Scalar >::Scale(), impeller::PassBindingsCache::SetScissor(), impeller::PassBindingsCache::SetViewport(), impeller::TRect< Scalar >::Shift(), impeller::LinearPathComponent::Solve(), impeller::QuadraticPathComponent::Solve(), impeller::CubicPathComponent::Solve(), impeller::QuadraticPathComponent::SolveDerivative(), impeller::CubicPathComponent::SolveDerivative(), impeller::testing::TEST(), impeller::testing::TEST_P(), impeller::scene::importer::ToFBVec2(), impeller::skia_conversions::ToPath(), impeller::Matrix::TransformDirection(), and impeller::PathBuilder::VerticalLineTo().

The documentation for this struct was generated from the following file:

- impeller/geometry/point.h

impeller::TPoint::y
Type y
Definition: point.h:24
impeller::TPoint::TPoint
constexpr TPoint()=default
impeller::TPoint::Dot
constexpr Type Dot(const TPoint &p) const
Definition: point.h:213
impeller::TPoint::Cross
constexpr Type Cross(const TPoint &p) const
Definition: point.h:211
impeller::TPoint::x
Type x
Definition: point.h:23
impeller::TPoint::GetLength
constexpr Type GetLength() const
Definition: point.h:199
impeller::TPoint::GetDistance
constexpr Type GetDistance(const TPoint &p) const
Definition: point.h:193
impeller::TPoint::Type
T Type
Definition: point.h:21
impeller::TPoint::GetDistanceSquared
constexpr Type GetDistanceSquared(const TPoint &p) const
Definition: point.h:173