The QPointArray class provides an array of points. More...
#include <qpointarray.h>
Inherits QArray.
The QPointArray is an array of QPoint objects. In addition to the functions provided by QArray, QPointArray provides some handy methods:
For convenient reading and writing of the point data: setPoints(), putPoints(), point(), and setPoint().
For geometry operations: boundingRect() and translate(). As for the latter, note that QWMatrix provides a map() function for more general transformation of QPointArrays.
QPointArray is used by the QPainter to draw line segments, polylines, polygons and Bezier curves.
Note that since this class is a QArray, it is explicitly shared and works with shallow copies by default.
Examples: drawdemo/drawdemo.cpp desktop/desktop.cpp picture/picture.cpp
Constructs a null point array.
See also: isNull().
Constructs a point array from the rectangle r.
If closed is FALSE, then the point array will contain the following four points (in the listed order):
If closed is TRUE, then a fifth point is set to r.topLeft() to close the point array.
Constructs a shallow copy of the point array a.
See also: copy().
Constructs a point array with nPoints points, taken from the points array.
Equivalent to setPoints(nPoints,points).
Constructs a point array with room for size points. Makes a null array if size == 0.
See also: resize() and isNull().
Returns the bounding rectangle of the points in the array, or QRect(0,0,0,0) if the array is empty.
[static]
For internal use only.
Creates a deep copy of the array.
Sets the points of the array to those describing an arc of an ellipse with size w by h and position (x, y ), starting from angle \a1, spanning a2. The resulting array has sufficient resolution for pixel accuracy (see the overloaded function which takes an additional QWMatrix parameter).
Angles are specified in 16ths of a degree, i.e. a full circle equals 5760 (16*360). Positive values mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3'o clock position.
Sets the points of the array to those describing an arc of an ellipse with size w by h and position (x, y ), starting from angle \a1, spanning a2, transformed by the matrix xf. The resulting array has sufficient resolution for pixel accuracy.
Angles are specified in 16ths of a degree, i.e. a full circle equals 5760 (16*360). Positive values mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3'o clock position.
Sets the points of the array to those describing an ellipse with size w by h and position (x, y ).
The returned array has sufficient resolution for use as pixels (see the overloaded function which takes an additional QWMatrix parameter).
Assigns a shallow copy of a to this point array and returns a reference to this point array.
Equivalent to assign( a ).
See also: copy().
Returns the point at position index in the array.
Examples: drawdemo/drawdemo.cpp
Returns the point at position index in the array in *x and *y.
Copies nPoints points from the points array into this point array.
Will resize this point array if index+nPoints
exceeds
the size of the array.
Returns TRUE if successful, or FALSE if the array could not be resized.
Example:
QPointArray a( 1 ); a[0] = QPoint( 1, 2 ); static QCOORD points[] = { 3,4, 5,6 }; a.putPoints( 1, 2, points );
The example code creates an array with three points: (1,2), (3,4) and (5,6).
This function differs from setPoints() in that it does not resize the array unless the array size is exceeded.
See also: resize() and setPoints().
Copies nPoints points from the variable argument list into this point
array. Will resize this point array if index+nPoints
exceeds
the size of the array.
Returns TRUE if successful, or FALSE if the array could not be resized.
Example:
QPointArray a( 1 ); a[0] = QPoint( 1, 2 ); a.putPoints( 1, 2, 3,4, 5,6 );
The example code creates an array with two points (1,2), (3,4) and (5,6).
This function differs from setPoints() because it does not resize the array unless the array size is exceeded.
See also: resize() and setPoints().
Returns the Bezier points for the four control points in this array.
Examples: drawdemo/drawdemo.cpp
Equivalent to setPoint( i, p.x(), p.y() ).
Examples: drawdemo/drawdemo.cpp
Sets the point at position index in the array to (x,y).
Resizes the array to nPoints and sets the points in the array to the values taken from points.
Returns TRUE if successful, or FALSE if the array could not be resized.
Example:
static QCOORD points[] = { 1,2, 3,4 }; QPointArray a; a.setPoints( 2, points );
The example code creates an array with two points (1,2) and (3,4).
See also: resize() and putPoints().
Resizes the array to nPoints and sets the points in the array to the values taken from the variable argument list.
Returns TRUE if successful, or FALSE if the array could not be resized.
Example:
QPointArray a; a.setPoints( 2, 1,2, 3,4 );
The example code creates an array with two points (1,2) and (3,4).
See also: resize() and putPoints().
For internal use only.
Translates all points in the array (dx,dy).
Reads a point array from the stream and returns a reference to the stream.
Writes a point array to the stream and returns a reference to the stream.
The serialization format is:
Search the documentation, FAQ, qt-interest archive and more (uses
www.troll.no):
This file is part of the Qt toolkit, copyright © 1995-99 Troll Tech, all rights reserved.
Copyright © 1999 Troll Tech | Trademarks | Qt version 2.0.2
|