Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QQuickShearPrivate Class Reference

\qmltype Shear \nativetype QQuickShear \inqmlmodule QtQuick More...

Inheritance diagram for QQuickShearPrivate:
Collaboration diagram for QQuickShearPrivate:

Public Attributes

QVector3D origin
qreal xFactor = 0.0
qreal yFactor = 0.0
qreal xAngle = 0.0
qreal yAngle = 0.0
Public Attributes inherited from QQuickTransformPrivate
QList< QQuickItem * > items
Public Attributes inherited from QObjectPrivate
ExtraDataextraData
QAtomicPointer< QThreadDatathreadData
QAtomicPointer< ConnectionDataconnections
union { 
   QObject *   currentChildBeingDeleted 
   QAbstractDeclarativeData *   declarativeData 
}; 
QAtomicPointer< QtSharedPointer::ExternalRefCountDatasharedRefcount
Public Attributes inherited from QObjectData
QObjectq_ptr
QObjectparent
QObjectList children
uint isWidget: 1
uint blockSig: 1
uint wasDeleted: 1
uint isDeletingChildren: 1
uint sendChildEvents: 1
uint receiveChildEvents: 1
uint isWindow: 1
uint deleteLaterCalled: 1
uint isQuickItem: 1
uint willBeWidget: 1
uint wasWidget: 1
uint receiveParentEvents: 1
uint unused: 20
QAtomicInt postedEvents
QDynamicMetaObjectDatametaObject
QBindingStorage bindingStorage

Additional Inherited Members

Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
Public Member Functions inherited from QQuickTransformPrivate
 QQuickTransformPrivate ()
 \qmltype Transform \nativetype QQuickTransform \inqmlmodule QtQuick
Public Member Functions inherited from QObjectPrivate
void ensureExtraData ()
void setObjectNameWithoutBindings (const QString &name)
 QObjectPrivate (decltype(QObjectPrivateVersion) version=QObjectPrivateVersion)
virtual ~QObjectPrivate ()
void deleteChildren ()
void clearBindingStorage ()
void setParent_helper (QObject *)
void moveToThread_helper ()
void setThreadData_helper (QThreadData *currentData, QThreadData *targetData, QBindingStatus *status)
QObjectList receiverList (const char *signal) const
void ensureConnectionData ()
void addConnection (int signal, Connection *c)
int signalIndex (const char *signalName, const QMetaObject **meta=nullptr) const
bool isSignalConnected (uint signalIdx, bool checkDeclarative=true) const
bool maybeSignalConnected (uint signalIndex) const
bool isDeclarativeSignalConnected (uint signalIdx) const
void connectNotify (const QMetaMethod &signal)
void disconnectNotify (const QMetaMethod &signal)
void reinitBindingStorageAfterThreadMove ()
virtual std::string flagsForDumping () const
virtual void writeToDebugStream (QDebug &) const
QtPrivate::QPropertyAdaptorSlotObjectgetPropertyAdaptorSlotObject (const QMetaProperty &property)
Public Member Functions inherited from QObjectData
 QObjectData ()=default
virtual ~QObjectData ()=0
const QMetaObjectdynamicMetaObject () const
Static Public Member Functions inherited from QQuickTransformPrivate
static QQuickTransformPrivateget (QQuickTransform *transform)
Static Public Member Functions inherited from QObjectPrivate
static bool removeConnection (Connection *c)
static QObjectPrivateget (QObject *o)
static const QObjectPrivateget (const QObject *o)
template<typename Func1, typename Func2>
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
template<typename Func1, typename Func2>
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot)
static QMetaObject::Connection connectImpl (const QObject *sender, int signal_index, const QObject *receiver, void **slot, QtPrivate::QSlotObjectBase *slotObj, int type, const int *types, const QMetaObject *senderMetaObject)
static QMetaObject::Connection connect (const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
static QMetaObject::Connection connect (const QObject *sender, int signal_index, const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
static bool disconnect (const QObject *sender, int signal_index, void **slot)
static bool disconnect (const QObject *sender, int signal_index, const QObject *receiver, void **slot)

Detailed Description

\qmltype Shear \nativetype QQuickShear \inqmlmodule QtQuick

Since
6.9

Provides a way to shear an Item.

The Shear type provides a way to transform an \l Item by a two-dimensional shear-type matrix, sometimes known as a skew transform.

\qml Rectangle { width: 100; height: 100 color: "blue" transform: Shear { xFactor: 1.0 } } \endqml

This shears the item by a factor of 1.0 along the x-axis without modifying anything along the y-axis. Each point P is displaced by {xFactor(P.y - origin.y)} (the signed vertical distance to the \l{origin} multiplied with the \l{xFactor}). Setting the \l{yFactor} shears the item along the y-axis and proportionally to the horizontal distance.

Since the default origin is at {(0, 0)}, the top of the item remains untransformed, whereas the bottom is displaced 100 pixels to the right (corresponding to the height of the item.)

This code is equivalent to the following:

\qml Rectangle { width: 100; height: 100 color: "blue" transform: Shear { xAngle: 45.0 } } \endqml

Note
If both {xFactor}/{yFactor} and {xAngle}/{yAngle} are set, then the sum of the two displacements will be used.

Definition at line 456 of file qquicktranslate.cpp.

Member Data Documentation

◆ origin

QVector3D QQuickShearPrivate::origin

Definition at line 459 of file qquicktranslate.cpp.

◆ xAngle

qreal QQuickShearPrivate::xAngle = 0.0

Definition at line 462 of file qquicktranslate.cpp.

◆ xFactor

qreal QQuickShearPrivate::xFactor = 0.0

Definition at line 460 of file qquicktranslate.cpp.

◆ yAngle

qreal QQuickShearPrivate::yAngle = 0.0

Definition at line 463 of file qquicktranslate.cpp.

◆ yFactor

qreal QQuickShearPrivate::yFactor = 0.0

Definition at line 461 of file qquicktranslate.cpp.


The documentation for this class was generated from the following file: