mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-05 00:09:32 -04:00
qgsvectorelevationpropertieswidget: Add support for custom tolerance
This commit is contained in:
parent
7c5665434e
commit
3955dbe253
@ -45,6 +45,7 @@ QgsVectorElevationPropertiesWidget::QgsVectorElevationPropertiesWidget( QgsVecto
|
|||||||
mOffsetZSpinBox->setClearValue( 0 );
|
mOffsetZSpinBox->setClearValue( 0 );
|
||||||
mScaleZSpinBox->setClearValue( 1 );
|
mScaleZSpinBox->setClearValue( 1 );
|
||||||
mExtrusionSpinBox->setClearValue( 0 );
|
mExtrusionSpinBox->setClearValue( 0 );
|
||||||
|
mToleranceSpinBox->setClearValue( 0 );
|
||||||
|
|
||||||
mLineStyleButton->setSymbolType( Qgis::SymbolType::Line );
|
mLineStyleButton->setSymbolType( Qgis::SymbolType::Line );
|
||||||
mFillStyleButton->setSymbolType( Qgis::SymbolType::Fill );
|
mFillStyleButton->setSymbolType( Qgis::SymbolType::Fill );
|
||||||
@ -78,6 +79,7 @@ QgsVectorElevationPropertiesWidget::QgsVectorElevationPropertiesWidget( QgsVecto
|
|||||||
connect( mElevationLimitSpinBox, qOverload<double>( &QDoubleSpinBox::valueChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
connect( mElevationLimitSpinBox, qOverload<double>( &QDoubleSpinBox::valueChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
connect( mExtrusionSpinBox, qOverload<double>( &QDoubleSpinBox::valueChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
connect( mExtrusionSpinBox, qOverload<double>( &QDoubleSpinBox::valueChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
connect( mExtrusionGroupBox, &QGroupBox::toggled, this, &QgsVectorElevationPropertiesWidget::onChanged );
|
connect( mExtrusionGroupBox, &QGroupBox::toggled, this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
|
connect( mToleranceSpinBox, qOverload<double >( &QDoubleSpinBox::valueChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
connect( mComboClamping, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
connect( mComboClamping, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
connect( mComboBinding, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
connect( mComboBinding, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::onChanged );
|
||||||
connect( mComboClamping, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::clampingChanged );
|
connect( mComboClamping, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsVectorElevationPropertiesWidget::clampingChanged );
|
||||||
@ -155,6 +157,8 @@ void QgsVectorElevationPropertiesWidget::syncToLayer( QgsMapLayer *layer )
|
|||||||
mElevationLimitSpinBox->setValue( props->elevationLimit() );
|
mElevationLimitSpinBox->setValue( props->elevationLimit() );
|
||||||
mExtrusionGroupBox->setChecked( props->extrusionEnabled() );
|
mExtrusionGroupBox->setChecked( props->extrusionEnabled() );
|
||||||
mExtrusionSpinBox->setValue( props->extrusionHeight() );
|
mExtrusionSpinBox->setValue( props->extrusionHeight() );
|
||||||
|
mToleranceGroupBox->setChecked( props->customToleranceEnabled() );
|
||||||
|
mToleranceSpinBox->setValue( props->customTolerance() );
|
||||||
mTypeComboBox->setCurrentIndex( mTypeComboBox->findData( static_cast<int>( props->type() ) ) );
|
mTypeComboBox->setCurrentIndex( mTypeComboBox->findData( static_cast<int>( props->type() ) ) );
|
||||||
switch ( props->type() )
|
switch ( props->type() )
|
||||||
{
|
{
|
||||||
@ -234,6 +238,8 @@ void QgsVectorElevationPropertiesWidget::apply()
|
|||||||
props->setBinding( static_cast<Qgis::AltitudeBinding>( mComboBinding->currentData().toInt() ) );
|
props->setBinding( static_cast<Qgis::AltitudeBinding>( mComboBinding->currentData().toInt() ) );
|
||||||
props->setExtrusionEnabled( mExtrusionGroupBox->isChecked() );
|
props->setExtrusionEnabled( mExtrusionGroupBox->isChecked() );
|
||||||
props->setExtrusionHeight( mExtrusionSpinBox->value() );
|
props->setExtrusionHeight( mExtrusionSpinBox->value() );
|
||||||
|
props->setCustomToleranceEnabled( mToleranceGroupBox->isChecked() );
|
||||||
|
props->setCustomTolerance( mToleranceSpinBox->value() );
|
||||||
if ( mElevationLimitSpinBox->value() != mElevationLimitSpinBox->clearValue() )
|
if ( mElevationLimitSpinBox->value() != mElevationLimitSpinBox->clearValue() )
|
||||||
props->setElevationLimit( mElevationLimitSpinBox->value() );
|
props->setElevationLimit( mElevationLimitSpinBox->value() );
|
||||||
else
|
else
|
||||||
|
@ -279,6 +279,57 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="mToleranceGroupBox">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>If checked, the layer will use this tolerance instead of the one defined in the Elevation Profile widget.</string>
|
||||||
|
</property>
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::StrongFocus</enum>
|
||||||
|
</property>
|
||||||
|
<property name="title">
|
||||||
|
<string>Custom Tolerance</string>
|
||||||
|
</property>
|
||||||
|
<property name="checkable">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
<property name="syncGroup" stdset="0">
|
||||||
|
<string notr="true">vectorgeneral</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_Tolerance">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label_Tolerance">
|
||||||
|
<property name="text">
|
||||||
|
<string>Tolerance</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QgsDoubleSpinBox" name="mToleranceSpinBox">
|
||||||
|
<property name="decimals">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<double>0.000000000000000</double>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<double>99999999999.000000000000000</double>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="Line" name="line_Tolerance">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="groupBox">
|
<widget class="QGroupBox" name="groupBox">
|
||||||
<property name="title">
|
<property name="title">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user