5#include "qwt3d_types.h"
6#include "qwt3d_color.h"
8#include <QOpenGLBuffer>
9#include <QOpenGLVertexArrayObject>
10#include <QOpenGLShaderProgram>
46class Qwt3DBar::PrivateData
55 std::vector<Qwt3DBarSpec> m_bars;
68 double m_meshLineWidth;
69 double m_polygonOffset;
73 bool m_shaderInitialized;
74 QOpenGLBuffer m_vertexBuffer;
75 QOpenGLBuffer m_indexBuffer;
76 QOpenGLVertexArrayObject m_vao;
77 QOpenGLShaderProgram m_shader;
88 bool m_isGridData =
false;
89 int m_gridColumns = 0;
91 double m_gridMinX = 0.0;
92 double m_gridMaxX = 0.0;
93 double m_gridMinY = 0.0;
94 double m_gridMaxY = 0.0;
95 std::vector<std::vector<double>> m_gridZ;
98inline Qwt3DBar::PrivateData::PrivateData(
Qwt3DBar* q)
106 , m_dataColor(nullptr)
107 , m_meshColor(
RGBA(0.0, 0.0, 0.0, 1.0))
108 , m_meshLineWidth(1.0)
109 , m_polygonOffset(0.5)
111 , m_shaderInitialized(false)
113 , m_lineIndexCount(0)
118 m_indexBuffer = QOpenGLBuffer(QOpenGLBuffer::IndexBuffer);
121inline Qwt3DBar::PrivateData::~PrivateData()
124 m_vertexBuffer.destroy();
125 m_indexBuffer.destroy();
130 m_dataColor->destroy();
3D bar chart item with VBO/VAO rendering
Definition qwt3d_bar.h:48
BarStyle
Bar rendering style
Definition qwt3d_bar.h:54
Abstract base class for color functors
Definition qwt3d_color.h:25
Vertex structure for VBO upload
Definition qwt3d_bar_p.h:24
Parallelepiped spanned by 2 Triples
Definition qwt3d_types.h:334
Specification of a single bar (axis-aligned cuboid)
Definition qwt3d_bar_p.h:37
double height
original z value, used to recompute baseZ/topZ when baseline changes
Definition qwt3d_bar_p.h:43
Red-Green-Blue-Alpha value
Definition qwt3d_types.h:395
Triple [x,y,z]
Definition qwt3d_types.h:201