![]() |
Flutter Engine
The Flutter Engine
|
#include <SkConicalGradient.h>
Classes | |
struct | FocalData |
Public Types | |
enum class | Type { kRadial , kStrip , kFocal } |
![]() | |
using | Interpolation = SkGradientShader::Interpolation |
![]() | |
enum class | ShaderType { M } |
enum class | GradientType { kNone , M } |
enum | Flags { kOpaqueAlpha_Flag = 1 << 0 } |
![]() | |
enum | Type { kSkColorFilter_Type , kSkBlender_Type , kSkDrawable_Type , kSkDrawLooper_Type , kSkImageFilter_Type , kSkMaskFilter_Type , kSkPathEffect_Type , kSkShader_Type } |
typedef sk_sp< SkFlattenable >(* | Factory) (SkReadBuffer &) |
Public Member Functions | |
GradientType | asGradient (GradientInfo *info, SkMatrix *localMatrix) const override |
bool | isOpaque () const override |
SkScalar | getCenterX1 () const |
SkScalar | getStartRadius () const |
SkScalar | getDiffRadius () const |
const SkPoint & | getStartCenter () const |
const SkPoint & | getEndCenter () const |
SkScalar | getEndRadius () const |
Type | getType () const |
const FocalData & | getFocalData () const |
SkConicalGradient (const SkPoint &c0, SkScalar r0, const SkPoint &c1, SkScalar r1, const Descriptor &, Type, const SkMatrix &, const FocalData &) | |
![]() | |
SkGradientBaseShader (const Descriptor &desc, const SkMatrix &ptsToUnit) | |
~SkGradientBaseShader () override | |
ShaderType | type () const final |
bool | isOpaque () const override |
bool | interpolateInPremul () const |
const SkMatrix & | getGradientMatrix () const |
int | getColorCount () const |
const float * | getPositions () const |
const Interpolation & | getInterpolation () const |
SkScalar | getPos (int i) const |
SkColor | getLegacyColor (int i) const |
bool | colorsAreOpaque () const |
SkTileMode | getTileMode () const |
const SkBitmap & | cachedBitmap () const |
void | setCachedBitmap (SkBitmap b) const |
![]() | |
~SkShaderBase () override | |
sk_sp< SkShader > | makeInvertAlpha () const |
sk_sp< SkShader > | makeWithCTM (const SkMatrix &) const |
virtual bool | isConstant () const |
virtual ShaderType | type () const =0 |
virtual GradientType | asGradient (GradientInfo *info=nullptr, SkMatrix *localMatrix=nullptr) const |
Context * | makeContext (const ContextRec &, SkArenaAlloc *) const |
bool | asLuminanceColor (SkColor4f *) const |
bool | appendRootStages (const SkStageRec &rec, const SkMatrix &ctm) const |
virtual bool | appendStages (const SkStageRec &, const SkShaders::MatrixRec &) const =0 |
virtual SkImage * | onIsAImage (SkMatrix *, SkTileMode[2]) const |
virtual SkRuntimeEffect * | asRuntimeEffect () const |
Type | getFlattenableType () const override |
virtual sk_sp< SkShader > | makeAsALocalMatrixShader (SkMatrix *localMatrix) const |
![]() | |
virtual bool | isOpaque () const |
SkImage * | isAImage (SkMatrix *localMatrix, SkTileMode xy[2]) const |
bool | isAImage () const |
sk_sp< SkShader > | makeWithLocalMatrix (const SkMatrix &) const |
sk_sp< SkShader > | makeWithColorFilter (sk_sp< SkColorFilter >) const |
sk_sp< SkShader > | makeWithWorkingColorSpace (sk_sp< SkColorSpace >) const |
![]() | |
SkFlattenable () | |
virtual Factory | getFactory () const =0 |
virtual const char * | getTypeName () const =0 |
virtual void | flatten (SkWriteBuffer &) const |
virtual Type | getFlattenableType () const =0 |
sk_sp< SkData > | serialize (const SkSerialProcs *=nullptr) const |
size_t | serialize (void *memory, size_t memory_size, const SkSerialProcs *=nullptr) const |
![]() | |
SkRefCntBase () | |
virtual | ~SkRefCntBase () |
bool | unique () const |
void | ref () const |
void | unref () const |
Static Public Member Functions | |
static bool | MapToUnitX (const SkPoint &startCenter, const SkPoint &endCenter, SkMatrix *dstMatrix) |
static sk_sp< SkShader > | Create (const SkPoint &start, SkScalar startRadius, const SkPoint &end, SkScalar endRadius, const Descriptor &, const SkMatrix *localMatrix) |
![]() | |
static bool | ValidGradient (const SkColor4f colors[], int count, SkTileMode tileMode, const Interpolation &interpolation) |
static sk_sp< SkShader > | MakeDegenerateGradient (const SkColor4f colors[], const SkScalar pos[], int colorCount, sk_sp< SkColorSpace > colorSpace, SkTileMode mode) |
static void | AppendGradientFillStages (SkRasterPipeline *p, SkArenaAlloc *alloc, const SkPMColor4f *colors, const SkScalar *positions, int count) |
static void | AppendInterpolatedToDstStages (SkRasterPipeline *p, SkArenaAlloc *alloc, bool colorsAreOpaque, const Interpolation &interpolation, const SkColorSpace *intermediateColorSpace, const SkColorSpace *dstColorSpace) |
![]() | |
static Type | GetFlattenableType () |
static sk_sp< SkShaderBase > | Deserialize (const void *data, size_t size, const SkDeserialProcs *procs=nullptr) |
static void | RegisterFlattenables () |
static SkMatrix | ConcatLocalMatrices (const SkMatrix &parentLM, const SkMatrix &childLM) |
![]() | |
static Factory | NameToFactory (const char name[]) |
static const char * | FactoryToName (Factory) |
static void | Register (const char name[], Factory) |
static sk_sp< SkFlattenable > | Deserialize (Type, const void *data, size_t length, const SkDeserialProcs *procs=nullptr) |
Protected Member Functions | |
void | flatten (SkWriteBuffer &buffer) const override |
void | appendGradientStages (SkArenaAlloc *alloc, SkRasterPipeline *tPipeline, SkRasterPipeline *postPipeline) const override |
![]() | |
void | flatten (SkWriteBuffer &) const override |
void | commonAsAGradient (GradientInfo *) const |
bool | onAsLuminanceColor (SkColor4f *) const override |
bool | appendStages (const SkStageRec &, const SkShaders::MatrixRec &) const override |
virtual void | appendGradientStages (SkArenaAlloc *alloc, SkRasterPipeline *tPipeline, SkRasterPipeline *postPipeline) const =0 |
![]() | |
SkShaderBase () | |
void | flatten (SkWriteBuffer &) const override |
virtual bool | onAsLuminanceColor (SkColor4f *) const |
Additional Inherited Members | |
![]() | |
SkColor4f * | fColors |
SkScalar * | fPositions |
int | fColorCount |
sk_sp< SkColorSpace > | fColorSpace |
Interpolation | fInterpolation |
bool | fFirstStopIsImplicit |
bool | fLastStopIsImplicit |
![]() | |
static constexpr SkScalar | kDegenerateThreshold = SK_Scalar1 / (1 << 15) |
![]() | |
const SkMatrix | fPtsToUnit |
SkTileMode | fTileMode |
Definition at line 24 of file SkConicalGradient.h.
|
strong |
Enumerator | |
---|---|
kRadial | |
kStrip | |
kFocal |
Definition at line 51 of file SkConicalGradient.h.
SkConicalGradient::SkConicalGradient | ( | const SkPoint & | c0, |
SkScalar | r0, | ||
const SkPoint & | c1, | ||
SkScalar | r1, | ||
const Descriptor & | desc, | ||
Type | type, | ||
const SkMatrix & | gradientMatrix, | ||
const FocalData & | data | ||
) |
Definition at line 117 of file SkConicalGradient.cpp.
|
overrideprotectedvirtual |
Implements SkGradientBaseShader.
Definition at line 199 of file SkConicalGradient.cpp.
|
overridevirtual |
Reimplemented from SkShaderBase.
Definition at line 146 of file SkConicalGradient.cpp.
|
static |
Definition at line 74 of file SkConicalGradient.cpp.
|
overrideprotectedvirtual |
Override this if your subclass needs to record data that it will need to recreate itself from its CreateProc (returned by getFactory()).
DEPRECATED public : will move to protected ... use serialize() instead
Reimplemented from SkFlattenable.
Definition at line 191 of file SkConicalGradient.cpp.
|
inline |
Definition at line 67 of file SkConicalGradient.h.
|
inline |
Definition at line 69 of file SkConicalGradient.h.
|
inline |
Definition at line 71 of file SkConicalGradient.h.
|
inline |
Definition at line 72 of file SkConicalGradient.h.
|
inline |
Definition at line 75 of file SkConicalGradient.h.
|
inline |
Definition at line 70 of file SkConicalGradient.h.
|
inline |
Definition at line 68 of file SkConicalGradient.h.
|
inline |
Definition at line 74 of file SkConicalGradient.h.
|
overridevirtual |
Returns true if the shader is guaranteed to produce only opaque colors, subject to the SkPaint using the shader to apply an opaque alpha value. Subclasses should override this to allow some optimizations.
Reimplemented from SkShader.
Definition at line 138 of file SkConicalGradient.cpp.
|
static |
Definition at line 65 of file SkConicalGradient.cpp.