gccv::Arrow Class Reference

Simple arrows class. More...

#include <arrow.h>

Inheritance diagram for gccv::Arrow:

gccv::Line gccv::LineItem gccv::Item

List of all members.

Public Member Functions

 Arrow (Canvas *canvas, double xstart, double ystart, double xend, double yend)
 Arrow (Group *parent, double xstart, double ystart, double xend, double yend, ItemClient *client=NULL)
virtual ~Arrow ()
double Distance (double x, double y, Item **item) const
void Draw (cairo_t *cr, bool is_vector) const
void SetStartHead (ArrowHeads val)
ArrowHeads GetStartHead (void) const
void SetEndHead (ArrowHeads val)
ArrowHeads GetEndHead (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

Protected Member Functions

void UpdateBounds ()


Detailed Description

Simple arrows class.

Item class for arrows composed of a straight line with one or both ends decorated with an arrow head.

Definition at line 41 of file gccv/arrow.h.


Constructor & Destructor Documentation

gccv::Arrow::Arrow ( Canvas canvas,
double  xstart,
double  ystart,
double  xend,
double  yend 
)

Parameters:
canvas a Canvas.
xstart the horizontal start position.
ystart the vertical start position.
xend the horizontal end position.
yend the vertical end position.
Creates a new Arrow with a full head at end and no head at start and sets it as a child of the root Group of canvas.

gccv::Arrow::Arrow ( Group parent,
double  xstart,
double  ystart,
double  xend,
double  yend,
ItemClient client = NULL 
)

Parameters:
parent the Group to which the new Arrow will be added.
xstart the horizontal start position.
ystart the vertical start position.
xend the horizontal end position.
yend the vertical end position.
client the ItemClient for the new Arrow if any.
Creates a new Arrow with a full head at end and no head at start inside parent and sets client as its associated ItemClient.

virtual gccv::Arrow::~Arrow (  )  [virtual]

The destructor.


Member Function Documentation

double gccv::Arrow::Distance ( double  x,
double  y,
Item **  item 
) const [virtual]

Parameters:
x horizontal position
y vertical position
item where to store the Item.
Implementation of Item::Distance() for the Arrow class. Sets item to this.

Reimplemented from gccv::Line.

void gccv::Arrow::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 Arrow to cr.

Reimplemented from gccv::Line.

gccv::Arrow::GetA ( void   )  const [inline]

Returns:
the distance from tip of arrowhead to center.

Definition at line 123 of file gccv/arrow.h.

gccv::Arrow::GetB ( void   )  const [inline]

Returns:
the distance from tip of arrowhead to trailing point, measured along shaft.

Definition at line 133 of file gccv/arrow.h.

gccv::Arrow::GetC ( void   )  const [inline]

Returns:
the distance of arrowhead trailing points from outside edge of shaft.

Definition at line 142 of file gccv/arrow.h.

gccv::Arrow::GetEndHead ( void   )  const [inline]

Returns:
the ArrowHeads for the end position of the arrow.

Definition at line 114 of file gccv/arrow.h.

gccv::Arrow::GetStartHead ( void   )  const [inline]

Returns:
the ArrowHeads for the start position of the arrow.

Definition at line 105 of file gccv/arrow.h.

gccv::Arrow::SetA ( double  A  )  [inline]

Parameters:
A new arrow head size parameter.
Sets the distance from tip of arrowhead to center.

Definition at line 123 of file gccv/arrow.h.

gccv::Arrow::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 133 of file gccv/arrow.h.

gccv::Arrow::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 142 of file gccv/arrow.h.

gccv::Arrow::SetEndHead ( ArrowHeads  EndHead  )  [inline]

Parameters:
EndHead the ArrowHeads for the end position of the arrow.
Sets the arrow head type at the segment end position.

Definition at line 114 of file gccv/arrow.h.

gccv::Arrow::SetStartHead ( ArrowHeads  StartHead  )  [inline]

Parameters:
StartHead the ArrowHeads for the start position of the arrow.
Sets the arrow head type at the segment start position.

Definition at line 105 of file gccv/arrow.h.

void gccv::Arrow::UpdateBounds (  )  [protected, virtual]

Evaluates the Arrow bounds.

Reimplemented from gccv::Line.


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

Generated on Fri Sep 24 15:58:42 2010 for The Gnome Chemistry Utils by  doxygen 1.5.9