Class QAccelPlot::BandMaterial¶
ClassList > QAccelPlot > BandMaterial
QSGMaterial that fills a band between the low and high values of (x, low, high) data points.More...
#include <BandMaterial.hpp>
Inherits the following classes: QAccelPlot::DataTextureMaterial
Inheritance diagram¶
flowchart TB
classQAccelPlot_1_1BandMaterial["QAccelPlot::BandMaterial"]
classQAccelPlot_1_1DataTextureMaterial["QAccelPlot::DataTextureMaterial"]
classQAccelPlot_1_1DataTextureMaterial --> classQAccelPlot_1_1BandMaterial
click classQAccelPlot_1_1DataTextureMaterial "../classQAccelPlot_1_1DataTextureMaterial/" "Open QAccelPlot::DataTextureMaterial"
external_base_classQAccelPlot_1_1DataTextureMaterial_1["QSGMaterial"]
external_base_classQAccelPlot_1_1DataTextureMaterial_1 --> classQAccelPlot_1_1DataTextureMaterial
Classes¶
| Type | Name |
|---|---|
| struct | Vertex Vertex layout of the band triangle strip: two vertices per data point. |
Public Attributes¶
| Type | Name |
|---|---|
| float | dataPointCount = {0.0f}Number of data points in the data texture (used to clamp neighbor lookups). |
Public Attributes inherited from QAccelPlot::DataTextureMaterial¶
See QAccelPlot::DataTextureMaterial
| Type | Name |
|---|---|
| QColor | color = {Qt::blue}Line/fill color uniform. |
| std::shared_ptr< DataTexture > | dataTexture Data texture sampled by the shader. Materials drawing the same samples may share one. |
| QVector2D | domainMax = {1.0f, 1.0f}Maximum data-space coordinate. |
| QVector2D | domainMin = {0.0f, 0.0f}Minimum data-space coordinate. |
| float | logScaleX = {0.0f}1.0 when the X axis uses log scale (float for std140 UBO compatibility). |
| float | logScaleY = {0.0f}1.0 when the Y axis uses log scale (float for std140 UBO compatibility). |
| float | useVertexColor = {0.0f}1.0 when per-vertex color overrides color (float for std140 UBO compatibility). |
| QVector2D | viewportSize = {800.0f, 600.0f}Viewport size in pixels. |
Public Functions¶
| Type | Name |
|---|---|
| BandMaterial () Constructs a BandMaterial with default uniform values. |
|
| QSGMaterialShader * | createShader (QSGRendererInterface::RenderMode) override const Creates and returns the band shader program. |
| QSGMaterialType * | type () override const Returns the unique material type identifier for this class. |
Public Functions inherited from QAccelPlot::DataTextureMaterial¶
See QAccelPlot::DataTextureMaterial
| Type | Name |
|---|---|
| DataTextureMaterial () Constructs an empty DataTextureMaterial . |
|
| int | compare (const QSGMaterial * other) override const Compares shared uniform fields; delegates type-specific fields to compareExtra() . |
| QSGTexture * | sampledTexture () const Returns the texture the shader samples, or nullptr beforedataTexture holds an upload. |
| void | uploadTexture (QQuickWindow * window, const float * data, int floatCount) Uploads floatCount raw floats from__data into dataTexture , creating it when it isnullptr . |
| ~DataTextureMaterial () override |
Public Static Functions¶
| Type | Name |
|---|---|
| const QSGGeometry::AttributeSet & | vertexAttributes () Returns the vertex attribute set matching Vertex : __{float id, float edge} (8 bytes). |
Public Static Functions inherited from QAccelPlot::DataTextureMaterial¶
See QAccelPlot::DataTextureMaterial
| Type | Name |
|---|---|
| const QSGGeometry::AttributeSet & | attributeSet () Returns the shared vertex attribute set: {float id, float param, uchar4 color} (12 bytes). |
| void | commitTexture (QSGMaterialShader::RenderState & state, int binding, QSGTexture ** texture, const DataTexture * data) Commits the texture of data to sampler__binding (call from updateSampledImage ). Does nothing before an upload. |
| const QSGGeometry::AttributeSet & | vertexIndexAttributeSet () Returns the attribute set of marker quads: one ignored uchar4 placeholder (4 bytes). |
| bool | writeCommonUniforms (char * buf, int bufSize, const QMatrix4x4 & matrix, const DataTextureMaterial * mat) Writes the shared UBO prefix (transform + color + domain + flags) into buf . |
Protected Functions¶
| Type | Name |
|---|---|
| virtual int | compareExtra (const QSGMaterial * other) override const Compares the band-specific uniforms after the base-class comparison succeeds. |
Protected Functions inherited from QAccelPlot::DataTextureMaterial¶
See QAccelPlot::DataTextureMaterial
| Type | Name |
|---|---|
| virtual int | compareExtra (const QSGMaterial * other) const Subclass hook for compare() — called after the shared fields compare equal. |
Detailed Description¶
The data texture holds three floats per data point. Vertices carry only a data point index and an edge selector, so panning and zooming change uniforms only.
Public Attributes Documentation¶
variable dataPointCount¶
Number of data points in the data texture (used to clamp neighbor lookups).
Public Functions Documentation¶
function BandMaterial¶
Constructs a BandMaterial with default uniform values.
function createShader¶
Creates and returns the band shader program.
QSGMaterialShader * QAccelPlot::BandMaterial::createShader (
QSGRendererInterface::RenderMode
) override const
function type¶
Returns the unique material type identifier for this class.
Public Static Functions Documentation¶
function vertexAttributes¶
Returns the vertex attribute set matching Vertex : __{float id, float edge} (8 bytes).
Protected Functions Documentation¶
function compareExtra¶
Compares the band-specific uniforms after the base-class comparison succeeds.
Implements QAccelPlot::DataTextureMaterial::compareExtra
The documentation for this class was generated from the following file QAccelPlot/src/QAccelPlot/materials/BandMaterial.hpp