cairomm 1.18.0
|
#include <cairomm/pattern.h>
Public Member Functions | |
LinearGradient (cairo_pattern_t *cobject, bool has_reference=false) | |
Create a C++ wrapper for the C instance. More... | |
void | get_linear_points (double & x0, double & y0, double & x1, double & y1) const |
~LinearGradient () override | |
Public Member Functions inherited from Cairo::Gradient | |
Gradient (cairo_pattern_t *cobject, bool has_reference=false) | |
Create a C++ wrapper for the C instance. More... | |
~Gradient () override | |
void | add_color_stop_rgb (double offset, double red, double green, double blue) |
Adds an opaque color stop to a gradient pattern. More... | |
void | add_color_stop_rgba (double offset, double red, double green, double blue, double alpha) |
Adds a translucent color stop to a gradient pattern. More... | |
std::vector< ColorStop > | get_color_stops () const |
Gets the color stops and offsets for this Gradient. More... | |
Public Member Functions inherited from Cairo::Pattern | |
Pattern (cairo_pattern_t *cobject, bool has_reference=false) | |
Create a C++ wrapper for the C instance. More... | |
Pattern (const Pattern &)=delete | |
Pattern & | operator= (const Pattern &)=delete |
virtual | ~Pattern () |
void | set_matrix (const Matrix & matrix) |
Sets the pattern's transformation matrix to @matrix. More... | |
void | get_matrix (Matrix & matrix) const |
Returns the pattern's transformation matrix. More... | |
Matrix | get_matrix () const |
Returns the pattern's transformation matrix. More... | |
Type | get_type () const |
Returns the type of the pattern. More... | |
void | set_extend (Extend extend) |
Sets the mode to be used for drawing outside the area of a pattern. More... | |
Extend | get_extend () const |
Gets the current extend mode See Cairo::Extend for details on the semantics of each extend strategy. More... | |
cobject * | cobj () |
const cobject * | cobj () const |
void | reference () const |
void | unreference () const |
Static Public Member Functions | |
static RefPtr< LinearGradient > | create (double x0, double y0, double x1, double y1) |
Create a new linear gradient Cairo::Pattern along the line defined by (x0, y0) and (x1, y1). More... | |
Protected Member Functions | |
LinearGradient (double x0, double y0, double x1, double y1) | |
Protected Member Functions inherited from Cairo::Gradient | |
Gradient () | |
Protected Member Functions inherited from Cairo::Pattern | |
Pattern () | |
Additional Inherited Members | |
Public Types inherited from Cairo::Pattern | |
enum class | Type { SOLID = CAIRO_PATTERN_TYPE_SOLID , SURFACE = CAIRO_PATTERN_TYPE_SURFACE , LINEAR = CAIRO_PATTERN_TYPE_LINEAR , RADIAL = CAIRO_PATTERN_TYPE_RADIAL } |
Type is used to describe the type of a given pattern. More... | |
enum class | Extend { NONE = CAIRO_EXTEND_NONE , REPEAT = CAIRO_EXTEND_REPEAT , REFLECT = CAIRO_EXTEND_REFLECT , PAD = CAIRO_EXTEND_PAD } |
Cairo::Extend is used to describe how pattern color/alpha will be determined for areas "outside" the pattern's natural area, (for example, outside the surface bounds or outside the gradient geometry). More... | |
typedef cairo_pattern_t | cobject |
Protected Attributes inherited from Cairo::Pattern | |
cobject * | m_cobject |
|
protected |
|
explicit |
Create a C++ wrapper for the C instance.
This C++ instance should then be given to a RefPtr.
cobject | The C instance. |
has_reference | Whether we already have a reference. Otherwise, the constructor will take an extra reference. |
|
override |
|
static |
Create a new linear gradient Cairo::Pattern along the line defined by (x0, y0) and (x1, y1).
Before using the gradient pattern, a number of color stops should be defined using Cairo::Gradient::add_color_stop_rgb() or Cairo::Gradient::add_color_stop_rgba().
Note: The coordinates here are in pattern space. For a new pattern, pattern space is identical to user space, but the relationship between the spaces can be changed with Cairo::Pattern::set_matrix().
x0 | x coordinate of the start point |
y0 | y coordinate of the start point |
x1 | x coordinate of the end point |
y1 | y coordinate of the end point |
void Cairo::LinearGradient::get_linear_points | ( | double & | x0, |
double & | y0, | ||
double & | x1, | ||
double & | y1 | ||
) | const |
x0 | return value for the x coordinate of the first point |
y0 | return value for the y coordinate of the first point |
x1 | return value for the x coordinate of the second point |
y1 | return value for the y coordinate of the second point |
Gets the gradient endpoints for a linear gradient.