Class QAccelPlot::BandEdgeMaterial¶
ClassList > QAccelPlot > BandEdgeMaterial
Line material for the lower or upper edge line of a band, reading (x, low, high) data points.More...
#include <BandEdgeMaterial.hpp>
Inherits the following classes: QAccelPlot::LineMaterial
Inheritance diagram¶
flowchart TB
classQAccelPlot_1_1BandEdgeMaterial["QAccelPlot::BandEdgeMaterial"]
classQAccelPlot_1_1LineMaterial["QAccelPlot::LineMaterial"]
classQAccelPlot_1_1LineMaterial --> classQAccelPlot_1_1BandEdgeMaterial
click classQAccelPlot_1_1LineMaterial "../classQAccelPlot_1_1LineMaterial/" "Open QAccelPlot::LineMaterial"
classQAccelPlot_1_1DataTextureMaterial["QAccelPlot::DataTextureMaterial"]
classQAccelPlot_1_1DataTextureMaterial --> classQAccelPlot_1_1LineMaterial
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
Public Types¶
| Type | Name |
|---|---|
| enum | Edge Which value of each data point the edge line draws. |
Public Attributes inherited from QAccelPlot::LineMaterial¶
| Type | Name |
|---|---|
| float | antialiasingEnabled = {1.0f}1.0 when GPU anti-aliasing is active. |
| float | antialiasingFeather = {1.0f}Anti-aliasing feather width in pixels. |
| float | dashOffset = {0.0f}Phase offset into the dash pattern. |
| float | dashPattern = {}Alternating dash/gap lengths (up to 8 entries). |
| int | dashPatternSize = {0}Number of valid entries in dashPattern . |
| float | dashPeriod = {0.0f}Total dash+gap cycle length in pixels. |
| float | lineWidth = {1.0f}Rendered line width in pixels. |
| float | pointCount = {0.0f}Number of data points (used to index the data texture). |
| float | stepMode = {0.0f}StepMode of the line, as a float (std140 offset 180 in the UBO). |
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 |
|---|---|
| BandEdgeMaterial (Edge edge) Constructs a material for the edge line. |
|
| QSGMaterialShader * | createShader (QSGRendererInterface::RenderMode) override const Creates and returns the edge line shader program. |
| Edge | edge () const Returns the edge line this material draws. |
| QSGMaterialType * | type () override const Returns the material type of this edge; the two edges use different shaders. |
Public Functions inherited from QAccelPlot::LineMaterial¶
| Type | Name |
|---|---|
| LineMaterial () Constructs a LineMaterial with default uniform values. |
|
| QSGMaterialShader * | createShader (QSGRendererInterface::RenderMode) override const Creates and returns the line shader program. |
| QSGMaterialType * | type () override const Returns the unique material type identifier for this subclass. |
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 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 inherited from QAccelPlot::LineMaterial¶
| Type | Name |
|---|---|
| virtual int | compareExtra (const QSGMaterial * other) override const Compares line-specific uniform fields 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. |
Protected Static Functions inherited from QAccelPlot::LineMaterial¶
| Type | Name |
|---|---|
| QSGMaterialShader * | createLineShader (const QString & vertexShaderFileName) Returns the line shader program with vertex stage vertexShaderFileName and the line fragment stage. |
Detailed Description¶
Uses the line uniforms and fragment stage; only the vertex stage reads three floats per data point.
Public Types Documentation¶
enum Edge¶
Which value of each data point the edge line draws.
Public Functions Documentation¶
function BandEdgeMaterial¶
Constructs a material for the edge line.
function createShader¶
Creates and returns the edge line shader program.
QSGMaterialShader * QAccelPlot::BandEdgeMaterial::createShader (
QSGRendererInterface::RenderMode
) override const
function edge¶
Returns the edge line this material draws.
function type¶
Returns the material type of this edge; the two edges use different shaders.
The documentation for this class was generated from the following file QAccelPlot/src/QAccelPlot/materials/BandEdgeMaterial.hpp