 |
Skia
2D Graphics Library
|
Go to the documentation of this file.
8 #ifndef SkPathEffect_DEFINED
9 #define SkPathEffect_DEFINED
94 kCircles_PointFlag = 0x01,
95 kUsePath_PointFlag = 0x02,
96 kUseClip_PointFlag = 0x04,
116 const SkRect* cullR)
const;
134 DashInfo() : fIntervals(nullptr), fCount(0), fPhase(0) {}
136 : fIntervals(intervals), fCount(count), fPhase(phase) {}
161 kSkPathEffect_Type, data, size, procs).release()));
176 return kNone_DashType;
SkPath fFirst
Definition: SkPathEffect.h:106
int fNumPoints
Definition: SkPathEffect.h:101
PointData()
Definition: SkPathEffect.h:76
DashInfo()
Definition: SkPathEffect.h:134
bool asPoints(PointData *results, const SkPath &src, const SkStrokeRec &, const SkMatrix &, const SkRect *cullR) const
Does applying this path effect to 'src' yield a set of points? If so, optionally return the points in...
Definition: SkPathEffect.h:74
DashType
If the PathEffect can be represented as a dash pattern, asADash will return kDash_DashType and None o...
Definition: SkPathEffect.h:128
void computeFastBounds(SkRect *dst, const SkRect &src) const
Compute a conservative bounds for its effect, given the src bounds.
static void RegisterFlattenables()
static sk_sp< SkFlattenable > Deserialize(Type, const void *data, size_t length, const SkDeserialProcs *procs=nullptr)
Definition: SkPathEffect.h:27
virtual bool onAsPoints(PointData *, const SkPath &, const SkStrokeRec &, const SkMatrix &, const SkRect *) const
Definition: SkPathEffect.h:171
Type
Definition: SkFlattenable.h:28
static SkFlattenable::Type GetFlattenableType()
Definition: SkPathEffect.h:149
DashType asADash(DashInfo *info) const
SkScalar fPhase
Offset into the dashed interval pattern.
Definition: SkPathEffect.h:141
static sk_sp< SkPathEffect > MakeSum(sk_sp< SkPathEffect > first, sk_sp< SkPathEffect > second)
Returns a patheffect that apples each effect (first and second) to the original path,...
@ kSkPathEffect_Type
Definition: SkFlattenable.h:34
Definition: SkPoint.h:160
SkFlattenable()
Definition: SkFlattenable.h:45
#define SK_API
Definition: SkTypes.h:181
Definition: SkStrokeRec.h:17
SkScalar * fIntervals
Length of on/off intervals for dashed lines.
Definition: SkPathEffect.h:138
@ kNone_DashType
ignores the info parameter
Definition: SkPathEffect.h:129
SkFlattenable::Type getFlattenableType() const override
Definition: SkPathEffect.h:153
static sk_sp< SkPathEffect > Deserialize(const void *data, size_t size, const SkDeserialProcs *procs=nullptr)
Definition: SkPathEffect.h:157
#define SK_Scalar1
Definition: SkScalar.h:18
static sk_sp< SkPathEffect > MakeCompose(sk_sp< SkPathEffect > outer, sk_sp< SkPathEffect > inner)
Returns a patheffect that applies the inner effect to the path, and then applies the outer effect to ...
SkPoint * fPoints
Definition: SkPathEffect.h:100
SkRect fClipRect
Definition: SkPathEffect.h:103
float SkScalar
Definition: SkScalar.h:16
virtual bool onFilterPath(SkPath *, const SkPath &, SkStrokeRec *, const SkRect *) const =0
uint32_t fFlags
Definition: SkPathEffect.h:99
virtual SkRect onComputeFastBounds(const SkRect &src) const
Definition: SkPathEffect.h:168
SkPath fPath
Definition: SkPathEffect.h:104
@ kDash_DashType
fills in all of the info parameter
Definition: SkPathEffect.h:130
bool filterPath(SkPath *dst, const SkPath &src, SkStrokeRec *, const SkRect *cullR) const
Given a src path (input) and a stroke-rec (input and output), apply this effect to the src path,...
Definition: SkMatrix.h:48
SkPathEffect()
Definition: SkPathEffect.h:165
PointFlags
Definition: SkPathEffect.h:93
~PointData()
Definition: SkPathEffect.h:84
int32_t fCount
Number of intervals in the dash. Should be even number.
Definition: SkPathEffect.h:140
Definition: SkSerialProcs.h:61
SkPath fLast
Definition: SkPathEffect.h:107
virtual DashType onAsADash(DashInfo *) const
Definition: SkPathEffect.h:175
Definition: SkFlattenable.h:26
DashInfo(SkScalar *intervals, int32_t count, SkScalar phase)
Definition: SkPathEffect.h:135
SkVector fSize
Definition: SkPathEffect.h:102
Definition: SkPathEffect.h:133