#include <SkPointPriv.h>
|
static bool | AreFinite (const SkPoint array[], int count) |
|
static const SkScalar * | AsScalars (const SkPoint &pt) |
|
static bool | CanNormalize (SkScalar dx, SkScalar dy) |
|
static SkScalar | DistanceToLineBetweenSqd (const SkPoint &pt, const SkPoint &a, const SkPoint &b, Side *side=nullptr) |
|
static SkScalar | DistanceToLineBetween (const SkPoint &pt, const SkPoint &a, const SkPoint &b, Side *side=nullptr) |
|
static SkScalar | DistanceToLineSegmentBetweenSqd (const SkPoint &pt, const SkPoint &a, const SkPoint &b) |
|
static SkScalar | DistanceToLineSegmentBetween (const SkPoint &pt, const SkPoint &a, const SkPoint &b) |
|
static SkScalar | DistanceToSqd (const SkPoint &pt, const SkPoint &a) |
|
static bool | EqualsWithinTolerance (const SkPoint &p1, const SkPoint &p2) |
|
static bool | EqualsWithinTolerance (const SkPoint &pt, const SkPoint &p, SkScalar tol) |
|
static SkScalar | LengthSqd (const SkPoint &pt) |
|
static void | Negate (SkIPoint &pt) |
|
static void | RotateCCW (const SkPoint &src, SkPoint *dst) |
|
static void | RotateCCW (SkPoint *pt) |
|
static void | RotateCW (const SkPoint &src, SkPoint *dst) |
|
static void | RotateCW (SkPoint *pt) |
|
static bool | SetLengthFast (SkPoint *pt, float length) |
|
static SkPoint | MakeOrthog (const SkPoint &vec, Side side=kLeft_Side) |
|
static void | SetRectFan (SkPoint v[], SkScalar l, SkScalar t, SkScalar r, SkScalar b, size_t stride) |
|
static void | SetRectTriStrip (SkPoint v[], SkScalar l, SkScalar t, SkScalar r, SkScalar b, size_t stride) |
|
static void | SetRectTriStrip (SkPoint v[], const SkRect &rect, size_t stride) |
|
Definition at line 14 of file SkPointPriv.h.
◆ Side
Enumerator |
---|
kLeft_Side | |
kOn_Side | |
kRight_Side | |
Definition at line 16 of file SkPointPriv.h.
◆ AreFinite()
static bool SkPointPriv::AreFinite |
( |
const SkPoint |
array[], |
|
|
int |
count |
|
) |
| |
|
inlinestatic |
Definition at line 22 of file SkPointPriv.h.
22 {
24 }
static bool SkIsFinite(T x, Pack... values)
◆ AsScalars()
◆ CanNormalize()
Definition at line 28 of file SkPointPriv.h.
28 {
30 }
skia_private::AutoTArray< sk_sp< SkImageFilter > > filters TypedMatrix matrix TypedMatrix matrix SkScalar dx
◆ DistanceToLineBetween()
Definition at line 35 of file SkPointPriv.h.
36 {
38 }
static int side(double x)
static SkScalar DistanceToLineBetweenSqd(const SkPoint &pt, const SkPoint &a, const SkPoint &b, Side *side=nullptr)
◆ DistanceToLineBetweenSqd()
float SkPointPriv::DistanceToLineBetweenSqd |
( |
const SkPoint & |
pt, |
|
|
const SkPoint & |
a, |
|
|
const SkPoint & |
b, |
|
|
Side * |
side = nullptr |
|
) |
| |
|
static |
Definition at line 101 of file SkPoint.cpp.
103 {
104
107
109 float det = u.
cross(v);
115 }
117 temp *= det;
118
119
122 }
123 return temp;
124}
static constexpr int sk_float_sgn(float x)
static constexpr float sk_ieee_float_divide(float numer, float denom)
static SkScalar LengthSqd(const SkPoint &pt)
float cross(const SkVector &vec) const
◆ DistanceToLineSegmentBetween()
Definition at line 43 of file SkPointPriv.h.
44 {
46 }
static SkScalar DistanceToLineSegmentBetweenSqd(const SkPoint &pt, const SkPoint &a, const SkPoint &b)
◆ DistanceToLineSegmentBetweenSqd()
float SkPointPriv::DistanceToLineSegmentBetweenSqd |
( |
const SkPoint & |
pt, |
|
|
const SkPoint & |
a, |
|
|
const SkPoint & |
b |
|
) |
| |
|
static |
Definition at line 126 of file SkPoint.cpp.
127 {
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
146
149
150
151 if (uDotV <= 0) {
153
154 } else if (uDotV > uLengthSqd) {
156
157 } else {
158 float det = u.
cross(v);
160 temp *= det;
161
162
165 }
166 return temp;
167 }
168}
static SkScalar DistanceToSqd(const SkPoint &pt, const SkPoint &a)
static float DotProduct(const SkVector &a, const SkVector &b)
◆ DistanceToSqd()
◆ EqualsWithinTolerance() [1/2]
static bool SkPointPriv::EqualsWithinTolerance |
( |
const SkPoint & |
p1, |
|
|
const SkPoint & |
p2 |
|
) |
| |
|
inlinestatic |
Definition at line 54 of file SkPointPriv.h.
54 {
56 }
static bool CanNormalize(SkScalar dx, SkScalar dy)
◆ EqualsWithinTolerance() [2/2]
Definition at line 58 of file SkPointPriv.h.
58 {
61 }
static bool SkScalarNearlyZero(SkScalar x, SkScalar tolerance=SK_ScalarNearlyZero)
◆ LengthSqd()
◆ MakeOrthog()
◆ Negate()
static void SkPointPriv::Negate |
( |
SkIPoint & |
pt | ) |
|
|
inlinestatic |
◆ RotateCCW() [1/2]
static void SkPointPriv::RotateCCW |
( |
const SkPoint & |
src, |
|
|
SkPoint * |
dst |
|
) |
| |
|
inlinestatic |
◆ RotateCCW() [2/2]
static void SkPointPriv::RotateCCW |
( |
SkPoint * |
pt | ) |
|
|
inlinestatic |
Definition at line 79 of file SkPointPriv.h.
79 {
81 }
static void RotateCCW(const SkPoint &src, SkPoint *dst)
◆ RotateCW() [1/2]
static void SkPointPriv::RotateCW |
( |
const SkPoint & |
src, |
|
|
SkPoint * |
dst |
|
) |
| |
|
inlinestatic |
◆ RotateCW() [2/2]
static void SkPointPriv::RotateCW |
( |
SkPoint * |
pt | ) |
|
|
inlinestatic |
Definition at line 90 of file SkPointPriv.h.
90 {
92 }
static void RotateCW(const SkPoint &src, SkPoint *dst)
◆ SetLengthFast()
bool SkPointPriv::SetLengthFast |
( |
SkPoint * |
pt, |
|
|
float |
length |
|
) |
| |
|
static |
◆ SetRectFan()
Definition at line 102 of file SkPointPriv.h.
103 {
105
106 ((
SkPoint*)((intptr_t)v + 0 * stride))->set(l, t);
107 ((
SkPoint*)((intptr_t)v + 1 * stride))->set(l,
b);
108 ((
SkPoint*)((intptr_t)v + 2 * stride))->set(r,
b);
109 ((
SkPoint*)((intptr_t)v + 3 * stride))->set(r, t);
110 }
◆ SetRectTriStrip() [1/2]
static void SkPointPriv::SetRectTriStrip |
( |
SkPoint |
v[], |
|
|
const SkRect & |
rect, |
|
|
size_t |
stride |
|
) |
| |
|
inlinestatic |
Definition at line 122 of file SkPointPriv.h.
122 {
124 }
static void SetRectTriStrip(SkPoint v[], SkScalar l, SkScalar t, SkScalar r, SkScalar b, size_t stride)
sk_sp< SkBlender > blender SkRect rect
◆ SetRectTriStrip() [2/2]
Definition at line 113 of file SkPointPriv.h.
114 {
116
117 ((
SkPoint*)((intptr_t)v + 0 * stride))->set(l, t);
118 ((
SkPoint*)((intptr_t)v + 1 * stride))->set(l,
b);
119 ((
SkPoint*)((intptr_t)v + 2 * stride))->set(r, t);
120 ((
SkPoint*)((intptr_t)v + 3 * stride))->set(r,
b);
121 }
The documentation for this class was generated from the following files: