QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
gui
mesh
qgsmeshrenderermeshsettingswidget.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsmeshrenderermeshsettingswidget.cpp
3
---------------------------------------
4
begin : June 2018
5
copyright : (C) 2018 by Peter Petrik
6
email : zilolv 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
#include "
qgsmeshrenderermeshsettingswidget.h
"
17
18
#include "
qgis.h
"
19
#include "
qgscolorbutton.h
"
20
#include "
qgsdoublespinbox.h
"
21
#include "
qgsmeshlayer.h
"
22
23
#include <QtGlobal>
24
25
#include "moc_qgsmeshrenderermeshsettingswidget.cpp"
26
27
QgsMeshRendererMeshSettingsWidget::QgsMeshRendererMeshSettingsWidget
( QWidget *parent )
28
: QWidget( parent )
29
30
{
31
setupUi(
this
);
32
33
mLineUnitsComboBox->setUnits( {
Qgis::RenderUnit::Millimeters
,
Qgis::RenderUnit::MetersInMapUnits
,
Qgis::RenderUnit::Pixels
,
Qgis::RenderUnit::Points
} );
34
35
36
connect( mColorWidget, &
QgsColorButton::colorChanged
,
this
, &
QgsMeshRendererMeshSettingsWidget::widgetChanged
);
37
connect( mLineWidthSpinBox, qOverload<double>( &QgsDoubleSpinBox::valueChanged ),
this
, &
QgsMeshRendererMeshSettingsWidget::widgetChanged
);
38
connect( mLineUnitsComboBox, &
QgsUnitSelectionWidget::changed
,
this
, &
QgsMeshRendererMeshSettingsWidget::widgetChanged
);
39
}
40
41
void
QgsMeshRendererMeshSettingsWidget::setLayer
(
QgsMeshLayer
*layer,
MeshType
meshType )
42
{
43
mMeshType = meshType;
44
mMeshLayer = layer;
45
}
46
47
QgsMeshRendererMeshSettings
QgsMeshRendererMeshSettingsWidget::settings
()
const
48
{
49
QgsMeshRendererMeshSettings
settings
;
50
settings
.setColor( mColorWidget->color() );
51
settings
.setLineWidth( mLineWidthSpinBox->value() );
52
settings
.setLineWidthUnit( mLineUnitsComboBox->unit() );
53
return
settings
;
54
}
55
56
void
QgsMeshRendererMeshSettingsWidget::syncToLayer
()
57
{
58
if
( !mMeshLayer )
59
return
;
60
61
const
QgsMeshRendererSettings
rendererSettings = mMeshLayer->rendererSettings();
62
63
QgsMeshRendererMeshSettings
settings
;
64
switch
( mMeshType )
65
{
66
case
Native
:
67
settings
= rendererSettings.
nativeMeshSettings
();
68
break
;
69
case
Triangular
:
70
settings
= rendererSettings.
triangularMeshSettings
();
71
break
;
72
case
Edge
:
73
settings
= rendererSettings.
edgeMeshSettings
();
74
break
;
75
}
76
mColorWidget->setColor(
settings
.color() );
77
mLineWidthSpinBox->setValue(
settings
.lineWidth() );
78
mLineUnitsComboBox->setUnit(
settings
.lineWidthUnit() );
79
}
Qgis::RenderUnit::Millimeters
@ Millimeters
Millimeters.
Definition
qgis.h:5759
Qgis::RenderUnit::Points
@ Points
Points (e.g., for font sizes).
Definition
qgis.h:5763
Qgis::RenderUnit::Pixels
@ Pixels
Pixels.
Definition
qgis.h:5761
Qgis::RenderUnit::MetersInMapUnits
@ MetersInMapUnits
Meters value as Map units.
Definition
qgis.h:5766
QgsColorButton::colorChanged
void colorChanged(const QColor &color)
Emitted whenever a new color is set for the button.
QgsMeshLayer
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Definition
qgsmeshlayer.h:105
QgsMeshRendererMeshSettingsWidget::setLayer
void setLayer(QgsMeshLayer *layer, MeshType meshType)
Associates mesh layer with the widget.
Definition
qgsmeshrenderermeshsettingswidget.cpp:41
QgsMeshRendererMeshSettingsWidget::widgetChanged
void widgetChanged()
Mesh rendering settings changed.
QgsMeshRendererMeshSettingsWidget::QgsMeshRendererMeshSettingsWidget
QgsMeshRendererMeshSettingsWidget(QWidget *parent=nullptr)
A widget to hold the renderer mesh settings for a mesh layer.
Definition
qgsmeshrenderermeshsettingswidget.cpp:27
QgsMeshRendererMeshSettingsWidget::settings
QgsMeshRendererMeshSettings settings() const
Returns the mesh rendering settings (native or triangular or edge).
Definition
qgsmeshrenderermeshsettingswidget.cpp:47
QgsMeshRendererMeshSettingsWidget::MeshType
MeshType
Definition
qgsmeshrenderermeshsettingswidget.h:44
QgsMeshRendererMeshSettingsWidget::Edge
@ Edge
Definition
qgsmeshrenderermeshsettingswidget.h:47
QgsMeshRendererMeshSettingsWidget::Triangular
@ Triangular
Definition
qgsmeshrenderermeshsettingswidget.h:46
QgsMeshRendererMeshSettingsWidget::Native
@ Native
Definition
qgsmeshrenderermeshsettingswidget.h:45
QgsMeshRendererMeshSettingsWidget::syncToLayer
void syncToLayer()
Synchronizes widgets state with associated mesh layer.
Definition
qgsmeshrenderermeshsettingswidget.cpp:56
QgsMeshRendererMeshSettings
Represents a mesh renderer settings for mesh objects.
Definition
qgsmeshrenderersettings.h:41
QgsMeshRendererSettings
Represents all mesh renderer settings.
Definition
qgsmeshrenderersettings.h:312
QgsMeshRendererSettings::edgeMeshSettings
QgsMeshRendererMeshSettings edgeMeshSettings() const
Returns edge mesh renderer settings.
Definition
qgsmeshrenderersettings.h:340
QgsMeshRendererSettings::nativeMeshSettings
QgsMeshRendererMeshSettings nativeMeshSettings() const
Returns native mesh renderer settings.
Definition
qgsmeshrenderersettings.h:327
QgsMeshRendererSettings::triangularMeshSettings
QgsMeshRendererMeshSettings triangularMeshSettings() const
Returns triangular mesh renderer settings.
Definition
qgsmeshrenderersettings.h:332
QgsUnitSelectionWidget::changed
void changed()
Emitted when the selected unit is changed, or the definition of the map unit scale is changed.
qgis.h
qgscolorbutton.h
qgsdoublespinbox.h
qgsmeshlayer.h
qgsmeshrenderermeshsettingswidget.h
Generated on
for QGIS API Documentation by
1.17.0