Класс QGraphicsPixmapItem
Класс QGraphicsPixmapItem предоставляет элемент пиктограммы, который можно добавить в QGraphicsScene. Подробнее...
| Заголовок: | #include <QGraphicsPixmapItem> |
| qmake: | QT += widgets |
| С момента: | Qt 4.2 |
| Наследует: | QGraphicsItem |
Типы Public
| Перечисление | ShapeMode { РежимМаски, РежимОкружающегоПрямоугольника, РежимЭвристическойМаски } |
| Перечисление | безымянный { Тип } |
Функции Public
| QGraphicsPixmapItem(QGraphicsItem *parent = nullptr) | |
| QGraphicsPixmapItem(const QPixmap &pixmap, QGraphicsItem *parent = nullptr) | |
| виртуальный | ~QGraphicsPixmapItem() |
| QPointF | смещение() const |
| QPixmap | пиктограмма() const |
| void | установитьСмещение(const QPointF &смещение) |
| void | установитьСмещение(qreal x, qreal y) |
| void | установитьПиктограмму(const QPixmap &пиктограмма) |
| void | установитьРежимФигуры(QGraphicsPixmapItem::ShapeMode режим) |
| void | установитьРежимПреобразования(Qt::TransformationMode режим) |
| QGraphicsPixmapItem::ShapeMode | режимФигуры() const |
| Qt::TransformationMode | режимПреобразования() const |
Переопределенные Public Функции
| виртуальный QRectF | прямоугольникОграничения() const override |
| виртуальный bool | содержит(const QPointF &точка) const override |
| виртуальный bool | затемняется(const QGraphicsItem *элемент) const override |
| виртуальный QPainterPath | непрозрачнаяОбласть() const override |
| виртуальный void | рисовать(QPainter *рисовальщик, const QStyleOptionGraphicsItem *вариант, QWidget *виджет) override |
| виртуальный QPainterPath | фигура() const override |
| виртуальный int | тип() const override |
- 176 public функций, унаследованных от QGraphicsItem
Дополнительные унаследованные члены
- 24 protected функции, унаследованные от QGraphicsItem
Подробное описание
Класс QGraphicsPixmapItem предоставляет элемент пиктограммы, который можно добавить в QGraphicsScene.
Чтобы установить пиктограмму элемента, передайте QPixmap в конструктор QGraphicsPixmapItem или вызовите функцию установитьПиктограмму(). Функция пиктограмма() возвращает текущую пиктограмму.
QGraphicsPixmapItem использует необязательную альфа-маску пиктограммы, чтобы обеспечить разумную реализацию прямоугольникОграничения(), фигура() и содержит().
Пиктограмма рисуется в координатах (0, 0) элемента, как возвращает смещение(). Можно изменить смещение рисования, вызвав установитьСмещение().
Можно установить режим преобразования пиктограммы, вызвав установитьРежимПреобразования(). По умолчанию используется Qt::FastTransformation, что обеспечивает быстрое, неплавное масштабирование. Qt::SmoothTransformation включает QPainter::SmoothPixmapTransform в рисовальщике, а качество зависит от платформы и области просмотра. Результат обычно не так хорош, как прямой вызов QPixmap::scale(). Вызовите режимПреобразования(), чтобы получить текущий режим преобразования для элемента.
См. также QGraphicsPathItem, QGraphicsRectItem, QGraphicsEllipseItem, QGraphicsTextItem, QGraphicsPolygonItem, QGraphicsLineItem и Графический фреймворк отображения.
Документация по типам членов
перечисление QGraphicsPixmapItem::ShapeMode
Это перечисление описывает, как QGraphicsPixmapItem рассчитывает свою фигуру и непрозрачную область.
Значение по умолчанию — MaskShape.
| Постоянная | Значение | Описание |
|---|---|---|
QGraphicsPixmapItem::MaskShape |
0 |
Фигура определяется путем вызова QPixmap::mask(). Эта фигура включает только непрозрачные пиксели пиктограммы. Однако, поскольку фигура более сложная, она может быть медленнее, чем другие режимы, и использует больше памяти. |
QGraphicsPixmapItem::BoundingRectShape |
1 |
Фигура определяется путем прослеживания контура пиктограммы. Это самый быстрый режим фигуры, но он не учитывает прозрачные области на пиктограмме. |
QGraphicsPixmapItem::HeuristicMaskShape |
2 |
Фигура определяется путем вызова QPixmap::createHeuristicMask(). Производительность и потребление памяти аналогичны MaskShape. |
перечисление QGraphicsPixmapItem::безымянный
Значение, возвращаемое виртуальной функцией тип().
| Постоянная | Значение | Описание |
|---|---|---|
QGraphicsPixmapItem::Type |
7 |
Элемент графической пиктограммы |
Документация по функциям-членам
QGraphicsPixmapItem::QGraphicsPixmapItem(QGraphicsItem *parent = nullptr)
Конструирует QGraphicsPixmapItem. parent передается конструктору QGraphicsItem.
См. также QGraphicsScene::addItem().
QGraphicsPixmapItem::QGraphicsPixmapItem(const QPixmap &pixmap, QGraphicsItem *parent = nullptr)
Конструирует QGraphicsPixmapItem, используя pixmap в качестве пиктограммы по умолчанию. parent передается конструктору QGraphicsItem.
См. также QGraphicsScene::addItem().
[virtual] QGraphicsPixmapItem::~QGraphicsPixmapItem()
Уничтожает QGraphicsPixmapItem.
[override virtual] QRectF QGraphicsPixmapItem::прямоугольникОграничения() const
Переопределено из QGraphicsItem::boundingRect().
[override virtual] bool QGraphicsPixmapItem::contains(const QPointF &point) const
Переопределено из QGraphicsItem::contains().
[override virtual] bool QGraphicsPixmapItem::isObscuredBy(const QGraphicsItem *item) const
Переопределено из QGraphicsItem::isObscuredBy().
QPointF QGraphicsPixmapItem::offset() const
Возвращает смещение элемента пиксельной карты, которое определяет точку верхнего левого угла пиксельной карты в локальных координатах.
См. также setOffset().
[override virtual] QPainterPath QGraphicsPixmapItem::opaqueArea() const
Переопределено из QGraphicsItem::opaqueArea().
[override virtual] void QGraphicsPixmapItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
Переопределено из QGraphicsItem::paint().
QPixmap QGraphicsPixmapItem::pixmap() const
Возвращает пиксельную карту элемента или недействительную QPixmap, если пиксельная карта не была установлена.
См. также setPixmap().
void QGraphicsPixmapItem::setOffset(const QPointF &offset)
Устанавливает смещение элемента пиксельной карты на offset. QGraphicsPixmapItem будет отрисовывать свою пиксельную карту, используя смещение для верхнего левого угла.
См. также offset().
void QGraphicsPixmapItem::setOffset(qreal x, qreal y)
Эта вспомогательная функция эквивалентна вызову setOffset(QPointF(x, y)).
Эта функция была добавлена в Qt 4.3.
void QGraphicsPixmapItem::setPixmap(const QPixmap &pixmap)
Устанавливает пиксельную карту элемента на pixmap.
См. также pixmap().
void QGraphicsPixmapItem::setShapeMode(QGraphicsPixmapItem::ShapeMode mode)
Устанавливает режим формы элемента на mode. Режим формы описывает, как QGraphicsPixmapItem вычисляет свою форму. По умолчанию используется режим MaskShape.
См. также shapeMode() и ShapeMode.
void QGraphicsPixmapItem::setTransformationMode(Qt::TransformationMode mode)
Устанавливает режим преобразования элемента пиксельной карты на mode и вызывает обновление элемента. Режим по умолчанию — Qt::FastTransformation, который обеспечивает быстрое преобразование без сглаживания.
Qt::SmoothTransformation включает QPainter::SmoothPixmapTransform в рисовальщике, а качество зависит от платформы и области просмотра. Результат обычно не так хорош, как прямой вызов QPixmap::scale().
См. также transformationMode().
[override virtual] QPainterPath QGraphicsPixmapItem::shape() const
Переопределено из QGraphicsItem::shape().
QGraphicsPixmapItem::ShapeMode QGraphicsPixmapItem::shapeMode() const
Возвращает режим формы элемента. Режим формы описывает, как QGraphicsPixmapItem вычисляет свою форму. По умолчанию используется режим MaskShape.
См. также setShapeMode() и ShapeMode.
Qt::TransformationMode QGraphicsPixmapItem::transformationMode() const
Возвращает режим преобразования пиксельной карты. Режим по умолчанию — Qt::FastTransformation, который обеспечивает быстрое преобразование без сглаживания.
См. также setTransformationMode().
[override virtual] int QGraphicsPixmapItem::type() const
Переопределено из QGraphicsItem::type().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qgraphicspixmapitem.html