QGIS API Documentation 3.41.0-Master (af5edcb665c)
Loading...
Searching...
No Matches
qgscolorramptexture.h
Go to the documentation of this file.
1/***************************************************************************
2 qgscolorramptexture.h
3 -------------------------
4 begin : january 2020
5 copyright : (C) 2020 by Vincent Cloarec
6 email : vcloarec at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSCOLORRAMPTEXTURE_H
19#define QGSCOLORRAMPTEXTURE_H
20
22
23#include <Qt3DRender/QEffect>
24#include <Qt3DRender/QGraphicsApiFilter>
25#include <Qt3DRender/QParameter>
26#include <Qt3DRender/QTexture>
27
28#include <QUrl>
29#include <QVector2D>
30#include <QVector3D>
31#include <QVector4D>
32#include <QByteArray>
33
34#include "qgscolorrampshader.h"
35
36#define SIP_NO_FILE
37
38class QgsColorRampTextureGenerator : public Qt3DRender::QTextureImageDataGenerator
39{
40 public:
41 QgsColorRampTextureGenerator( const QgsColorRampShader &colorRampShader, double verticalScale = 1 );
42
43 public:
44 Qt3DRender::QTextureImageDataPtr operator()() override;
45
46 bool operator==( const Qt3DRender::QTextureImageDataGenerator &other ) const override;
47
48 // marked as deprecated in 5.15, but undeprecated for Qt 6.0. TODO -- remove when we require 6.0
50 QT3D_FUNCTOR( QgsColorRampTextureGenerator )
52
53 private:
54 QgsColorRampShader mColorRampShader;
55 double mVerticalScale = 1;
56};
57
58
59class QgsColorRampTexture : public Qt3DRender::QAbstractTextureImage
60{
61 Q_OBJECT
62
63 public:
64 QgsColorRampTexture( const QgsColorRampShader &colorRampShader, double verticalScale = 1, Qt3DCore::QNode *parent = nullptr );
65 // QAbstractTextureImage interface
66 protected:
67 Qt3DRender::QTextureImageDataGeneratorPtr dataGenerator() const override;
68
69 private:
70 QgsColorRampShader mColorRampShader;
71 double mVerticalScale = 1;
72};
73
75
76#endif // QGSCOLORRAMPTEXTURE_H
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
#define Q_NOWARN_DEPRECATED_POP
Definition qgis.h:6643
#define Q_NOWARN_DEPRECATED_PUSH
Definition qgis.h:6642
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)