Class QAccelPlot::RectMaterial¶
ClassList > QAccelPlot > RectMaterial
QSGMaterial for rectangle series rendering, extending DataTextureMaterial with a rect-count uniform.
#include <RectMaterial.hpp>
Inherits the following classes: QAccelPlot::DataTextureMaterial
Inherited by the following classes: QAccelPlot::BarMaterial
Inheritance diagram¶
flowchart TB
classQAccelPlot_1_1RectMaterial["QAccelPlot::RectMaterial"]
classQAccelPlot_1_1DataTextureMaterial["QAccelPlot::DataTextureMaterial"]
classQAccelPlot_1_1DataTextureMaterial --> classQAccelPlot_1_1RectMaterial
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
classQAccelPlot_1_1BarMaterial["QAccelPlot::BarMaterial"]
classQAccelPlot_1_1RectMaterial --> classQAccelPlot_1_1BarMaterial
click classQAccelPlot_1_1BarMaterial "../classQAccelPlot_1_1BarMaterial/" "Open QAccelPlot::BarMaterial"
Public Attributes¶
| Type | Name |
|---|---|
| float | antialiasing = {0.0f}1.0 to smooth the rectangle and outline edges. |
| QColor | borderColor = {Qt::black}Outline color. |
| float | borderWidth = {0.0f}Outline width in pixels, drawn inside each rectangle. |
| QColor | hoverColor = {Qt::transparent}Fill color of the highlighted rectangle. |
| float | hoveredIndex = {-1.0f}Index of the highlighted rectangle, or -1 for none. |
| QVector2D | minimumSize = {0.0f, 0.0f}Minimum drawn rectangle width and height in pixels. |
| float | rectCount = {0.0f}Number of rectangles in the data texture (used to index the sampler). |
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 |
|---|---|
| RectMaterial () Constructs a RectMaterial with default uniform values. |
|
| QSGMaterialShader * | createShader (QSGRendererInterface::RenderMode) override const Creates and returns the rectangle 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 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 rectangle-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. |
Public Attributes Documentation¶
variable antialiasing¶
1.0 to smooth the rectangle and outline edges.
variable borderColor¶
Outline color.
variable borderWidth¶
Outline width in pixels, drawn inside each rectangle.
variable hoverColor¶
Fill color of the highlighted rectangle.
variable hoveredIndex¶
Index of the highlighted rectangle, or -1 for none.
variable minimumSize¶
Minimum drawn rectangle width and height in pixels.
variable rectCount¶
Number of rectangles in the data texture (used to index the sampler).
Public Functions Documentation¶
function RectMaterial¶
Constructs a RectMaterial with default uniform values.
function createShader¶
Creates and returns the rectangle shader program.
QSGMaterialShader * QAccelPlot::RectMaterial::createShader (
QSGRendererInterface::RenderMode
) override const
function type¶
Returns the unique material type identifier for this class.
Protected Functions Documentation¶
function compareExtra¶
Compares the rectangle-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/RectMaterial.hpp