QGIS API Documentation  3.26.3-Buenos Aires (65e4edfdad)
qgspointcloudrgbrendererwidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgspointcloudrgbrendererwidget.h
3  ---------------------
4  begin : November 2020
5  copyright : (C) 2020 by Nyall Dawson
6  email : nyall dot dawson 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 QGSPOINTCLOUDRGBRENDERERWIDGET_H
19 #define QGSPOINTCLOUDRGBRENDERERWIDGET_H
20 
22 #include "ui_qgspointcloudrgbrendererwidgetbase.h"
23 #include "qgis_gui.h"
24 
26 class QgsPointCloudLayer;
27 class QgsStyle;
28 class QLineEdit;
30 
31 #define SIP_NO_FILE
32 
34 
35 class GUI_EXPORT QgsPointCloudRgbRendererWidget: public QgsPointCloudRendererWidget, private Ui::QgsPointCloudRgbRendererWidgetBase
36 {
37  Q_OBJECT
38 
39  public:
40  QgsPointCloudRgbRendererWidget( QgsPointCloudLayer *layer, QgsStyle *style );
42 
43  QgsPointCloudRenderer *renderer() override;
44  private slots:
45 
46  void mRedMinLineEdit_textChanged( const QString & );
47  void mRedMaxLineEdit_textChanged( const QString & );
48  void mGreenMinLineEdit_textChanged( const QString & );
49  void mGreenMaxLineEdit_textChanged( const QString & );
50  void mBlueMinLineEdit_textChanged( const QString & );
51  void mBlueMaxLineEdit_textChanged( const QString & );
52 
53  void emitWidgetChanged();
54 
55  void redAttributeChanged();
56  void greenAttributeChanged();
57  void blueAttributeChanged();
58 
59  private:
60  void setFromRenderer( const QgsPointCloudRenderer *r );
61 
62  void createValidators();
63  void setCustomMinMaxValues( QgsPointCloudRgbRenderer *r );
65  void setMinMaxValue( const QgsContrastEnhancement *ce, QLineEdit *minEdit, QLineEdit *maxEdit );
66 
67  void minMaxModified();
68 
69  bool mBlockChangedSignal = false;
70  int mDisableMinMaxWidgetRefresh = 0;
71 
72 };
73 
75 
76 #endif // QGSPOINTCLOUDRGBRENDERERWIDGET_H
QgsPointCloudRendererWidget
Base class for point cloud 2D renderer settings widgets.
Definition: qgspointcloudrendererwidget.h:36
QgsPointCloudRgbRenderer
An RGB renderer for 2d visualisation of point clouds using embedded red, green and blue attributes.
Definition: qgspointcloudrgbrenderer.h:71
QgsPointCloudLayer
Represents a map layer supporting display of point clouds.
Definition: qgspointcloudlayer.h:45
QgsPointCloudRendererWidget::renderer
virtual QgsPointCloudRenderer * renderer()=0
Returns a new instance of a renderer as defined by the settings in the widget.
QgsContrastEnhancement
Manipulates raster or point cloud pixel values so that they enhanceContrast or clip into a specified ...
Definition: qgscontrastenhancement.h:42
QgsStyle
Definition: qgsstyle.h:159
QgsPointCloudRenderer
Abstract base class for 2d point cloud renderers.
Definition: qgspointcloudrenderer.h:296
qgspointcloudrendererwidget.h