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
QQuickPathArc Class Reference

#include <qquickpath_p.h>

Inheritance diagram for QQuickPathArc:
Collaboration diagram for QQuickPathArc:

Public Types

enum  ArcDirection { Clockwise , Counterclockwise }

Signals

void radiusXChanged ()
void radiusYChanged ()
void useLargeArcChanged ()
void directionChanged ()
 Q_REVISION (2, 9) void xAxisRotationChanged()
Signals inherited from QQuickCurve
void xChanged ()
void yChanged ()
void relativeXChanged ()
void relativeYChanged ()
Signals inherited from QQuickPathElement
void changed ()
Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.

Public Member Functions

 QQuickPathArc (QObject *parent=nullptr)
qreal radiusX () const
 \qmltype PathArc \nativetype QQuickPathArc \inqmlmodule QtQuick
void setRadiusX (qreal)
qreal radiusY () const
void setRadiusY (qreal)
bool useLargeArc () const
 \qmlproperty bool QtQuick::PathArc::useLargeArc Whether to use a large arc as defined by the arc points.
void setUseLargeArc (bool)
ArcDirection direction () const
 \qmlproperty enumeration QtQuick::PathArc::direction
void setDirection (ArcDirection direction)
qreal xAxisRotation () const
 \qmlproperty real QtQuick::PathArc::xAxisRotation
void setXAxisRotation (qreal rotation)
void addToPath (QPainterPath &path, const QQuickPathData &) override
Public Member Functions inherited from QQuickCurve
 QQuickCurve (QObject *parent=nullptr)
qreal x () const
void setX (qreal x)
bool hasX ()
qreal y () const
void setY (qreal y)
bool hasY ()
qreal relativeX () const
void setRelativeX (qreal x)
bool hasRelativeX ()
qreal relativeY () const
void setRelativeY (qreal y)
bool hasRelativeY ()
Public Member Functions inherited from QQuickPathElement
 QQuickPathElement (QObject *parent=nullptr)
Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
QString objectName () const
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
QBindable< QStringbindableObjectName ()
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
bool isQmlObjectType () const
 Returns whether the object has been created by the QML engine or ownership has been explicitly set via QJSEngine::setObjectOwnership().
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
QThreadthread () const
 Returns the thread in which the object lives.
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
void killTimer (int id)
 Kills the timer with timer identifier, id.
void killTimer (Qt::TimerId id)
template<typename T>
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
template<typename T>
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
template<typename T>
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T>
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
const QObjectListchildren () const
 Returns a list of child objects.
void setParent (QObject *parent)
 Makes the object a child of parent.
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
bool disconnect (const QObject *receiver, const char *member=nullptr) const
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
bool setProperty (const char *name, QVariant &&value)
QVariant property (const char *name) const
 Returns the value of the object's name property.
QList< QByteArraydynamicPropertyNames () const
QBindingStoragebindingStorage ()
const QBindingStoragebindingStorage () const
QObjectparent () const
 Returns a pointer to the parent object.
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.

Properties

qreal radiusX
qreal radiusY
bool useLargeArc
ArcDirection direction
qreal xAxisRotation
Properties inherited from QQuickCurve
qreal x
qreal y
qreal relativeX
qreal relativeY
Properties inherited from QObject
QString objectName
 the name of this object

Additional Inherited Members

Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
template<typename Func1, typename Func2>
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
template<typename Func1, typename Func2>
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
template<typename Func1, typename Func2>
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
template<typename Func1>
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
int senderSignalIndex () const
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
bool isSignalConnected (const QMetaMethod &signal) const
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
virtual void connectNotify (const QMetaMethod &signal)
virtual void disconnectNotify (const QMetaMethod &signal)
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr

Detailed Description

Definition at line 278 of file qquickpath_p.h.

Member Enumeration Documentation

◆ ArcDirection

Enumerator
Clockwise 
Counterclockwise 

Definition at line 293 of file qquickpath_p.h.

Constructor & Destructor Documentation

◆ QQuickPathArc()

QQuickPathArc::QQuickPathArc ( QObject * parent = nullptr)
inline

Definition at line 290 of file qquickpath_p.h.

Member Function Documentation

◆ addToPath()

void QQuickPathArc::addToPath ( QPainterPath & path,
const QQuickPathData & data )
overridevirtual

Reimplemented from QQuickCurve.

Definition at line 2144 of file qquickpath.cpp.

◆ direction()

QQuickPathArc::ArcDirection QQuickPathArc::direction ( ) const

\qmlproperty enumeration QtQuick::PathArc::direction

Defines the direction of the arc. Possible values are PathArc.Clockwise (default) and PathArc.Counterclockwise.

The following QML can produce either of the two illustrated arcs below by changing the value of direction. \table \row

  • Path {
    startX: 50; startY: 50
    PathArc {
    x: 150; y: 50
    radiusX: 75; radiusY: 50
    }
    }
    \endtable
See also
useLargeArc

Definition at line 2093 of file qquickpath.cpp.

◆ directionChanged

void QQuickPathArc::directionChanged ( )
signal

◆ Q_REVISION

QQuickPathArc::Q_REVISION ( 2 ,
9  )
signal

◆ radiusX()

qreal QQuickPathArc::radiusX ( ) const

\qmltype PathArc \nativetype QQuickPathArc \inqmlmodule QtQuick

Defines an arc with the given radius.

PathArc provides a simple way of specifying an arc that ends at a given position and uses the specified radius. It is modeled after the SVG elliptical arc command.

The following QML produces the path shown below: \table \row

  • Path {
    startX: 100; startY: 0
    PathArc {
    x: 0; y: 100
    radiusX: 100; radiusY: 100
    useLargeArc: true
    }
    }
    \endtable

Note that a single PathArc cannot be used to specify a circle. Instead, you can use two PathArc elements, each specifying half of the circle.

See also
Path, PathLine, PathQuad, PathCubic, PathAngleArc, PathCurve, PathSvg

\qmlproperty real QtQuick::PathArc::x \qmlproperty real QtQuick::PathArc::y

Defines the end point of the arc.

See also
relativeX, relativeY

\qmlproperty real QtQuick::PathArc::relativeX \qmlproperty real QtQuick::PathArc::relativeY

Defines the end point of the arc relative to its start.

If both a relative and absolute end position are specified for a single axis, the relative position will be used.

Relative and absolute positions can be mixed, for example it is valid to set a relative x and an absolute y.

See also
x, y

\qmlproperty real QtQuick::PathArc::radiusX \qmlproperty real QtQuick::PathArc::radiusY

Defines the radius of the arc.

The following QML demonstrates how different radius values can be used to change the shape of the arc: \table \row

  • Path {
    startX: 0; startY: 100
    PathArc {
    relativeX: 50; y: 100
    radiusX: 25; radiusY: 15
    }
    PathArc {
    relativeX: 50; y: 100
    radiusX: 25; radiusY: 25
    }
    PathArc {
    relativeX: 50; y: 100
    radiusX: 25; radiusY: 50
    }
    PathArc {
    relativeX: 50; y: 100
    radiusX: 50; radiusY: 100
    }
    }
    \endtable

Definition at line 2012 of file qquickpath.cpp.

◆ radiusXChanged

void QQuickPathArc::radiusXChanged ( )
signal

◆ radiusY()

qreal QQuickPathArc::radiusY ( ) const

Definition at line 2027 of file qquickpath.cpp.

◆ radiusYChanged

void QQuickPathArc::radiusYChanged ( )
signal

◆ setDirection()

void QQuickPathArc::setDirection ( ArcDirection direction)

Definition at line 2098 of file qquickpath.cpp.

◆ setRadiusX()

void QQuickPathArc::setRadiusX ( qreal radius)

Definition at line 2017 of file qquickpath.cpp.

◆ setRadiusY()

void QQuickPathArc::setRadiusY ( qreal radius)

Definition at line 2032 of file qquickpath.cpp.

◆ setUseLargeArc()

void QQuickPathArc::setUseLargeArc ( bool largeArc)

Definition at line 2066 of file qquickpath.cpp.

◆ setXAxisRotation()

void QQuickPathArc::setXAxisRotation ( qreal rotation)

Definition at line 2134 of file qquickpath.cpp.

◆ useLargeArc()

bool QQuickPathArc::useLargeArc ( ) const

\qmlproperty bool QtQuick::PathArc::useLargeArc Whether to use a large arc as defined by the arc points.

Given fixed start and end positions, radius, and direction, there are two possible arcs that can fit the data. useLargeArc is used to distinguish between these. For example, the following QML can produce either of the two illustrated arcs below by changing the value of useLargeArc.

\table \row

  • Path {
    startX: 0; startY: 100
    PathArc {
    x: 100; y: 200
    radiusX: 100; radiusY: 100
    direction: PathArc.Clockwise
    }
    }
    \endtable

The default value is false.

Definition at line 2061 of file qquickpath.cpp.

◆ useLargeArcChanged

void QQuickPathArc::useLargeArcChanged ( )
signal

◆ xAxisRotation()

qreal QQuickPathArc::xAxisRotation ( ) const

\qmlproperty real QtQuick::PathArc::xAxisRotation

Defines the rotation of the arc, in degrees. The default value is 0.

An arc is a section of circles or ellipses. Given the radius and the start and end points, there are two ellipses that connect the points. This property defines the rotation of the X axis of these ellipses.

Note
The value is only useful when the x and y radius differ, meaning the arc is a section of ellipses.

The following QML demonstrates how different radius values can be used to change the shape of the arc: \table \row

  • Path {
    startX: 50; startY: 100
    PathArc {
    x: 150; y: 100
    radiusX: 50; radiusY: 20
    xAxisRotation: 45
    }
    }
    \endtable

Definition at line 2129 of file qquickpath.cpp.

Property Documentation

◆ direction

ArcDirection QQuickPathArc::direction
readwrite

Definition at line 284 of file qquickpath_p.h.

◆ radiusX

qreal QQuickPathArc::radiusX
readwrite

Definition at line 281 of file qquickpath_p.h.

◆ radiusY

qreal QQuickPathArc::radiusY
readwrite

Definition at line 282 of file qquickpath_p.h.

◆ useLargeArc

bool QQuickPathArc::useLargeArc
readwrite

Definition at line 283 of file qquickpath_p.h.

◆ xAxisRotation

qreal QQuickPathArc::xAxisRotation
readwrite

Definition at line 285 of file qquickpath_p.h.


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