Gnash  0.8.11dev
Public Types | Public Member Functions | Public Attributes | List of all members
gnash::GradientFill Class Reference

A GradientFill. More...

#include <FillStyle.h>

Public Types

enum  Type { LINEAR, RADIAL }
 The type of GradientFill. More...
 
enum  SpreadMode { PAD, REPEAT, REFLECT }
 
enum  InterpolationMode { RGB, LINEAR_RGB }
 
typedef std::vector< GradientRecordGradientRecords
 

Public Member Functions

 GradientFill (Type t, const SWFMatrix &m, const GradientRecords &=GradientRecords())
 Construct a GradientFill. More...
 
Type type () const
 
const SWFMatrixmatrix () const
 
void setLerp (const GradientFill &a, const GradientFill &b, double ratio)
 Set this fill to a lerp of two other GradientFills. More...
 
void setRecords (const GradientRecords &recs)
 
const GradientRecordsgetRecords () const
 
size_t recordCount () const
 Get the number of records in this GradientFill. More...
 
const GradientRecordrecord (size_t i) const
 Query the GradientRecord at the specified index. More...
 
void setFocalPoint (double d)
 Set the focal point. More...
 
double focalPoint () const
 Get the focal point of this GradientFill. More...
 

Public Attributes

SpreadMode spreadMode
 
InterpolationMode interpolation
 

Detailed Description

A GradientFill.

Member Typedef Documentation

§ GradientRecords

Member Enumeration Documentation

§ InterpolationMode

Enumerator
RGB 
LINEAR_RGB 

§ SpreadMode

Enumerator
PAD 
REPEAT 
REFLECT 

§ Type

The type of GradientFill.

A Radial fill is a gradient fill with a focal point.

Enumerator
LINEAR 
RADIAL 

Constructor & Destructor Documentation

§ GradientFill()

gnash::GradientFill::GradientFill ( Type  t,
const SWFMatrix m,
const GradientRecords recs = GradientRecords() 
)

Construct a GradientFill.

Optionally the records can be passed here. The actual matrix of the gradient depends on the type; the constructor handles this, and users should just pass the user matrix.

Member Function Documentation

§ focalPoint()

double gnash::GradientFill::focalPoint ( ) const
inline

Get the focal point of this GradientFill.

If the focal point is 0.0, it is a simple radial fill.

Referenced by gnash::StyleHandler::addFocalGradient(), gnash::renderer::openvg::StyleHandler::operator()(), and gnash::readFills().

§ getRecords()

const GradientRecords& gnash::GradientFill::getRecords ( ) const
inline

§ matrix()

const SWFMatrix& gnash::GradientFill::matrix ( ) const
inline

§ record()

const GradientRecord& gnash::GradientFill::record ( size_t  i) const
inline

Query the GradientRecord at the specified index.

There are recordCount() records.

References gnash::key::d, and gnash::key::i.

Referenced by gnash::AggStyle::color(), gnash::Renderer_cairo::getPixel(), and setLerp().

§ recordCount()

size_t gnash::GradientFill::recordCount ( ) const
inline

§ setFocalPoint()

void gnash::GradientFill::setFocalPoint ( double  d)

Set the focal point.

Value will be clamped to the range -1..1; callers don't need to check.

References gnash::key::d.

Referenced by gnash::readFills().

§ setLerp()

void gnash::GradientFill::setLerp ( const GradientFill a,
const GradientFill b,
double  ratio 
)

§ setRecords()

void gnash::GradientFill::setRecords ( const GradientRecords recs)
inline

Referenced by gnash::readFills().

§ type()

Type gnash::GradientFill::type ( ) const
inline

Member Data Documentation

§ interpolation

InterpolationMode gnash::GradientFill::interpolation

§ spreadMode

SpreadMode gnash::GradientFill::spreadMode

The documentation for this class was generated from the following files: