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_QPLANEGEOMETRY_P_H
5#define QT3DEXTRAS_QPLANEGEOMETRY_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 purely as an
12// implementation detail. 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 <QtCore/QSize>
19
20#include <Qt3DCore/private/qgeometry_p.h>
21#include <Qt3DExtras/qplanegeometry.h>
22
23QT_BEGIN_NAMESPACE
24
25namespace Qt3DCore {
26
27class QAttribute;
28class QBuffer;
29
30} // Qt3DCore
31
32namespace Qt3DExtras {
33
34class QPlaneGeometryPrivate : public Qt3DCore::QGeometryPrivate
35{
36public:
37 QPlaneGeometryPrivate();
38 void init();
39
40 float m_width;
41 float m_height;
42 QSize m_meshResolution;
43 bool m_mirrored;
44 Qt3DCore::QAttribute *m_positionAttribute;
45 Qt3DCore::QAttribute *m_normalAttribute;
46 Qt3DCore::QAttribute *m_texCoordAttribute;
47 Qt3DCore::QAttribute *m_tangentAttribute;
48 Qt3DCore::QAttribute *m_indexAttribute;
49 Qt3DCore::QBuffer *m_vertexBuffer;
50 Qt3DCore::QBuffer *m_indexBuffer;
51
52 Q_DECLARE_PUBLIC(QPlaneGeometry)
53
54 QByteArray generateVertexData() const;
55 QByteArray generateIndexData() const;
56};
57
58} // Qt3DExtras
59
60QT_END_NAMESPACE
61
62#endif // QT3DEXTRAS_QPLANEGEOMETRY_P_H
63
64

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