Описание класса QRectFКласс QRectF прямоугольник точку на плоскости, используя точность плавающей точкой. Далее... #include <QRectF>
Открытые функции
Связанные нечлены класса
Подробное описаниеКласс QRectF прямоугольник точку на плоскости, используя точность плавающей точкой. Обычно прямоугольник выражается через верхний левый угол и размер. Размер (ширина и высота) QRectF'а всегда эквивалентен математическому прямоугольнику, который формирует основу для его рисования. QRectF может быть сконструирован с помощью задания целых координат left, top, width и height, или из QPoint и QSize. Следующий код создаёт два идентичных прямоугольника. QRectF r1(100, 200, 11, 16); QRectF r2(QPoint(100, 200), QSize(11, 16)); Существует и третий конструктор, создающий QRectF из QRect, и соответствующая функция toRect(), которая возвращает объект QRect основанный на значениях этого прямоугольника (заметьте, что координаты в возвращаемом прямоугольнике округляются до ближайшего целого). Класс QRectF предоставляет коллекцию функций, которые возвращают различные координаты прямоугольника, и позволяют манипулировать им. QRectF также предоставляет функции, чтобы перемещать прямоугольник относительно различных координат. В дополнение, есть функция moveTo(), которая перемещает прямоугольник, перенося его верхний левый угол в заданные координаты. В качестве альтернативы, функция translate() перемещает прямоугольник на заданное смещение относительно текущей позиции, а функция translated() возвращает сдвинутую копию этого прямоугольника. Функция size() возвращает размеры прямоугольника в виде QSize. Размеры могут быть так же получены раздельно, используя функции width() и height(). Для работы с размерами используются функции setSize(), setWidth() или setHeight(). Альтернативно, размер может быть изменён применением функций установки координат прямоугольника, например, setBottom() или setRight(). Функция contains() говорит, находится ли заданная точка внутри прямоугольника или нет, а функция intersects() возвращает true если этот прямоугольник пересекается с заданным прямоугольником (в противном случае false). Класс QRectF также предоставляет функцию intersected(), которая возвращает прямоугольник пересечения, и функцию united(), которая возвращает прямоугольник, который охватывает заданный прямоугольник и этот:
Функция isEmpty() возвращает true если ширина или высота прямоугольника меньше чем, или равна 0. Заметьте, что пустой прямоугольник недействительный: Функция isValid()возвращает true если и ширина и высота больше чем 0. Нулевой прямоугольник (isNull() == true), с другой стороны, имеет и ширину и высоту установленные в 0. Заметьте, что в силу связи с QRect и QRectF тоже определён, пустой QRectF определен по существу тем же самым способом как QRect. В заключение, объект QRectF может быть выведен в поток так же просто как и сравниваться. ОтрисовкаКогда используется рисовальщик (painter) со сглаживанием, граничная линия QRectF будет отрисована симметрично по обоим сторонам граничной линии математического прямоугольника. Но, когда используется не сглаженный рисовальщик(по умолчанию) применяются другие правила. Затем, когда отрисовка осуществляется с помощью карандаша шириной в один пиксель, граница QRectF'а будет отрисовываться правее и ниже границы математического прямоугольника. Когда отрисовка осуществляется с помощью карандаша шириной в два пикселя, грница будет разделена по середине математическим прямоугольником. Это будет иметь место всякий раз, когда карандаш установлен в четное число пикселей, в то время как рисование с помощью карандаша с нечёетным количеством пикселей, дополнительный пиксель будет рисоваться правее и ниже границы математического прямоугольника, как в случае с одним пикселем.
КоординатыКласс QRectF предоставляет коллекцию функций, которые возвращают различные координаты прямоугольника, и позволяют манипулировать им. QRectF также предоставляет функции, чтобы перемещать прямоугольник относительно различных координат. Например, функции bottom(), setBottom() и moveBottom(): bottom() возвращает Y-координату нижнего края прямоугольника, setBottom() устанавливает нижний край прямоугольника в заданную Y-координату (она может изменить высоту, но никогда не изменит верхний край прямоугольника) и moveBottom() перемещает весь прямоугольник вертикально, перенося нижний край прямоугольника в заданную Y-координату, а его размер не изменяется. Также возможно добавить смещение к координатам этого прямоугольника, используя функцию adjust(), также как и получить новый прямоугольник основанный на корректировке оригинального, используя функцию adjusted(). Если ширина и/или высота отрицательны, то используйте функцию normalized(), чтобы получить прямоугольник, у которого углы поменяны местами. В дополнение, QRectF предоставляет функцию getCoords(), которая извлекает позицию верхнего левого и нижнего правого углов прямоугольника, и функцию getRect(), которая извлекает верхний левый угол, ширину и высоту. Используйте функции setCoords() и setRect(), чтобы работать с координатами и размерами прямоугольника в одном ключе. Смотрите также QRect и QRegion. Описание функций-членовQRectF::QRectF ()Конструирует пустой прямоугольник. Смотрите также isNull(). QRectF::QRectF ( const QPointF & topLeft, const QSizeF & size )Конструирует прямоугольник с заданным углом topLeft и заданным размеромsize. Смотрите также setTopLeft() и setSize(). QRectF::QRectF ( const QPointF & topLeft, const QPointF & bottomRight )Конструирует прямоугольник с заданными углами topLeft и bottomRight. Эта функция была введена в Qt 4.3. Смотрите также setTopLeft() и setBottomRight(). QRectF::QRectF ( qreal x, qreal y, qreal width, qreal height )Конструирует прямоугольник с координатами (x, y), в качестве его верхнего левого угла и заданными шириной (width) и высотой (height). Смотрите также setRect(). QRectF::QRectF ( const QRect & rectangle )Конструирует прямоугольник QRectF из заданного QRect прямоугольника rectangle. Смотрите также toRect(). void QRectF::adjust ( qreal dx1, qreal dy1, qreal dx2, qreal dy2 )Добавляет dx1, dy1, dx2 и dy2 к имеющимся координатам прямоугольника, соответственно. Смотрите также adjusted() и setRect(). QRectF QRectF::adjusted ( qreal dx1, qreal dy1, qreal dx2, qreal dy2 ) constВозвращает новый прямоугольник с dx1, dy1, dx2 и dy2 добавленными к имеющимся координатам прямоугольника, соответственно. Смотрите также adjust(). qreal QRectF::bottom () constВозвращает Y-координату нижнего края прямоугольника. Смотрите также setBottom(), bottomLeft() и bottomRight(). QPointF QRectF::bottomLeft () constВозвращает позицию нижнего левого угла прямоугольника. Смотрите также setBottomLeft(), bottom() и left(). QPointF QRectF::bottomRight () constВозвращает позицию нижнего правого угла прямоугольника. Смотрите также setBottomRight(), bottom() и right(). QPointF QRectF::center () constВозвращает центральную точку прямоугольника. Смотрите также moveCenter(). bool QRectF::contains ( const QPointF & point ) constВозвращает true, если заданная точка point находится внутри или на краю прямоугольника; в противном случае возвращает false. Смотрите также intersects(). bool QRectF::contains ( qreal x, qreal y ) constЭто перегруженная функция. Возвращает true, если точка (x, y) находится внутри или на краю прямоугольника; в противном случае возвращает false. bool QRectF::contains ( const QRectF & rectangle ) constЭто перегруженная функция. Возвращает true, если заданный прямоугольник rectangle находится внутри этого прямоугольника; в противном случае возвращает false. void QRectF::getCoords ( qreal * x1, qreal * y1, qreal * x2, qreal * y2 ) constИзвлекает позицию верхнего левого угла прямоугольника в *x1 и *y1, и позицию нижнего правого угла в *x2 и *y2. Смотрите также setCoords() и getRect(). void QRectF::getRect ( qreal * x, qreal * y, qreal * width, qreal * height ) constИзвлекает позицию верхнего левого угла прямоугольника в *x и *y, и его размеры в *width и *height. Смотрите также setRect() и getCoords(). qreal QRectF::height () constВозвращает высоту прямоугольника. Смотрите также setHeight(), width() и size(). QRectF QRectF::intersected ( const QRectF & rectangle ) constВозвращает пересечение этого прямоугольника и заданного прямоугольника rectangle. Заметьте, что r.intersected(s) эквивалентно r & s. Эта функция была введена в Qt 4.2. Смотрите также intersects(), united() и operator&=(). bool QRectF::intersects ( const QRectF & rectangle ) constВозвращает true, если этот прямоугольник пересекается с заданным прямоугольником rectangle (т.е. существует не пустая область перекрытия между ними), в противном случае возвращает false. Прямоугольник пересечения может быть получен, используя функцию intersected(). Смотрите также contains(). bool QRectF::isEmpty () constВозвращает true, если прямоугольник пустой; в противном случае возвращает false. Пустой прямоугольник имеет width() <= 0 или height() <= 0. Пустой прямоугольник не является действительным (i.e., isEmpty() == !isValid()). Используйте функцию normalized(), чтобы получить прямоугольник, у которого углы поменяны местами. Смотрите также isNull(), isValid() и normalized(). bool QRectF::isNull () constВозвращает true, если прямоугольник нулевой, в противном случае возвращает false. Нулевой прямоугольник имеет и ширину и высоту установленные в 0. Нулевой прямоугольник также является пустым, и, следовательно, недействительным. Смотрите также isEmpty() и isValid(). bool QRectF::isValid () constВозвращает true, если прямоугольник действительный; в противном случае возвращает false. Действительный прямоугольник имеет width() > 0 и height() > 0. Заметьте, что нетривиальные операции подобные пересечению не определены для недействительных прямоугольников. Действительный прямоугольник - не пустой (т.е. isValid() == !isEmpty()). Смотрите также isNull(), isEmpty() и normalized(). qreal QRectF::left () constВозвращает X-координату левого края прямоугольника. Эквивалентно x(). Смотрите также setLeft(), topLeft() и bottomLeft(). void QRectF::moveBottom ( qreal y )Перемещает прямоугольник вертикально, перенося нижний край прямоугольника в заданную координату y. Размер прямоугольника не изменяется. Смотрите также bottom(), setBottom() и moveTop(). void QRectF::moveBottomLeft ( const QPointF & position )Перемещает прямоугольник, перенося нижний левый угол в заданную позицию position. Размер прямоугольника не изменяется. Смотрите также setBottomLeft(), moveBottom() и moveLeft(). void QRectF::moveBottomRight ( const QPointF & position )Перемещает прямоугольник, перенося нижний правый угол в заданную позицию position. Размер прямоугольника не изменяется. Смотрите также setBottomRight(), moveBottom() и moveRight(). void QRectF::moveCenter ( const QPointF & position )Перемещает прямоугольник, перенося нижний левый угол в заданную позицию position. Размер прямоугольника не изменяется. Смотрите также center(). void QRectF::moveLeft ( qreal x )Перемещает прямоугольник горизонтально, перенося левый край прямоугольника в заданную координату x. Размер прямоугольника не изменяется. Смотрите также left(), setLeft() и moveRight(). void QRectF::moveRight ( qreal x )Перемещает прямоугольник горизонтально, перенося правый край прямоугольника в заданную координату x. Размер прямоугольника не изменяется. Смотрите также right(), setRight() и moveLeft(). void QRectF::moveTo ( qreal x, qreal y )Перемещает прямоугольник, перенося верхний левый угол в заданную позицию (x, y). Размер прямоугольника не изменяется. Смотрите также translate() и moveTopLeft(). void QRectF::moveTo ( const QPointF & position )Это перегруженная функция. Перемещает прямоугольник, перенося верхний левый угол в заданную позицию position. void QRectF::moveTop ( qreal y )Перемещает прямоугольник вертикально, перенося верхний край прямоугольника в заданную координату y. Размер прямоугольника не изменяется. Смотрите также top(), setTop() и moveBottom(). void QRectF::moveTopLeft ( const QPointF & position )Перемещает прямоугольник, перенося верхний левый угол в заданную позицию position. Размер прямоугольника не изменяется. Смотрите также setTopLeft(), moveTop() и moveLeft(). void QRectF::moveTopRight ( const QPointF & position )Перемещает прямоугольник, перенося верхний правый угол в заданную позицию position. Размер прямоугольника не изменяется. Смотрите также setTopRight(), moveTop() и moveRight(). QRectF QRectF::normalized () constВозвращает нормализованный прямоугольник; т.е. прямоугольник, который имеет неотрицательную ширину и высоту. Если width() < 0 функция меняет местами левый и правый углы, и она меняет местами верхний и нижний углы, если height() < 0. Смотрите также isValid() и isEmpty(). qreal QRectF::right () constВозвращает X-координату правого края прямоугольника. Смотрите также setRight(), topRight() и bottomRight(). void QRectF::setBottom ( qreal y )Устанавливает нижний край прямоугольника в заданную координату y. Может изменить высоту, но никогда не изменит верхний край прямоугольника. Смотрите также bottom() и moveBottom(). void QRectF::setBottomLeft ( const QPointF & position )Устанавливает нижний левый угол прямоугольника в заданную позицию position. Может изменить размер, но никогда не изменит верхний правый угол прямоугольника. Смотрите также bottomLeft() и moveBottomLeft(). void QRectF::setBottomRight ( const QPointF & position )Устанавливает нижний правый угол прямоугольника в заданную позицию position. Может изменить размер, но никогда не изменит верхний левый угол прямоугольника. Смотрите также bottomRight() и moveBottomRight(). void QRectF::setCoords ( qreal x1, qreal y1, qreal x2, qreal y2 )Устанавливает координаты верхнего левого угла прямоугольника в (x1, y1), и координаты нижнего правого угла в (x2, y2). Смотрите также getCoords() и setRect(). void QRectF::setHeight ( qreal height )Устанавливает высоту прямоугольника в заданную высоту height. Нижний край изменяется, а верхний нет. Смотрите также height() и setSize(). void QRectF::setLeft ( qreal x )Устанавливает левый край прямоугольника в заданную координату x. Может изменить ширину, но никогда не изменит правый край прямоугольника. Эквивалентно setX(). Смотрите также left() и moveLeft(). void QRectF::setRect ( qreal x, qreal y, qreal width, qreal height )Устанавливает координаты верхнего левого угла прямоугольника в (x, y), и его размер в заданные width и height. Смотрите также getRect() и setCoords(). void QRectF::setRight ( qreal x )Устанавливает правый край прямоугольника в заданную координату x. Может изменить ширину, но никогда не изменит левый край прямоугольника. Смотрите также right() и moveRight(). void QRectF::setSize ( const QSizeF & size )Устанавливает размер прямоугольника в заданный размер size. Верхний левый угол не перемещается. Смотрите также size(), setWidth() и setHeight(). void QRectF::setTop ( qreal y )Устанавливает верхний край прямоугольника в заданную координату y. Может изменить высоту, но никогда не изменит нижний край прямоугольника. Эквивалентно setY(). Смотрите также top() и moveTop(). void QRectF::setTopLeft ( const QPointF & position )Устанавливает верхний левый угол прямоугольника в заданную позицию position. Может изменить размер, но никогда не изменит нижний правый угол прямоугольника. Смотрите также topLeft() и moveTopLeft(). void QRectF::setTopRight ( const QPointF & position )Устанавливает верхний правый угол прямоугольника в заданную позицию position. Может изменить размер, но никогда не изменит нижний левый угол прямоугольника. Смотрите также topRight() и moveTopRight(). void QRectF::setWidth ( qreal width )Устанавливает ширину прямоугольника в заданную ширину width. Правый край изменяется, а левый нет. Смотрите также width() и setSize(). void QRectF::setX ( qreal x )Устанавливает левый край прямоугольника в заданную координату x. Может изменить ширину, но никогда не изменит правый край прямоугольника. Эквивалентно setLeft(). Смотрите также x(), setY() и setTopLeft(). void QRectF::setY ( qreal y )Устанавливает верхний край прямоугольника в заданную координату y. Может изменить высоту, но никогда не изменит нижний край прямоугольника. Эквивалентно setTop(). Смотрите также y(), setX() и setTopLeft(). QSizeF QRectF::size () constВозвращает размер прямоугольника. Смотрите также setSize(), width() и height(). QRect QRectF::toAlignedRect () constВозвращает QRect, основанный на значениях этого прямоугольника, являющийся наименьшим возможным целочисленным прямоугольником, который полностью содержит этот прямоугольник. Эта функция была введена в Qt 4.3. Смотрите также toRect(). QRect QRectF::toRect () constВозвращает QRect, основанный на значениях этого прямоугольника. Заметьте, что координаты в возвращаемом прямоугольнике будут округлены до ближайшего целого. Смотрите также QRectF() и toAlignedRect(). qreal QRectF::top () constВозвращает Y-координату верхнего края прямоугольника. Эквивалентно y(). Смотрите также setTop(), topLeft() и topRight(). QPointF QRectF::topLeft () constВозвращает позицию верхнего левого угла прямоугольника. Смотрите также setTopLeft(), top() и left(). QPointF QRectF::topRight () constВозвращает позицию верхнего правого угла прямоугольника. Смотрите также setTopRight(), top() и right(). void QRectF::translate ( qreal dx, qreal dy )Перемещает прямоугольник на dx вдоль оси X и на dy вдоль оси Y, относительно текущей позиции. Положительные значения перемещают прямоугольник вправо и вниз. Смотрите также moveTopLeft(), moveTo() и translated(). void QRectF::translate ( const QPointF & offset )Это перегруженная функция. Перемещает прямоугольник на offset.x() вдоль оси X и на offset.y() вдоль оси Y, относительно текущей позиции. QRectF QRectF::translated ( qreal dx, qreal dy ) constВозвращает копию прямоугольника, которая сдвинута (translated) на dx вдоль оси X и на dy вдоль оси Y, относительно текущей позиции. Положительные значения перемещают прямоугольник вправо и вниз. Смотрите также translate(). QRectF QRectF::translated ( const QPointF & offset ) constЭто перегруженная функция. Возвращает копию прямоугольника, которая сдвинута (translated) на offset.x() вдоль оси X и на offset.y() вдоль оси Y, относительно текущей позиции. QRectF QRectF::united ( const QRectF & rectangle ) constВозвращает охватывающий прямоугольник этого прямоугольника и заданного прямоугольника rectangle. Эта функция была введена в Qt 4.2. Смотрите также intersected(). qreal QRectF::width () constВозвращает ширину прямоугольника. Смотрите также setWidth(), height() и size(). qreal QRectF::x () constВозвращает X-координату левого края прямоугольника. Эквивалентно left(). Смотрите также setX(), y() и topLeft(). qreal QRectF::y () constВозвращает Y-координату верхнего края прямоугольника. Эквивалентно top(). Смотрите также setY(), x() и topLeft(). QRectF QRectF::operator& ( const QRectF & rectangle ) constВозвращает пересечение этого прямоугольника и заданного прямоугольника rectangle. Возвращает пустой прямоугольник, если пересечения не существует. Смотрите также operator&=() и intersected(). QRectF & QRectF::operator&= ( const QRectF & rectangle )Пересечение этого прямоугольника с заданным прямоугольником rectangle. Смотрите также intersected() и operator|=(). QRectF QRectF::operator| ( const QRectF & rectangle ) constВозвращает охватывающий прямоугольник этого прямоугольника и заданного прямоугольника rectangle. Смотрите также united() и operator|=(). QRectF & QRectF::operator|= ( const QRectF & rectangle )Объединение этого прямоугольника с заданным прямоугольником rectangle. Связанные нечлены классаbool operator!= ( const QRectF & r1, const QRectF & r2 )Возвращает true, если прямоугольники r1 и r2 отличаются, в противном случае возвращает false. QDataStream & operator<< ( QDataStream & stream, const QRectF & rectangle )Записывает прямоугольник rectangle в поток stream и возвращает ссылку на поток. Смотрите также Преобразование типов данных Qt в последовательный вид. bool operator== ( const QRectF & r1, const QRectF & r2 )Возвращает true, если прямоугольники r1 и r2 равны, в противном случае возвращает false. QDataStream & operator>> ( QDataStream & stream, QRectF & rectangle )Читает прямоугольник rectangle из потока stream, и возвращает ссылку на поток. Смотрите также Преобразование типов данных Qt в последовательный вид. |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |