#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< Path > clone () 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< Path > circle (float center_x, float center_y, float radius)
 
static std::shared_ptr< Path > circle (const Pointf &center, float radius)
 
static std::shared_ptr< Path > create ()
 
static std::shared_ptr< Path > ellipse (float center_x, float center_y, float radius_x, float radius_y)
 
static std::shared_ptr< Path > ellipse (const Pointf &center, const Sizef &radius)
 
static std::shared_ptr< Path > glyph (const CanvasPtr &canvas, const FontPtr &font, unsigned int glyph, GlyphMetrics &out_metrics)
 
static std::shared_ptr< Path > line (const Pointf &start, const Pointf &end)
 
static std::shared_ptr< Path > line (float x1, float y1, float x2, float y2)
 
static std::shared_ptr< Path > rect (const Rectf &box)
 
static std::shared_ptr< Path > rect (float x, float y, float width, float height)
 
static std::shared_ptr< Path > rect (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: