36 #ifndef DISP3DLIB_GEOMETRYMULTIPLIER_H
37 #define DISP3DLIB_GEOMETRYMULTIPLIER_H
43 #include "../../../disp3D_global.h"
49 #include <QSharedPointer>
51 #include <Qt3DRender/QGeometryRenderer>
52 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
53 #define QT_COMPATIBILITY_3D Qt3DRender
54 #include <Qt3DRender/QGeometry>
55 #include <Qt3DRender/QBuffer>
56 #include <Qt3DRender/QAttribute>
58 #define QT_COMPATIBILITY_3D Qt3DCore
59 #include <Qt3DCore/QGeometry>
60 #include <Qt3DCore/QBuffer>
61 #include <Qt3DCore/QAttribute>
104 typedef QSharedPointer<GeometryMultiplier>
SPtr;
105 typedef QSharedPointer<const GeometryMultiplier>
ConstSPtr;
112 Qt3DCore::QNode *tParent =
nullptr);
139 void setTransforms(
const QVector<QMatrix4x4> &tInstanceTansform);
147 void setColors(
const QVector<QColor> &tInstanceColors);
163 QByteArray buildTransformBuffer(
const QVector<QMatrix4x4> &tInstanceTransform);
172 QByteArray buildColorBuffer(
const QVector<QColor> &tInstanceColor);
174 QSharedPointer<QT_COMPATIBILITY_3D::QGeometry> m_pGeometry;
176 QPointer<QT_COMPATIBILITY_3D::QBuffer> m_pTransformBuffer;
178 QPointer<QT_COMPATIBILITY_3D::QBuffer> m_pColorBuffer;
180 QPointer<QT_COMPATIBILITY_3D::QAttribute> m_pTransformAttribute;
182 QPointer<QT_COMPATIBILITY_3D::QAttribute> m_pColorAttribute;
190 #endif // DISP3DLIB_GEOMETRYMULTIPLIER_H