1// Copyright (C) 2023 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4#ifndef QSCATTERDATAITEM_H
5#define QSCATTERDATAITEM_H
6
7#include <QtGraphs/qgraphsglobal.h>
8#include <QtGui/qquaternion.h>
9
10QT_BEGIN_NAMESPACE
11
12class QScatterDataItem
13{
14public:
15 QScatterDataItem() noexcept = default;
16 explicit QScatterDataItem(QVector3D position) noexcept
17 : m_position(position)
18 {}
19 explicit QScatterDataItem(float x, float y, float z) noexcept
20 : m_position(QVector3D(x, y, z))
21 {}
22 explicit QScatterDataItem(QVector3D position, const QQuaternion &rotation) noexcept
23 : m_position(position)
24 , m_rotation(rotation)
25 {}
26
27 void setPosition(QVector3D pos) noexcept { m_position = pos; }
28 QVector3D position() const noexcept { return m_position; }
29 void setRotation(const QQuaternion &rot) noexcept { m_rotation = rot; }
30 QQuaternion rotation() const { return m_rotation; }
31 void setX(float value) noexcept { m_position.setX(value); }
32 void setY(float value) noexcept { m_position.setY(value); }
33 void setZ(float value) noexcept { m_position.setZ(value); }
34 float x() const noexcept { return m_position.x(); }
35 float y() const noexcept { return m_position.y(); }
36 float z() const noexcept { return m_position.z(); }
37
38private:
39 QVector3D m_position = {};
40 QQuaternion m_rotation = {};
41 Q_DECL_UNUSED_MEMBER quintptr reserved = 0;
42};
43
44QT_END_NAMESPACE
45
46#endif
47

Provided by KDAB

Privacy Policy
Learn to use CMake with our Intro Training
Find out more

source code of qtgraphs/src/graphs3d/data/qscatterdataitem.h