#include <dl_image_filter.h>
|
static SkVector | map_vectors_affine (const SkMatrix &ctm, SkScalar x, SkScalar y) |
|
static SkIRect * | inset_device_bounds (const SkIRect &input_bounds, SkScalar radius_x, SkScalar radius_y, const SkMatrix &ctm, SkIRect &output_bounds) |
|
static SkIRect * | outset_device_bounds (const SkIRect &input_bounds, SkScalar radius_x, SkScalar radius_y, const SkMatrix &ctm, SkIRect &output_bounds) |
|
Definition at line 47 of file dl_image_filter.h.
◆ MatrixCapability
◆ asBlur()
◆ asColorFilter()
◆ asCompose()
◆ asDilate()
◆ asErode()
◆ asLocalMatrix()
◆ asMatrix()
◆ get_input_device_bounds()
virtual SkIRect * flutter::DlImageFilter::get_input_device_bounds |
( |
const SkIRect & |
output_bounds, |
|
|
const SkMatrix & |
ctm, |
|
|
SkIRect & |
input_bounds |
|
) |
| const |
|
pure virtual |
◆ inset_device_bounds()
Definition at line 169 of file dl_image_filter.h.
173 {
177 if (ctm.
invert(&inverse)) {
179 local_bounds.
inset(radius_x, radius_y);
180 output_bounds = ctm.
mapRect(local_bounds).roundOut();
181 return &output_bounds;
182 }
183 } else {
187 return &output_bounds;
188 }
189 }
190 output_bounds = input_bounds;
191 return nullptr;
192 }
bool invert(SkMatrix *inverse) const
bool hasPerspective() const
bool mapRect(SkRect *dst, const SkRect &src, SkApplyPerspectiveClip pc=SkApplyPerspectiveClip::kYes) const
static SkVector map_vectors_affine(const SkMatrix &ctm, SkScalar x, SkScalar y)
SIN Vec< N, float > floor(const Vec< N, float > &x)
SkIRect makeInset(int32_t dx, int32_t dy) const
static SkRect Make(const SkISize &size)
void inset(float dx, float dy)
◆ makeWithLocalMatrix()
std::shared_ptr< DlImageFilter > flutter::DlImageFilter::makeWithLocalMatrix |
( |
const SkMatrix & |
matrix | ) |
const |
|
virtual |
Reimplemented in flutter::DlColorFilterImageFilter.
Definition at line 9 of file dl_image_filter.cc.
10 {
13 }
14
18
19 return nullptr;
20 }
21 break;
22 }
24 if (!
matrix.isScaleTranslate()) {
25
26 return nullptr;
27 }
28 break;
29 }
30 default:
31 break;
32 }
33 return std::make_shared<DlLocalMatrixImageFilter>(
matrix,
shared());
34}
virtual std::shared_ptr< DlImageFilter > shared() const=0
virtual MatrixCapability matrix_capability() const
unsigned useCenter Optional< SkMatrix > matrix
◆ map_device_bounds()
virtual SkIRect * flutter::DlImageFilter::map_device_bounds |
( |
const SkIRect & |
input_bounds, |
|
|
const SkMatrix & |
ctm, |
|
|
SkIRect & |
output_bounds |
|
) |
| const |
|
pure virtual |
◆ map_local_bounds()
virtual SkRect * flutter::DlImageFilter::map_local_bounds |
( |
const SkRect & |
input_bounds, |
|
|
SkRect & |
output_bounds |
|
) |
| const |
|
pure virtual |
◆ map_vectors_affine()
Definition at line 138 of file dl_image_filter.h.
140 {
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165 return {
x *
abs(ctm[0]) +
y *
abs(ctm[1]),
167 }
#define FML_DCHECK(condition)
SINT bool isfinite(const Vec< N, T > &v)
SIN Vec< N, float > abs(const Vec< N, float > &x)
◆ matrix_capability()
◆ modifies_transparent_black()
virtual bool flutter::DlImageFilter::modifies_transparent_black |
( |
| ) |
const |
|
pure virtual |
◆ outset_device_bounds()
Definition at line 194 of file dl_image_filter.h.
198 {
202 if (ctm.
invert(&inverse)) {
204 local_bounds.
outset(radius_x, radius_y);
205 output_bounds = ctm.
mapRect(local_bounds).roundOut();
206 return &output_bounds;
207 }
208 } else {
212 return &output_bounds;
213 }
214 }
215 output_bounds = input_bounds;
216 return nullptr;
217 }
SIN Vec< N, float > ceil(const Vec< N, float > &x)
SkIRect makeOutset(int32_t dx, int32_t dy) const
void outset(float dx, float dy)
The documentation for this class was generated from the following files: