QGIS API Documentation  3.24.2-Tisler (13c1a02865)
qgslinematerial_p.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgslinematerial_p.h
3  --------------------------------------
4  Date : Apr 2019
5  Copyright : (C) 2019 by Martin Dobias
6  Email : wonder dot sk at gmail dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSLINEMATERIAL_P_H
17 #define QGSLINEMATERIAL_P_H
18 
20 
21 //
22 // W A R N I N G
23 // -------------
24 //
25 // This file is not part of the QGIS API. It exists purely as an
26 // implementation detail. This header file may change from version to
27 // version without notice, or even be removed.
28 //
29 
30 #include <Qt3DRender/QMaterial>
31 #include <Qt3DRender/QCamera>
32 
33 #define SIP_NO_FILE
34 
54 class QgsLineMaterial : public Qt3DRender::QMaterial
55 {
56  Q_OBJECT
57  public:
58  QgsLineMaterial();
59 
60  void setLineColor( const QColor &color );
61  QColor lineColor() const;
62 
63  void setLineWidth( float width );
64  float lineWidth() const;
65 
66  Q_INVOKABLE void setViewportSize( const QSizeF &viewportSize );
67 
68  private:
69  Qt3DRender::QParameter *mParameterThickness = nullptr;
70  Qt3DRender::QParameter *mParameterMiterLimit = nullptr;
71  Qt3DRender::QParameter *mParameterLineColor = nullptr;
72 
73  Qt3DRender::QParameter *mParameterWindowScale = nullptr;
74 
75 };
76 
78 
79 #endif // QGSLINEMATERIAL_P_H