QRegion Class Reference


The QRegion class specifies a clip region for a painter. More...

#include <qregion.h>

List of all member functions.

Public Members

Related Functions

(Note that these are not member functions.)

Detailed Description

The QRegion class specifies a clip region for a painter.

A region can be a rectangle, an ellipse, a polygon or a combination of these.

Regions are combined by creating a new region which is a union, intersection or difference between any two regions.

The region XOR operation is defined as:

    a XOR b = (a UNION b) - (a INTERSECTION b)

Example of using complex regions:

    void MyWidget::paintEvent( QPaintEvent * )
    {
        QPainter p;                             // our painter
        QRegion r1( QRect(100,100,200,80),      // r1 = elliptic region
                    QRegion::Ellipse );
        QRegion r2( QRect(100,120,90,30) );     // r2 = rectangular region
        QRegion r3 = r1.intersect( r2 );        // r3 = intersection
        p.begin( this );                        // start painting widget
        p.setClipRegion( r3 );                  // set clip region
        ...                                     // paint clipped graphics
        p.end();                                // painting done
    }

See also: QPainter::setClipRegion() and QPainter::setClipRect().


Member Function Documentation

QRegion::QRegion ( const QPointArray &a, bool winding=FALSE)

Constructs a polygon region from the point array a.

If winding is TRUE, the polygon region uses the winding algorithm, otherwise the alternative (even-odd) algorithm will be used.

QRegion::QRegion ( const QRect &r, RegionType t = Rectangle)

Constructs a rectangular or elliptic region.

Arguments:

QRegion::QRegion ( const QRegion &r)

Constructs a region which is a shallow copy of r.

QRegion::QRegion ()

Constructs an empty region.

QRegion::~QRegion ()

Destroys the region.

bool QRegion::contains ( const QPoint &p) const

Returns TRUE if the region contains the point p, or FALSE if p is outside the region.

bool QRegion::contains ( const QRect &r) const

Returns TRUE if the region contains the rectangle r, or FALSE if r is outside the region.

QRegion QRegion::intersect ( const QRegion &r) const

Returns a region which is the intersection of this region and r.

bool QRegion::isEmpty () const

Returns TRUE if the region is empty, or FALSE if it is non-empty.

See also: isNull().

bool QRegion::isNull () const

Returns TRUE if the region is a null region.

See also: isEmpty().

bool QRegion::operator!= ( const QRegion &r) const

Returns TRUE if the region is different from r, or FALSE if the regions are equal.

QRegion & QRegion::operator= ( const QRegion &r)

Assigns a shallow copy of r to this region and returns a reference to the region.

bool QRegion::operator== ( const QRegion &r) const

Returns TRUE if the region is equal to r, or FALSE if the regions are different.

QRegion QRegion::subtract ( const QRegion &r) const

Returns a region which is r subtracted from this region.

void QRegion::translate ( int dx, int dy)

Translates the region dx along the X axis and dy along the Y axis.

QRegion QRegion::unite ( const QRegion &r) const

Returns a region which is the union of this region and r.

QRegion QRegion::xor ( const QRegion &r) const

Returns a region which is this region XOR r.


Related Functions

QDataStream & operator<< ( QDataStream &s, const QRegion &r)

Writes a region to the stream and returns a reference to the stream.

QDataStream & operator>> ( QDataStream &s, QRegion &r)

Reads a region from the stream and returns a reference to the stream.


This file is part of the Qt toolkit, copyright © 1995-96 Troll Tech, all rights reserved.

It was generated from the following files:


Generated at 16:51, 1996/09/24 for Qt version 1.0 by the webmaster at Troll Tech