wxShapeFramework
1.13.0 beta
|
Interpolation line shape. The class extends wxSFLineShape class and allows user to create curved connection line. More...
#include <CurveShape.h>
Public Member Functions | |
XS_DECLARE_CLONABLE_CLASS (wxSFCurveShape) | |
wxSFCurveShape () | |
Default constructor. | |
wxSFCurveShape (long src, long trg, const wxXS::RealPointList &path, wxSFDiagramManager *manager) | |
User constructor. | |
wxSFCurveShape (const wxSFCurveShape &obj) | |
Copy constructor. | |
virtual | ~wxSFCurveShape () |
Destructor. | |
virtual wxRect | GetBoundingBox () |
Get line's bounding box. The function can be overrided if neccessary. | |
wxRealPoint | GetPoint (size_t segment, double offset) |
Get a line point laying on the given line segment and shifted from the beggining of the segment by given offset. | |
Protected Member Functions | |
virtual void | DrawCompleteLine (wxDC &dc) |
Internal function used for drawing of completed line shape. | |
Private Member Functions | |
void | GetSegmentQuaternion (size_t segment, wxRealPoint &A, wxRealPoint &B, wxRealPoint &C, wxRealPoint &D) |
Auxiliary drawing function. | |
void | Catmul_Rom_Kubika (const wxRealPoint &A, const wxRealPoint &B, const wxRealPoint &C, const wxRealPoint &D, wxDC &dc) |
Auxiliary drawing function. | |
wxRealPoint | Coord_Catmul_Rom_Kubika (const wxRealPoint &p1, const wxRealPoint &p2, const wxRealPoint &p3, const wxRealPoint &p4, double t) |
Auxiliary drawing function. |
Interpolation line shape. The class extends wxSFLineShape class and allows user to create curved connection line.
Default constructor.
wxSFCurveShape::wxSFCurveShape | ( | long | src, |
long | trg, | ||
const wxXS::RealPointList & | path, | ||
wxSFDiagramManager * | manager | ||
) |
User constructor.
src | ID of the source shape |
trg | ID of the target shape |
path | Array of line's control points |
manager | Parent parent diagram manager |
wxSFCurveShape::wxSFCurveShape | ( | const wxSFCurveShape & | obj | ) |
Copy constructor.
obj | Reference to the source object |
virtual wxSFCurveShape::~wxSFCurveShape | ( | ) | [virtual] |
Destructor.
void wxSFCurveShape::Catmul_Rom_Kubika | ( | const wxRealPoint & | A, |
const wxRealPoint & | B, | ||
const wxRealPoint & | C, | ||
const wxRealPoint & | D, | ||
wxDC & | dc | ||
) | [private] |
Auxiliary drawing function.
wxRealPoint wxSFCurveShape::Coord_Catmul_Rom_Kubika | ( | const wxRealPoint & | p1, |
const wxRealPoint & | p2, | ||
const wxRealPoint & | p3, | ||
const wxRealPoint & | p4, | ||
double | t | ||
) | [private] |
Auxiliary drawing function.
virtual void wxSFCurveShape::DrawCompleteLine | ( | wxDC & | dc | ) | [protected, virtual] |
Internal function used for drawing of completed line shape.
dc | Refernce of the device context where the shape will be darwn to |
Reimplemented from wxSFLineShape.
virtual wxRect wxSFCurveShape::GetBoundingBox | ( | ) | [virtual] |
Get line's bounding box. The function can be overrided if neccessary.
Reimplemented from wxSFLineShape.
wxRealPoint wxSFCurveShape::GetPoint | ( | size_t | segment, |
double | offset | ||
) |
Get a line point laying on the given line segment and shifted from the beggining of the segment by given offset.
segment | Zero-based index of the line segment |
offset | Real value in the range from 0 to 1 which determines the linepoint offset inside the line segment |
void wxSFCurveShape::GetSegmentQuaternion | ( | size_t | segment, |
wxRealPoint & | A, | ||
wxRealPoint & | B, | ||
wxRealPoint & | C, | ||
wxRealPoint & | D | ||
) | [private] |
Auxiliary drawing function.