#include <path.h>

Public Member Functions

virtual void add (const std::shared_ptr< Path > &path)=0
 Add all subpaths in path to this path. More...
 
void add_circle (float center_x, float center_y, float radius)
 
void add_circle (const Pointf &center, float radius)
 
void add_ellipse (float center_x, float center_y, float radius_x, float radius_y)
 
virtual void add_ellipse (const Pointf &center, const Sizef &radius)=0
 
virtual void add_line (const Pointf &start, const Pointf &end)=0
 
void add_line (float x1, float y1, float x2, float y2)
 
virtual void add_rect (const Rectf &box)=0
 
void add_rect (float x, float y, float width, float height)
 
virtual void add_rect (const Rectf &box, const uicore::Sizef &corner)=0
 
virtual void apply_transform (const Mat3f &transform)=0
 Apply a transformation matrix on all points in this path. More...
 
virtual void bezier_to (const Pointf &control, const Pointf &point)=0
 
virtual void bezier_to (const Pointf &control1, const Pointf &control2, const Pointf &point)=0
 
virtual std::shared_ptr< Pathclone () const =0
 
virtual void close ()=0
 
virtual void fill (const CanvasPtr &canvas, const Brush &brush)=0
 Fills a path. More...
 
virtual void fill_and_stroke (const CanvasPtr &canvas, const Pen &pen, const Brush &brush)=0
 First fills a path, then strokes on top. More...
 
virtual PathFillMode fill_mode () const =0
 
virtual void line_to (const Pointf &point)=0
 
void line_to (float x, float y)
 
virtual void move_to (const Pointf &point)=0
 
void move_to (float x, float y)
 
virtual void set_fill_mode (PathFillMode fill_mode)=0
 
virtual void stroke (const CanvasPtr &canvas, const Pen &pen)=0
 Strokes a path. More...
 

Static Public Member Functions

static std::shared_ptr< Pathcircle (float center_x, float center_y, float radius)
 
static std::shared_ptr< Pathcircle (const Pointf &center, float radius)
 
static std::shared_ptr< Pathcreate ()
 
static std::shared_ptr< Pathellipse (float center_x, float center_y, float radius_x, float radius_y)
 
static std::shared_ptr< Pathellipse (const Pointf &center, const Sizef &radius)
 
static std::shared_ptr< Pathglyph (const CanvasPtr &canvas, const FontPtr &font, unsigned int glyph, GlyphMetrics &out_metrics)
 
static std::shared_ptr< Pathline (const Pointf &start, const Pointf &end)
 
static std::shared_ptr< Pathline (float x1, float y1, float x2, float y2)
 
static std::shared_ptr< Pathrect (const Rectf &box)
 
static std::shared_ptr< Pathrect (float x, float y, float width, float height)
 
static std::shared_ptr< Pathrect (const Rectf &box, const uicore::Sizef &corner)
 

Member Function Documentation

virtual void uicore::Path::add ( const std::shared_ptr< Path > &  path)
pure virtual

Add all subpaths in path to this path.

void uicore::Path::add_circle ( float  center_x,
float  center_y,
float  radius 
)
inline

References add_ellipse().

void uicore::Path::add_circle ( const Pointf center,
float  radius 
)
inline

References add_ellipse().

void uicore::Path::add_ellipse ( float  center_x,
float  center_y,
float  radius_x,
float  radius_y 
)
inline

References add_ellipse().

Referenced by add_circle(), and add_ellipse().

virtual void uicore::Path::add_ellipse ( const Pointf center,
const Sizef radius 
)
pure virtual
virtual void uicore::Path::add_line ( const Pointf start,
const Pointf end 
)
pure virtual
void uicore::Path::add_line ( float  x1,
float  y1,
float  x2,
float  y2 
)
inline

References add_line().

Referenced by add_line().

virtual void uicore::Path::add_rect ( const Rectf box)
pure virtual
void uicore::Path::add_rect ( float  x,
float  y,
float  width,
float  height 
)
inline

References add_rect().

Referenced by add_rect().

virtual void uicore::Path::add_rect ( const Rectf box,
const uicore::Sizef corner 
)
pure virtual
virtual void uicore::Path::apply_transform ( const Mat3f transform)
pure virtual

Apply a transformation matrix on all points in this path.

virtual void uicore::Path::bezier_to ( const Pointf control,
const Pointf point 
)
pure virtual
virtual void uicore::Path::bezier_to ( const Pointf control1,
const Pointf control2,
const Pointf point 
)
pure virtual
static std::shared_ptr<Path> uicore::Path::circle ( float  center_x,
float  center_y,
float  radius 
)
inlinestatic

References ellipse().

static std::shared_ptr<Path> uicore::Path::circle ( const Pointf center,
float  radius 
)
inlinestatic

References ellipse().

virtual std::shared_ptr<Path> uicore::Path::clone ( ) const
pure virtual
virtual void uicore::Path::close ( )
pure virtual
static std::shared_ptr<Path> uicore::Path::create ( )
static

Referenced by ellipse(), line(), and rect().

static std::shared_ptr<Path> uicore::Path::ellipse ( float  center_x,
float  center_y,
float  radius_x,
float  radius_y 
)
inlinestatic

Referenced by circle().

static std::shared_ptr<Path> uicore::Path::ellipse ( const Pointf center,
const Sizef radius 
)
inlinestatic

References create().

virtual void uicore::Path::fill ( const CanvasPtr canvas,
const Brush brush 
)
pure virtual

Fills a path.

virtual void uicore::Path::fill_and_stroke ( const CanvasPtr canvas,
const Pen pen,
const Brush brush 
)
pure virtual

First fills a path, then strokes on top.

virtual PathFillMode uicore::Path::fill_mode ( ) const
pure virtual
static std::shared_ptr<Path> uicore::Path::glyph ( const CanvasPtr canvas,
const FontPtr font,
unsigned int  glyph,
GlyphMetrics out_metrics 
)
static
static std::shared_ptr<Path> uicore::Path::line ( const Pointf start,
const Pointf end 
)
inlinestatic

References create().

Referenced by line().

static std::shared_ptr<Path> uicore::Path::line ( float  x1,
float  y1,
float  x2,
float  y2 
)
inlinestatic

References line().

virtual void uicore::Path::line_to ( const Pointf point)
pure virtual
void uicore::Path::line_to ( float  x,
float  y 
)
inline

References line_to().

Referenced by line_to().

virtual void uicore::Path::move_to ( const Pointf point)
pure virtual
void uicore::Path::move_to ( float  x,
float  y 
)
inline

References move_to().

Referenced by move_to().

static std::shared_ptr<Path> uicore::Path::rect ( const Rectf box)
inlinestatic

References create().

Referenced by rect().

static std::shared_ptr<Path> uicore::Path::rect ( float  x,
float  y,
float  width,
float  height 
)
inlinestatic

References rect().

static std::shared_ptr<Path> uicore::Path::rect ( const Rectf box,
const uicore::Sizef corner 
)
inlinestatic

References create().

virtual void uicore::Path::set_fill_mode ( PathFillMode  fill_mode)
pure virtual
virtual void uicore::Path::stroke ( const CanvasPtr canvas,
const Pen pen 
)
pure virtual

Strokes a path.


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