Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
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 \instantiates 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 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 269 of file qquickpath_p.h.

Member Enumeration Documentation

◆ ArcDirection

Enumerator
Clockwise 
Counterclockwise 

Definition at line 284 of file qquickpath_p.h.

Constructor & Destructor Documentation

◆ QQuickPathArc()

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

Definition at line 281 of file qquickpath_p.h.

Member Function Documentation

◆ addToPath()

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

Reimplemented from QQuickCurve.

Definition at line 2010 of file qquickpath.cpp.

References Clockwise, QQuickSvgParser::pathArc(), positionForCurve(), QPointF::x(), and QPointF::y().

+ Here is the call graph for this function:

◆ 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 1959 of file qquickpath.cpp.

◆ directionChanged

void QQuickPathArc::directionChanged ( )
signal

Referenced by setDirection().

+ Here is the caller graph for this function:

◆ Q_REVISION

QQuickPathArc::Q_REVISION ( 2 ,
9  )
signal

◆ radiusX()

qreal QQuickPathArc::radiusX ( ) const

\qmltype PathArc \instantiates 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 1878 of file qquickpath.cpp.

◆ radiusXChanged

void QQuickPathArc::radiusXChanged ( )
signal

Referenced by setRadiusX().

+ Here is the caller graph for this function:

◆ radiusY()

qreal QQuickPathArc::radiusY ( ) const

Definition at line 1893 of file qquickpath.cpp.

◆ radiusYChanged

void QQuickPathArc::radiusYChanged ( )
signal

Referenced by setRadiusY().

+ Here is the caller graph for this function:

◆ setDirection()

void QQuickPathArc::setDirection ( ArcDirection direction)

Definition at line 1964 of file qquickpath.cpp.

References QQuickPathElement::changed(), direction, directionChanged(), and emit.

+ Here is the call graph for this function:

◆ setRadiusX()

void QQuickPathArc::setRadiusX ( qreal radius)

Definition at line 1883 of file qquickpath.cpp.

References QQuickPathElement::changed(), emit, and radiusXChanged().

+ Here is the call graph for this function:

◆ setRadiusY()

void QQuickPathArc::setRadiusY ( qreal radius)

Definition at line 1898 of file qquickpath.cpp.

References QQuickPathElement::changed(), emit, and radiusYChanged().

+ Here is the call graph for this function:

◆ setUseLargeArc()

void QQuickPathArc::setUseLargeArc ( bool largeArc)

Definition at line 1932 of file qquickpath.cpp.

References QQuickPathElement::changed(), emit, and useLargeArcChanged().

+ Here is the call graph for this function:

◆ setXAxisRotation()

void QQuickPathArc::setXAxisRotation ( qreal rotation)

Definition at line 2000 of file qquickpath.cpp.

References QQuickPathElement::changed(), and emit.

+ Here is the call graph for this function:

◆ 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 1927 of file qquickpath.cpp.

◆ useLargeArcChanged

void QQuickPathArc::useLargeArcChanged ( )
signal

Referenced by setUseLargeArc().

+ Here is the caller graph for this function:

◆ 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 1995 of file qquickpath.cpp.

Property Documentation

◆ direction

ArcDirection QQuickPathArc::direction
readwrite

Definition at line 275 of file qquickpath_p.h.

Referenced by setDirection().

◆ radiusX

qreal QQuickPathArc::radiusX
readwrite

Definition at line 272 of file qquickpath_p.h.

◆ radiusY

qreal QQuickPathArc::radiusY
readwrite

Definition at line 273 of file qquickpath_p.h.

◆ useLargeArc

bool QQuickPathArc::useLargeArc
readwrite

Definition at line 274 of file qquickpath_p.h.

◆ xAxisRotation

qreal QQuickPathArc::xAxisRotation
readwrite

Definition at line 276 of file qquickpath_p.h.


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