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
qgeocircle.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QGEOCIRCLE_H
5#define QGEOCIRCLE_H
6
7#include <QtPositioning/QGeoRectangle>
8
9QT_BEGIN_NAMESPACE
10
11class QGeoCoordinate;
12class QGeoCirclePrivate;
13
14class Q_POSITIONING_EXPORT QGeoCircle : public QGeoShape
15{
16 Q_GADGET
17 Q_PROPERTY(QGeoCoordinate center READ center WRITE setCenter)
18 Q_PROPERTY(qreal radius READ radius WRITE setRadius)
19
20public:
21 QGeoCircle();
22 QGeoCircle(const QGeoCoordinate &center, qreal radius = -1.0);
23 QGeoCircle(const QGeoCircle &other);
24 QGeoCircle(const QGeoShape &other);
25
26 ~QGeoCircle();
27
28 QGeoCircle &operator=(const QGeoCircle &other);
29
30 void setCenter(const QGeoCoordinate &center);
31 QGeoCoordinate center() const;
32
33 void setRadius(qreal radius);
34 qreal radius() const;
35
36 Q_INVOKABLE void translate(double degreesLatitude, double degreesLongitude);
37 Q_INVOKABLE QGeoCircle translated(double degreesLatitude, double degreesLongitude) const;
38 Q_INVOKABLE void extendCircle(const QGeoCoordinate &coordinate);
39
40 Q_INVOKABLE QString toString() const;
41
42private:
43 inline QGeoCirclePrivate *d_func();
44 inline const QGeoCirclePrivate *d_func() const;
45
46#ifndef QT_NO_DATASTREAM
47 friend QDataStream &operator<<(QDataStream &stream, const QGeoCircle &circle)
48 {
49 return stream << static_cast<const QGeoShape &>(circle);
50 }
51 friend QDataStream &operator>>(QDataStream &stream, QGeoCircle &circle)
52 {
53 return stream >> static_cast<QGeoShape &>(circle);
54 }
55#endif
56};
57
58Q_DECLARE_TYPEINFO(QGeoCircle, Q_RELOCATABLE_TYPE);
59
60QT_END_NAMESPACE
61
62QT_DECL_METATYPE_EXTERN(QGeoCircle, Q_POSITIONING_EXPORT)
63
64#endif
\inmodule QtPositioning
Definition qgeocircle.h:15
QGeoCodingManagerPrivate()=default
std::unique_ptr< QGeoCodingManagerEngine > engine
\inmodule QtLocation
\inmodule QtPositioning
Q_DECLARE_TYPEINFO(QByteArrayView, Q_PRIMITIVE_TYPE)