1// Copyright (C) 2015 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 QT3DEXTRAS_QCONEGEOMETRY_P_H
5#define QT3DEXTRAS_QCONEGEOMETRY_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists for the convenience
12// of other Qt classes. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <Qt3DCore/private/qgeometry_p.h>
19
20QT_BEGIN_NAMESPACE
21
22namespace Qt3DCore {
23
24class QAttribute;
25class QBuffer;
26
27} // namespace Qt3DCore
28
29namespace Qt3DExtras {
30
31class QConeGeometryPrivate : public Qt3DCore::QGeometryPrivate
32{
33public:
34 QConeGeometryPrivate();
35
36 void init();
37
38 Q_DECLARE_PUBLIC(QConeGeometry)
39
40 bool m_hasTopEndcap;
41 bool m_hasBottomEndcap;
42 int m_rings;
43 int m_slices;
44 float m_topRadius;
45 float m_bottomRadius;
46 float m_length;
47 Qt3DCore::QAttribute *m_positionAttribute;
48 Qt3DCore::QAttribute *m_normalAttribute;
49 Qt3DCore::QAttribute *m_texCoordAttribute;
50 Qt3DCore::QAttribute *m_indexAttribute;
51 Qt3DCore::QBuffer *m_positionBuffer;
52 Qt3DCore::QBuffer *m_vertexBuffer;
53 Qt3DCore::QBuffer *m_indexBuffer;
54
55 QByteArray generateVertexData() const;
56 QByteArray generateIndexData() const;
57};
58
59} // Qt3DExtras
60
61QT_END_NAMESPACE
62
63#endif // QT3DEXTRAS_QCONEGEOMETRY_P_H
64
65

source code of qt3d/src/extras/geometries/qconegeometry_p.h