36 QGridLayout *layout = new QGridLayout( this );
37 QLabel *label = new QLabel( tr(
"The 2.5D renderer only can be used with polygon layers. \n"
38 "'%1' is not a polygon layer and cannot be rendered in 2.5D." )
39 .arg( layer->name() ),
41 layout->addWidget( label );
46 this->layout()->setContentsMargins( 0, 0, 0, 0 );
48 mAngleWidget->setClearValue( 0 );
49 mWallColorButton->setColorDialogTitle( tr(
"Select Wall Color" ) );
50 mWallColorButton->setAllowOpacity(
true );
51 mWallColorButton->setContext( QStringLiteral(
"symbology" ) );
52 mRoofColorButton->setColorDialogTitle( tr(
"Select Roof Color" ) );
53 mRoofColorButton->setAllowOpacity(
true );
54 mRoofColorButton->setContext( QStringLiteral(
"symbology" ) );
55 mShadowColorButton->setColorDialogTitle( tr(
"Select Shadow Color" ) );
56 mShadowColorButton->setAllowOpacity(
true );
57 mShadowColorButton->setContext( QStringLiteral(
"symbology" ) );
64 mHeightWidget->setLayer( layer );
67 const QVariant height = scope->
variable( QStringLiteral(
"qgis_25d_height" ) );
68 const QVariant angle = scope->
variable( QStringLiteral(
"qgis_25d_angle" ) );
73 mAngleWidget->setClearValue( 70 );
74 mWallColorButton->setColor( mRenderer->wallColor() );
75 mRoofColorButton->setColor( mRenderer->roofColor() );
76 mShadowColorButton->setColor( mRenderer->shadowColor() );
77 mShadowEnabledWidget->setChecked( mRenderer->shadowEnabled() );
78 mShadowSizeWidget->setValue( mRenderer->shadowSpread() );
79 mShadowSizeWidget->setClearValue( 4 );
80 mWallExpositionShading->setChecked( mRenderer->wallShadingEnabled() );
82 connect( mAngleWidget,
static_cast<void ( QSpinBox::* )(
int )
>( &QSpinBox::valueChanged ),
this, &Qgs25DRendererWidget::updateRenderer );
87 connect( mShadowEnabledWidget, &QGroupBox::toggled,
this, &Qgs25DRendererWidget::updateRenderer );
88 connect( mShadowSizeWidget,
static_cast<void ( QDoubleSpinBox::* )(
double )
>( &QDoubleSpinBox::valueChanged ),
this, &Qgs25DRendererWidget::updateRenderer );
89 connect( mWallExpositionShading, &QAbstractButton::toggled,
this, &Qgs25DRendererWidget::updateRenderer );
Single scope for storing variables and functions for use within a QgsExpressionContext.
QVariant variable(const QString &name) const
Retrieves a variable's value from the scope.
static void setLayerVariable(QgsMapLayer *layer, const QString &name, const QVariant &value)
Sets a layer context variable.
static QgsExpressionContextScope * layerScope(const QgsMapLayer *layer)
Creates a new scope which contains variables and functions relating to a QgsMapLayer.