📄 qpointarray.3qt
字号:
'\" t.TH QPointArray 3qt "9 December 2002" "Trolltech AS" \" -*- nroff -*-.\" Copyright 1992-2001 Trolltech AS. All rights reserved. See the.\" license file included in the distribution for a complete license.\" statement..\".ad l.nh.SH NAMEQPointArray \- Array of points.SH SYNOPSIS\fC#include <qpointarray.h>\fR.PPInherits QMemArray<QPoint>..PP.SS "Public Members".in +1c.ti -1c.BI "\fBQPointArray\fR ()".br.ti -1c.BI "\fB~QPointArray\fR ()".br.ti -1c.BI "\fBQPointArray\fR ( int size )".br.ti -1c.BI "\fBQPointArray\fR ( const QPointArray & a )".br.ti -1c.BI "\fBQPointArray\fR ( const QRect & r, bool closed = FALSE )".br.ti -1c.BI "QPointArray & \fBoperator=\fR ( const QPointArray & a )".br.ti -1c.BI "QPointArray \fBcopy\fR () const".br.ti -1c.BI "void \fBtranslate\fR ( int dx, int dy )".br.ti -1c.BI "QRect \fBboundingRect\fR () const".br.ti -1c.BI "void \fBpoint\fR ( uint index, int * x, int * y ) const".br.ti -1c.BI "QPoint \fBpoint\fR ( uint index ) const".br.ti -1c.BI "void \fBsetPoint\fR ( uint index, int x, int y )".br.ti -1c.BI "void \fBsetPoint\fR ( uint i, const QPoint & p )".br.ti -1c.BI "bool \fBputPoints\fR ( int index, int nPoints, int firstx, int firsty, ... )".br.ti -1c.BI "bool \fBputPoints\fR ( int index, int nPoints, const QPointArray & from, int fromIndex = 0 )".br.ti -1c.BI "void \fBmakeArc\fR ( int x, int y, int w, int h, int a1, int a2 )".br.ti -1c.BI "void \fBmakeEllipse\fR ( int x, int y, int w, int h )".br.ti -1c.BI "void \fBmakeArc\fR ( int x, int y, int w, int h, int a1, int a2, const QWMatrix & xf )".br.ti -1c.BI "QPointArray \fBcubicBezier\fR () const".br.in -1c.SH RELATED FUNCTION DOCUMENTATION.in +1c.ti -1c.BI "QDataStream & \fBoperator<<\fR ( QDataStream & s, const QPointArray & a )".br.ti -1c.BI "QDataStream & \fBoperator>>\fR ( QDataStream & s, QPointArray & a )".br.in -1c.SH DESCRIPTIONThe QPointArray class provides an array of points..PPA QPointArray is an array of QPoint objects. In addition to the functions provided by QMemArray, QPointArray provides some point-specific functions..PPFor convenient reading and writing of the point data use setPoints(), putPoints(), point(), and setPoint()..PPFor geometry operations: boundingRect() and translate(). There is also a QWMatrix::map() function for more general transformation of QPointArrays. You can also create arcs and ellipses with makeArc() and makeEllipse()..PPAmong others, QPointArray is used by QPainter::drawLineSegments(), QPainter::drawPolyline(), QPainter::drawPolygon() and QPainter::drawCubicBezier()..PPNote that because this class is a QMemArray, copying an array and modifying the copy modifies the original as well, i.e. a shallow copy. If you need a deep copy use copy() or detach(), for example:.PP.nf.br void drawGiraffe( const QPointArray & r, QPainter * p ).br {.br QPointArray tmp = r;.br tmp.detach();.br // some code that modifies tmp.br p->drawPoints( tmp );.br }.br.fi.PPIf you forget the tmp.detach(), the const array will be modified..PPSee also QPainter, QWMatrix, QMemArray, Graphics Classes, Image Processing Classes, and Implicitly and Explicitly Shared Classes..SH MEMBER FUNCTION DOCUMENTATION.SH "QPointArray::QPointArray ()"Constructs a null point array..PPSee also isNull()..SH "QPointArray::QPointArray ( int size )"Constructs a point array with room for \fIsize\fR points. Makes a null array if \fIsize\fR == 0..PPSee also resize() and isNull()..SH "QPointArray::QPointArray ( const QPointArray & a )"Constructs a shallow copy of the point array \fIa\fR..PPSee also copy()..SH "QPointArray::QPointArray ( const QRect & r, bool closed = FALSE )"Constructs a point array from the rectangle \fIr\fR..PPIf \fIclosed\fR is FALSE, then the point array just contains the following four points in the listed order: r.topLeft(), r.topRight(), r.bottomRight() and r.bottomLeft()..PPIf \fIclosed\fR is TRUE, then a fifth point is set to r.topLeft()..SH "QPointArray::~QPointArray ()"Destroys the point array..SH "QRect QPointArray::boundingRect () const"Returns the bounding rectangle of the points in the array, or QRect(0,0,0,0) if the array is empty..SH "QPointArray QPointArray::copy () const"Creates a deep copy of the array..SH "QPointArray QPointArray::cubicBezier () const"Returns the Bezier points for the four control points in this array..SH "void QPointArray::makeArc ( int x, int y, int w, int h, int a1, int a2 )"Sets the points of the array to those describing an arc of an ellipse with size, width \fIw\fR by height \fIh\fR, and position (\fIx\fR, \fIy\fR), starting from angle \fIa1\fR and spanning by angle \fIa2\fR. The resulting array has sufficient resolution for pixel accuracy (see the overloaded function which takes an additional QWMatrix parameter)..PPAngles are specified in 16ths of a degree, i.e. a full circle equals 5760 (16*360). Positive values mean counter-clockwise, whereas negative values mean the clockwise direction. Zero degrees is at the 3 o'clock position..PPSee the angle diagram..SH "void QPointArray::makeArc ( int x, int y, int w, int h, int a1, int a2, const QWMatrix & xf )"This is an overloaded member function, provided for convenience. It behaves essentially like the above function..PPSets the points of the array to those describing an arc of an ellipse with width \fIw\fR and height \fIh\fR and position (\fIx\fR, \fIy\fR), starting from angle \fIa1\fR, and spanning angle by \fIa2\fR, and transformed by the matrix \fIxf\fR. The resulting array has sufficient resolution for pixel accuracy..PPAngles are specified in 16ths of a degree, i.e. a full circle equals 5760 (16*360). Positive values mean counter-clockwise, whereas negative values mean the clockwise direction. Zero degrees is at the 3 o'clock position..PPSee the angle diagram..SH "void QPointArray::makeEllipse ( int x, int y, int w, int h )"Sets the points of the array to those describing an ellipse with size, width \fIw\fR by height \fIh\fR, and position (\fIx\fR, \fIy\fR)..PPThe returned array has sufficient resolution for use as pixels..SH "QPointArray & QPointArray::operator= ( const QPointArray & a )"Assigns a shallow copy of \fIa\fR to this point array and returns a reference to this point array..PPEquivalent to assign(a)..PPSee also copy()..SH "void QPointArray::point ( uint index, int * x, int * y ) const"Reads the coordinates of the point at position \fIindex\fR within the array and writes them into \fI*x\fR and \fI*y\fR..SH "QPoint QPointArray::point ( uint index ) const"This is an overloaded member function, provided for convenience. It behaves essentially like the above function..PPReturns the point at position \fIindex\fR within the array..SH "bool QPointArray::putPoints ( int index, int nPoints, int firstx, int firsty, ... )"Copies \fInPoints\fR points from the variable argument list into this point array from position \fIindex\fR, and resizes the point array if \fCindex+nPoints\fR exceeds the size of the array..PPReturns TRUE if successful, or FALSE if the array could not be resized (typically due to lack of memory)..PPThe example code creates an array with three points (4,5), (6,7) and (8,9), by expanding the array from 1 to 3 points:.PP.nf.br QPointArray a( 1 );.br a[0] = QPoint( 4, 5 );.br a.putPoints( 1, 2, 6,7, 8,9 ); // index == 1, points == 2.br.fi.PPThis has the same result, but here putPoints overwrites rather than extends:.PP.nf.br QPointArray a( 3 );.br a.putPoints( 0, 3, 4,5, 0,0, 8,9 );.br a.putPoints( 1, 1, 6,7 );.br.fi.PPThe points are given as a sequence of integers, starting with \fIfirstx\fR then \fIfirsty\fR, and so on..PPSee also resize()..SH "bool QPointArray::putPoints ( int index, int nPoints, const QPointArray & from, int fromIndex = 0 )"This is an overloaded member function, provided for convenience. It behaves essentially like the above function..PPThis version of the function copies \fInPoints\fR from \fIfrom\fR into this array, starting at \fIindex\fR in this array and \fIfromIndex\fR in \fIfrom\fR. \fIfromIndex\fR is 0 by default..PP.nf.br QPointArray a;.br a.putPoints( 0, 3, 1,2, 0,0, 5,6 );.br // a is now the three-point array ( 1,2, 0,0, 5,6 );.br QPointArray b;.br b.putPoints( 0, 3, 4,4, 5,5, 6,6 );.br // b is now ( 4,4, 5,5, 6,6 );.br a.putPoints( 2, 3, b );.br // a is now ( 1,2, 0,0, 4,4, 5,5, 6,6 );.br.fi.SH "void QPointArray::setPoint ( uint index, int x, int y )"Sets the point at position \fIindex\fR in the array to \fI(x, y)\fR..PPExample: themes/wood.cpp..SH "void QPointArray::setPoint ( uint i, const QPoint & p )"This is an overloaded member function, provided for convenience. It behaves essentially like the above function..PPSets the point at array index \fIi\fR to \fIp\fR..SH "void QPointArray::translate ( int dx, int dy )"Translates all points in the array by \fI(dx, dy)\fR..SH RELATED FUNCTION DOCUMENTATION.SH "QDataStream & operator<< ( QDataStream & s, const QPointArray & a )"Writes the point array, \fIa\fR to the stream \fIs\fR and returns a reference to the stream..PPSee also Format of the QDataStream operators..SH "QDataStream & operator>> ( QDataStream & s, QPointArray & a )"Reads a point array, \fIa\fR from the stream \fIs\fR and returns a reference to the stream..PPSee also Format of the QDataStream operators..SH "SEE ALSO".BR http://doc.trolltech.com/qpointarray.html.BR http://www.trolltech.com/faq/tech.html.SH COPYRIGHTCopyright 1992-2001 Trolltech AS, http://www.trolltech.com. See thelicense file included in the distribution for a complete licensestatement..SH AUTHORGenerated automatically from the source code..SH BUGSIf you find a bug in Qt, please report it as described in.BR http://doc.trolltech.com/bughowto.html .Good bug reports help us to help you. Thank you..PThe definitive Qt documentation is provided in HTML format; it islocated at $QTDIR/doc/html and can be read using Qt Assistant or witha web browser. This man page is provided as a convenience for thoseusers who prefer man pages, although this format is not officiallysupported by Trolltech. .PIf you find errors in this manual page, please report them to.BR qt-bugs@trolltech.com .Please include the name of the manual page (qpointarray.3qt) and the Qtversion (3.1.1).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -