Q3CanvasSpline Class
The Q3CanvasSpline class provides multi-bezier splines on a Q3Canvas. More...
Header: | #include <Q3CanvasSpline> |
Inherits: | Q3CanvasPolygon |
Public Functions
Q3CanvasSpline(Q3Canvas * canvas) | |
~Q3CanvasSpline() | |
bool | closed() const |
Q3PointArray | controlPoints() const |
void | setControlPoints(Q3PointArray ctrl, bool close = true) |
Reimplemented Public Functions
virtual int | rtti() const |
- 5 public functions inherited from Q3CanvasPolygon
- 9 public functions inherited from Q3CanvasPolygonalItem
- 34 public functions inherited from Q3CanvasItem
Additional Inherited Members
- 1 protected function inherited from Q3CanvasPolygon
- 6 protected functions inherited from Q3CanvasPolygonalItem
- 1 protected function inherited from Q3CanvasItem
Detailed Description
The Q3CanvasSpline class provides multi-bezier splines on a Q3Canvas.
A Q3CanvasSpline is a sequence of 4-point bezier curves joined together to make a curved shape.
You set the control points of the spline with setControlPoints().
If the bezier is closed(), then the first control point will be re-used as the last control point. Therefore, a closed bezier must have a multiple of 3 control points and an open bezier must have one extra point.
The beziers are not necessarily joined "smoothly". To ensure this, set control points appropriately (general reference texts about beziers will explain this in detail).
Like any other canvas item splines can be moved with Q3CanvasItem::move() and Q3CanvasItem::moveBy(), or by setting coordinates with Q3CanvasItem::setX(), Q3CanvasItem::setY() and Q3CanvasItem::setZ().
See also QtCanvas and Porting to Graphics View.
Member Function Documentation
Q3CanvasSpline::Q3CanvasSpline(Q3Canvas * canvas)
Create a spline with no control points on the canvas canvas.
See also setControlPoints().
Q3CanvasSpline::~Q3CanvasSpline()
Destroy the spline.
bool Q3CanvasSpline::closed() const
Returns true if the control points are a closed set; otherwise returns false.
Q3PointArray Q3CanvasSpline::controlPoints() const
Returns the current set of control points.
See also setControlPoints() and closed().
[virtual]
int Q3CanvasSpline::rtti() const
Reimplemented from Q3CanvasItem::rtti().
Returns 8 (Q3CanvasItem::Rtti_Spline).
See also Q3CanvasItem::rtti().
void Q3CanvasSpline::setControlPoints(Q3PointArray ctrl, bool close = true)
Set the spline control points to ctrl.
If close is true, then the first point in ctrl will be re-used as the last point, and the number of control points must be a multiple of 3. If close is false, one additional control point is required, and the number of control points must be one of (4, 7, 10, 13, ...).
If the number of control points doesn't meet the above conditions, the number of points will be truncated to the largest number of points that do meet the requirement.
See also controlPoints().
© 2016 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.