Home · All Classes · Main Classes · Grouped Classes · Modules · Functions

Описание Класса QPoint
[модуль QtCore]

Класс QPoint определяет точку на плоскости. Далее...

#include <QPoint>

Открытые Функции

Связанные Не-Члены


Подробное Описание

Класс QPoint определяет точку на плоскости.

Точка задается координатой x и координатой y. Координаты задаются с помощью целых значений. QPointF предоставляет точки, координаты которых задаются числами с плавающей точкой.

Координаты могут быть получены с помощью функций x() и y(); установлены они могут быть с помощью функций setX() и setY(), а ссылки на них, с помощью функций rx() и ry().

Для точки p, следующий действия эквивалентны:

    p.setX(p.x() + 1);
    p += QPoint(1, 0);
    p.rx()++;

QPoint также может использоваться как вектор. Сложение и вычитание QPoints производится по тем-же правилам, что и для векторов (каждый компонент складывается отдельно). Вы можете делить и умножеть QPoint на int или на qreal. Функция manhattanLength() недорого возвращает приближенное значение длины QPoint, интерпретируемого, как вектор.

Пример:

    //QPoint oldPos определно где-нибудь еще
    MyWidget::mouseMoveEvent(QMouseEvent *e)
    {
        QPoint vector = e->pos() - oldPos;
        if (vector.manhattanLength() > 3)
        ... //mouse has moved more than 3 pixels since oldPos
    }

Объекты QPoints могут быть проверены на эквивалентность и неэквивалентность, а также могут быть записаны в и прочитаны из QStream.

См. также QPolygon, QSize, QRect и QPointF.


Описание Функций-Членов

QPoint::QPoint ()

Создает точку с координатами (0, 0) (isNull() возвратит true).

QPoint::QPoint ( int xpos, int ypos )

Создате точку, координата x которой равна xpos, а координата y равна ypos.

bool QPoint::isNull () const

Возвращает true если и координата x, и координата y равны 0; в противном случае возвращает false.

int QPoint::manhattanLength () const

Возвращает сумму абсолютных значений x() и y(), по традиции называемую "Манхэттенской длиной" вектора, начинающегося в нечале координат и заканчивающегося в точке. Такое название произошло от того, что такое расстояние проходит путешественник, который может путешествовать только вдоль осей прямоугольной сетки, подобной улицам Манхэттена.

Функция удобна и быстра для вычисления приближенного значения истинной длины: sqrt(pow(x(),2)+pow(y(),2)).

int & QPoint::rx ()

Возвращает ссылку на координату x точки.

Используется для получения ссылки, дающей возможность напрямую управлять значением x.

Пример:

    QPoint p(1, 2);
    p.rx()--;         // p становится равным (0, 2)

См. также ry() и setX().

int & QPoint::ry ()

Возвращает ссылку на координату y точки.

Используется для получения ссылки, дающей возможность напрямую управлять значением y.

Пример:

    QPoint p(1, 2);
    p.ry()++;         // p становится равным (1, 3)

См. также rx() и setY().

void QPoint::setX ( int x )

Устанавливает координату x точки в значение x.

См. также x() и setY().

void QPoint::setY ( int y )

Устанавливает координату y точки в значение y.

См. также y() и setX().

int QPoint::x () const

Возвращает координату x точки.

См. также setX() и y().

int QPoint::y () const

Возвращает координату y точки.

См. также setY() и x().

QPoint & QPoint::operator*= ( qreal c )

Умножает значения координат x и y точки на c и возвращает ссылку на данную точку.

Пример:

    QPoint p(-1, 4);
    p *= 2.5;          // p становится равным (-3,10)

Обратите внимание, что результат округляется до ближайшего целого числа, поскольку значения координат определены как целые числа.

См. также QPointF.

QPoint & QPoint::operator+= ( const QPoint & p )

Складывает точку p с данной точкой и возвращает ссылку на данную точку.

Пример:

    QPoint p( 3, 7);
    QPoint q(-1, 4);
    p += q;            // p становится равным (2,11)

QPoint & QPoint::operator-= ( const QPoint & p )

Вычитает точку p из данной точки и возвращает ссылку на данную точку.

Пример:

    QPoint p( 3, 7);
    QPoint q(-1, 4);
    p -= q;            // p становится равным (4,3)

QPoint & QPoint::operator/= ( qreal c )

Делит координаты x и y точки на c и возвращает ссылку на данную точку.

Пример:

    QPoint p(-3, 10);
    p /= 2.5;           // p becomes (-1,4)

Обратите внимание, что результат округляется до ближайшего целого числа, поскольку значения координат определены как целые числа.

См. также QPointF.


Связанные Не-Члены

bool operator!= ( const QPoint & p1, const QPoint & p2 )

Данная перегруженная функция предоставлена для удобства.

Возвращает true, если p1 и p2 не эквивалентны; в противном случае возвращает false.

const QPoint operator* ( const QPoint & p, qreal c )

Данная перегруженная функция предоставлена для удобства.

Возвращает QPoint, сформированную из точки p, умноженной на c.

Обратите внимание, что результат округляется до ближайшего целого числа, поскольку значения координат определены как целые числа.

См. также QPointF.

const QPoint operator* ( qreal c, const QPoint & p )

Данная перегруженная функция предоставлена для удобства.

Возвращает QPoint, сформированную из точки p, умноженной на c.

Обратите внимание, что результат округляется до ближайшего целого числа, поскольку значения координат определены как целые числа.

См. также QPointF.

const QPoint operator+ ( const QPoint & p1, const QPoint & p2 )

Данная перегруженная функция предоставлена для удобства.

Возвращает сумму точек p1 и p2; соответствующий компоненты складываются отдельно.

const QPoint operator- ( const QPoint & p1, const QPoint & p2 )

Возвращает разность точек p2 и p1; соответствующий компоненты вычитаются отдельно.

const QPoint operator- ( const QPoint & p )

Данная перегруженная функция предоставлена для удобства.

Возвращает QPoint, сформированную из точки p, знаки координат которой изменены, эквивалентно QPoint(0,0) - p.

const QPoint operator/ ( const QPoint & p, qreal c )

Данная перегруженная функция предоставлена для удобства.

Возвращает QPoint, сформированную из точки p, компоненты которой разделены на c.

Обратите внимание, что результат округляется до ближайшего целого числа, поскольку значения координат определены как целые числа.

См. также QPointF.

QDataStream & operator<< ( QDataStream & s, const QPoint & p )

Данная перегруженная функция предоставлена для удобства.

Записывает точку p в поток s и возвращает ссылку на этот поток.

См. также Формат операторов QDataStream.

bool operator== ( const QPoint & p1, const QPoint & p2 )

Данная перегруженная функция предоставлена для удобства.

Возвращает true, если точки p1 и p2 эквивалентны; в противном случае возвращает false.

QDataStream & operator>> ( QDataStream & s, QPoint & p )

Данная перегруженная функция предоставлена для удобства.

Считывает QPoint p из потока s и возвращает ссылку на этот поток.

См. также Формат операторов QDataStream.


Copyright © 2005 Trolltech Trademarks
Qt 4.1.0
Hosted by uCoz