1// Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB).
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 QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H
5#define QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H
6
7#include <Qt3DCore/qcomponent.h>
8#include <Qt3DRender/qt3drender_global.h>
9
10#include <QtGui/QVector3D>
11
12QT_BEGIN_NAMESPACE
13
14namespace Qt3DRender {
15
16class QLevelOfDetailBoundingSpherePrivate;
17
18class Q_3DRENDERSHARED_EXPORT QLevelOfDetailBoundingSphere
19{
20 Q_GADGET
21 Q_PROPERTY(QVector3D center READ center CONSTANT)
22 Q_PROPERTY(float radius READ radius CONSTANT)
23public:
24 explicit QLevelOfDetailBoundingSphere(QVector3D center = QVector3D(), float radius = 1.0f);
25 QLevelOfDetailBoundingSphere(const QLevelOfDetailBoundingSphere &other);
26 ~QLevelOfDetailBoundingSphere();
27
28 QLevelOfDetailBoundingSphere &operator =(const QLevelOfDetailBoundingSphere &other);
29
30 QVector3D center() const;
31 float radius() const;
32
33 bool isEmpty() const;
34 bool operator ==(const QLevelOfDetailBoundingSphere &other) const;
35 bool operator !=(const QLevelOfDetailBoundingSphere &other) const;
36
37private:
38 QSharedDataPointer<QLevelOfDetailBoundingSpherePrivate> d_ptr;
39};
40
41} // namespace Qt3DRender
42
43QT_END_NAMESPACE
44
45#endif // QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H
46

source code of qt3d/src/render/frontend/qlevelofdetailboundingsphere.h