- Qt 6.5
- Qt Widgets
- C++ Classes
- QGraphicsScale
- Qt 6.5.0 Reference Documentation

# QGraphicsScale Class

The QGraphicsScale class provides a scale transformation. More...

Header: | #include <QGraphicsScale>
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: | QT += widgets
Inherits: | QGraphicsTransform

- List of all members, including inherited members

## Properties

- origin : QVector3D
- xScale : qreal
- yScale : qreal
- zScale : qreal

## Public Functions

| QGraphicsScale(QObject *parent = nullptr)
virtual | ~QGraphicsScale()
QVector3D | origin() const
void | setOrigin(const QVector3D &point)
void | setXScale(qreal)
void | setYScale(qreal)
void | setZScale(qreal)
qreal | xScale() const
qreal | yScale() const
qreal | zScale() const

## Reimplemented Public Functions

virtual void | applyTo(QMatrix4x4 *matrix) const override

## Signals

void | originChanged()
void | scaleChanged()
void | xScaleChanged()
void | yScaleChanged()
void | zScaleChanged()

## Detailed Description

QGraphicsScene provides certain parameters to help control how the scale should be applied.

The origin is the point that the item is scaled from (i.e., it stays fixed relative to the parent as the rest of the item grows). By default the origin is QPointF(0, 0).

The parameters xScale, yScale, and zScale describe the scale factors to apply in horizontal, vertical, and depth directions. They can take on any value, including 0 (to collapse the item to a point) or negative value. A negative xScale value will mirror the item horizontally. A negative yScale value will flip the item vertically. A negative zScale will flip the item end for end.

See also QGraphicsTransform, QGraphicsItem::setScale(), and QTransform::scale().

## Property Documentation

### origin : QVector3D

This property holds the origin of the scale in 3D space.

All scaling will be done relative to this point (i.e., this point will stay fixed, relative to the parent, when the item is scaled).

Access functions:

QVector3D | origin() const
void | setOrigin(const QVector3D &point)

Notifier signal:

void | originChanged()

See also xScale, yScale, and zScale.

### xScale : qreal

This property holds the horizontal scale factor.

The scale factor can be any real number; the default value is 1.0. If you set the factor to 0.0, the item will be collapsed to a single point. If you provide a negative value, the item will be mirrored horizontally around its origin.

Access functions:

qreal | xScale() const
void | setXScale(qreal)

Notifier signal:

void | xScaleChanged()

See also yScale, zScale, and origin.

### yScale : qreal

This property holds the vertical scale factor.

The scale factor can be any real number; the default value is 1.0. If you set the factor to 0.0, the item will be collapsed to a single point. If you provide a negative value, the item will be flipped vertically around its origin.

Access functions:

qreal | yScale() const
void | setYScale(qreal)

Notifier signal:

void | yScaleChanged()

See also xScale, zScale, and origin.

### zScale : qreal

This property holds the depth scale factor.

The scale factor can be any real number; the default value is 1.0. If you set the factor to 0.0, the item will be collapsed to a single point. If you provide a negative value, the item will be flipped end for end around its origin.

Access functions:

qreal | zScale() const
void | setZScale(qreal)

Notifier signal:

void | zScaleChanged()

See also xScale, yScale, and origin.

## Member Function Documentation

### QGraphicsScale::QGraphicsScale(QObject *parent = nullptr)

Constructs an empty QGraphicsScale object with the given parent.

### `[virtual]` QGraphicsScale::~QGraphicsScale()

Destroys the graphics scale.

### `[override virtual]` void QGraphicsScale::applyTo(QMatrix4x4 *matrix) const

Reimplements: QGraphicsTransform::applyTo(QMatrix4x4 *matrix) const.

### `[signal]` void QGraphicsScale::originChanged()

QGraphicsScale emits this signal when its origin changes.

Note: Notifier signal for property origin.

See also QGraphicsScale::origin.

### `[signal]` void QGraphicsScale::scaleChanged()

This signal is emitted whenever the xScale, yScale, or zScale of the object changes.

See also QGraphicsScale::xScale, QGraphicsScale::yScale, and QGraphicsScale::zScale.

### `[signal]` void QGraphicsScale::xScaleChanged()

This signal is emitted whenever the xScale property changes.

Note: Notifier signal for property xScale.

### `[signal]` void QGraphicsScale::yScaleChanged()

This signal is emitted whenever the yScale property changes.

Note: Notifier signal for property yScale.

### `[signal]` void QGraphicsScale::zScaleChanged()

This signal is emitted whenever the zScale property changes.

Note: Notifier signal for property zScale.