Skip to content

Class QAccelPlot::LineCurvePointRenderer

ClassList > QAccelPlot > LineCurvePointRenderer

Internal renderer responsible for building and updating QSGNode marker geometry for a LineCurve .More...

  • #include <LineCurvePointRenderer.hpp>

Public Static Attributes

Type Name
constexpr std::size_t kVertexCacheBytesPerPoint = {[**kVerticesPerPoint**](classQAccelPlot_1_1LineCurvePointRenderer.md#variable-kverticesperpoint) \* sizeof([**PointVertex**](structQAccelPlot_1_1PointVertex.md))}
Vertex cache bytes per marker.
constexpr int kVerticesPerPoint = {6}
Number of vertices drawn per marker.

Public Functions

Type Name
bool contains (const QPointF & point, const CurveHitTestParams & params) const
Returns true if__point lies within__params.hitThreshold pixels of any marker.
QSGNode * paint (QSGNode * oldNode, const PointCurveRenderParams & params) const
Updates the scene graph node tree for the point markers.

Public Static Functions

Type Name
void writeVertexCache (std::vector< char > & cache, int firstPoint, int pointCount)
Writes the vertices of markers [ firstPoint _,_pointCount ) into__cache , which holdskVertexCacheBytesPerPoint bytes per marker.

Detailed Description

Renders per-point markers as two triangles per point. The vertex buffer depends only on the point count, so data updates of the same size only upload the data texture.

Public Static Attributes Documentation

variable kVertexCacheBytesPerPoint

Vertex cache bytes per marker.

constexpr std::size_t QAccelPlot::LineCurvePointRenderer::kVertexCacheBytesPerPoint;


variable kVerticesPerPoint

Number of vertices drawn per marker.

constexpr int QAccelPlot::LineCurvePointRenderer::kVerticesPerPoint;


Public Functions Documentation

function contains

Returns true if__point lies within__params.hitThreshold pixels of any marker.

bool QAccelPlot::LineCurvePointRenderer::contains (
    const QPointF & point,
    const CurveHitTestParams & params
) const


function paint

Updates the scene graph node tree for the point markers.

QSGNode * QAccelPlot::LineCurvePointRenderer::paint (
    QSGNode * oldNode,
    const PointCurveRenderParams & params
) const

The vertex buffer is written only when the point count changes, from params.vertexCache when it matches.


Public Static Functions Documentation

function writeVertexCache

Writes the vertices of markers [ firstPoint _,_pointCount ) into__cache , which holdskVertexCacheBytesPerPoint bytes per marker.

static void QAccelPlot::LineCurvePointRenderer::writeVertexCache (
    std::vector< char > & cache,
    int firstPoint,
    int pointCount
) 

Marker vertices hold no data, so the vertices before firstPoint stay valid.



The documentation for this class was generated from the following file QAccelPlot/src/QAccelPlot/renderers/LineCurvePointRenderer.hpp