Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions

QCanvasSpline Class Reference
[canvas module]

The QCanvasSpline class provides multi-bezier splines on a QCanvas. More...

#include <qcanvas.h>

Inherits QCanvasPolygon.

List of all member functions.

Public Members


Detailed Description

The QCanvasSpline class provides multi-bezier splines on a QCanvas.

A QCanvasSpline 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 QCanvasItem::move() and QCanvasItem::moveBy(), or by setting coordinates with QCanvasItem::setX(), QCanvasItem::setY() and QCanvasItem::setZ().

See also Graphics Classes and Image Processing Classes.


Member Function Documentation

QCanvasSpline::QCanvasSpline ( QCanvas * canvas )

Create a spline with no control points on the canvas canvas.

See also setControlPoints().

QCanvasSpline::~QCanvasSpline ()

Destroy the spline.

bool QCanvasSpline::closed () const

Returns TRUE if the control points are a closed set; otherwise returns FALSE.

QPointArray QCanvasSpline::controlPoints () const

Returns the current set of control points.

See also setControlPoints() and closed().

int QCanvasSpline::rtti () const [virtual]

Returns 8 (QCanvasItem::Rtti_Spline).

See also QCanvasItem::rtti().

Reimplemented from QCanvasPolygon.

void QCanvasSpline::setControlPoints ( QPointArray 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.

Example: canvas/canvas.cpp.


This file is part of the Qt toolkit. Copyright © 1995-2003 Trolltech. All Rights Reserved.


Copyright © 2003 TrolltechTrademarks
Qt version 3.1.2