Curved arrows.
More...
#include <bezier-arrow.h>
List of all members.
Public Member Functions |
| | BezierArrow (Canvas *canvas) |
| | BezierArrow (Group *parent, ItemClient *client=NULL) |
| virtual | ~BezierArrow () |
| double | Distance (double x, double y, Item **item) const |
| void | Draw (cairo_t *cr, bool is_vector) const |
| void | Move (double x, double y) |
| void | GetControlPoints (double &x0, double &y0, double &x1, double &y1, double &x2, double &y2, double &x3, double &y3) |
| void | SetControlPoints (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3) |
| void | SetHead (ArrowHeads val) |
| ArrowHeads | GetHead (void) const |
| void | SetA (double val) |
| double | GetA (void) const |
| void | SetB (double val) |
| double | GetB (void) const |
| void | SetC (double val) |
| double | GetC (void) const |
| void | SetShowControls (bool val) |
| bool | GetShowControls (void) const |
| | LineItem (Canvas *canvas) |
| | LineItem (Group *parent, ItemClient *client=NULL) |
| virtual | ~LineItem () |
| void | SetLineWidth (double val) |
| double | GetLineWidth (void) const |
| void | SetLineColor (GOColor val) |
| GOColor | GetLineColor (void) const |
| | Item (Canvas *canvas) |
| | Item (Group *parent, ItemClient *client=NULL) |
| virtual | ~Item () |
| void | GetBounds (double &x0, double &y0, double &x1, double &y1) const |
| void | Invalidate () const |
| void | SetVisible (bool visible) |
| virtual bool | Draw (cairo_t *cr, double x0, double y0, double x1, double y1, bool is_vector) const |
| void | SetClient (ItemClient *val) |
| ItemClient * | GetClient (void) |
| Group const * | GetParent (void) const |
| bool | GetVisible (void) const |
| void | SetOperator (cairo_operator_t val) |
| cairo_operator_t | GetOperator (void) const |
Detailed Description
Curved arrows.
Arrow composed of a Bezier cubic curve and an arrow head.
Definition at line 40 of file bezier-arrow.h.
Constructor & Destructor Documentation
| gccv::BezierArrow::BezierArrow |
( |
Canvas * |
canvas | ) |
|
- Parameters:
-
Creates a new BezierArrow with a full head and sets it as a child of the root Group of canvas.
| gccv::BezierArrow::BezierArrow |
( |
Group * |
parent, |
|
|
ItemClient * |
client = NULL |
|
) |
| |
- Parameters:
-
Creates a new BezierArrow with a full head inside parent and sets client as its associated ItemClient.
| virtual gccv::BezierArrow::~BezierArrow |
( |
| ) |
|
|
virtual |
Member Function Documentation
| double gccv::BezierArrow::Distance |
( |
double |
x, |
|
|
double |
y, |
|
|
Item ** |
item |
|
) |
| const |
|
virtual |
| void gccv::BezierArrow::Draw |
( |
cairo_t * |
cr, |
|
|
bool |
is_vector |
|
) |
| const |
|
virtual |
- Parameters:
-
| cr | a cairo_t. |
| is_vector | whether the cairo_t is a vectorial context. |
Draws the BezierArrow to cr.
Reimplemented from gccv::Item.
| gccv::BezierArrow::GetA |
( |
void |
| ) |
const |
|
inline |
- Returns:
- the distance from tip of arrowhead to center.
Definition at line 139 of file bezier-arrow.h.
| gccv::BezierArrow::GetB |
( |
void |
| ) |
const |
|
inline |
- Returns:
- the distance from tip of arrowhead to trailing point, measured along shaft.
Definition at line 149 of file bezier-arrow.h.
| gccv::BezierArrow::GetC |
( |
void |
| ) |
const |
|
inline |
- Returns:
- the distance of arrowhead trailing points from outside edge of shaft.
Definition at line 158 of file bezier-arrow.h.
| void gccv::BezierArrow::GetControlPoints |
( |
double & |
x0, |
|
|
double & |
y0, |
|
|
double & |
x1, |
|
|
double & |
y1, |
|
|
double & |
x2, |
|
|
double & |
y2, |
|
|
double & |
x3, |
|
|
double & |
y3 |
|
) |
| |
- Parameters:
-
| x0 | where to store the horizontal coordinate of the first control point. |
| y0 | where to store the horizontal coordinate of the first control point. |
| x1 | where to store the horizontal coordinate of the second control point. |
| y1 | where to store the horizontal coordinate of the second control point. |
| x2 | where to store the horizontal coordinate of the third control point. |
| y2 | where to store the horizontal coordinate of the third control point. |
| x3 | where to store the horizontal coordinate of the fourth control point. |
| y3 | where to store the horizontal coordinate of the fourth control point. |
Retrieves the coordinates of the four control points used to build the Bezier cubic curve.
| gccv::BezierArrow::GetHead |
( |
void |
| ) |
const |
|
inline |
- Returns:
- the ArrowHeads for the end position of the arrow.
Definition at line 130 of file bezier-arrow.h.
| gccv::BezierArrow::GetShowControls |
( |
void |
| ) |
const |
|
inline |
| void gccv::BezierArrow::Move |
( |
double |
x, |
|
|
double |
y |
|
) |
| |
|
virtual |
- Parameters:
-
| x | the horizontal deplacement |
| y | the vertical deplacement |
Moves the BezierArrow.
Reimplemented from gccv::Item.
| gccv::BezierArrow::SetA |
( |
double |
A | ) |
|
|
inline |
- Parameters:
-
| A | new arrow head size parameter. |
Sets the distance from tip of arrowhead to center.
Definition at line 139 of file bezier-arrow.h.
| gccv::BezierArrow::SetB |
( |
double |
B | ) |
|
|
inline |
- Parameters:
-
| B | new arrow head size parameter. |
Sets the distance from tip of arrowhead to trailing point, measured along shaft.
Definition at line 149 of file bezier-arrow.h.
| gccv::BezierArrow::SetC |
( |
double |
C | ) |
|
|
inline |
- Parameters:
-
| C | new arrow head size parameter. |
Sets the distance of arrowhead trailing points from outside edge of shaft.
Definition at line 158 of file bezier-arrow.h.
| void gccv::BezierArrow::SetControlPoints |
( |
double |
x0, |
|
|
double |
y0, |
|
|
double |
x1, |
|
|
double |
y1, |
|
|
double |
x2, |
|
|
double |
y2, |
|
|
double |
x3, |
|
|
double |
y3 |
|
) |
| |
- Parameters:
-
| x0 | the new horizontal coordinate of the first control point. |
| y0 | the new horizontal coordinate of the first control point. |
| x1 | the new horizontal coordinate of the second control point. |
| y1 | the new horizontal coordinate of the second control point. |
| x2 | the new horizontal coordinate of the third control point. |
| y2 | the new horizontal coordinate of the third control point. |
| x3 | the new horizontal coordinate of the fourth control point. |
| y3 | the new horizontal coordinate of the fourth control point. |
Sets the coordinates of the four control points used to build the Bezier cubic curve.
- Parameters:
-
| Head | the ArrowHeads for the end position of the arrow. |
Sets the arrow head type at the segment end position.
Definition at line 130 of file bezier-arrow.h.
| gccv::BezierArrow::SetShowControls |
( |
bool |
ShowControls | ) |
|
|
inline |
- Parameters:
-
| ShowControls | whether to show control points. |
If set to true, the control points will be displayed as squares. Lhe size of these squares is five times the line witdth.
Definition at line 169 of file bezier-arrow.h.
| void gccv::BezierArrow::UpdateBounds |
( |
| ) |
|
|
protectedvirtual |
The documentation for this class was generated from the following file: