#7805 Ensemble well logs: Add curve appearence settings

This commit is contained in:
Kristian Bendiksen
2021-09-17 10:41:41 +02:00
parent 30b21ac19e
commit 3ce0edb046
7 changed files with 560 additions and 64 deletions

View File

@@ -121,6 +121,15 @@ RimEnsembleWellLogCurveSet::RimEnsembleWellLogCurveSet()
CAF_PDM_InitField( &m_isUsingAutoName, "AutoName", true, "Auto Name", "", "", "" );
CAF_PDM_InitFieldNoDefault( &m_curveAppearance, "PlotCurveAppearance", "PlotCurveAppearance", "", "", "" );
m_curveAppearance = new RimPlotCurveAppearance;
m_curveAppearance.uiCapability()->setUiTreeHidden( true );
m_curveAppearance->setInterpolationVisible( false );
m_curveAppearance->setColorVisible( false );
m_curveAppearance->setFillOptionsVisible( false );
m_curveAppearance->appearanceChanged.connect( this, &RimEnsembleWellLogCurveSet::onEnsembleCurvesAppearanceChanged );
m_qwtPlotCurveForLegendText = new QwtPlotCurve;
m_qwtPlotCurveForLegendText->setLegendAttribute( QwtPlotCurve::LegendShowSymbol, true );
@@ -331,6 +340,14 @@ void RimEnsembleWellLogCurveSet::setColorMode( ColorMode mode )
m_colorMode = mode;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEnsembleWellLogCurveSet::onEnsembleCurvesAppearanceChanged( const caf::SignalEmitter* emitter )
{
loadDataAndUpdate( true );
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -469,6 +486,9 @@ void RimEnsembleWellLogCurveSet::defineUiOrdering( QString uiConfigName, caf::Pd
caf::PdmUiGroup* statGroup = uiOrdering.addNewGroup( "Statistics" );
m_statistics->defineUiOrdering( uiConfigName, *statGroup );
caf::PdmUiGroup* curveAppearanceGroup = uiOrdering.addNewGroup( "Curve Appearance" );
m_curveAppearance->appearanceUiOrdering( *curveAppearanceGroup );
uiOrdering.skipRemainingFields( true );
}
@@ -782,6 +802,13 @@ void RimEnsembleWellLogCurveSet::updateEnsembleCurves( const std::vector<RimWell
curve->setWellLogChannelName( wellLogChannelName );
curve->setWellLogFile( wellLogFile );
curve->setSymbol( m_curveAppearance->symbol() );
curve->setSymbolSize( m_curveAppearance->symbolSize() );
curve->setSymbolSkipDistance( m_curveAppearance->symbolSkipDistance() );
curve->setSymbolEdgeColor( m_curveAppearance->symbolEdgeColor() );
curve->setLineStyle( m_curveAppearance->lineStyle() );
curve->setLineThickness( m_curveAppearance->lineThickness() );
if ( offsets ) curve->setIndexDepthOffsets( offsets );
curve->loadDataAndUpdate( true );

View File

@@ -46,6 +46,7 @@ class RimEnsembleStatisticsCase;
class RimWellLogCurve;
class RimWellLogFileCurve;
class RimWellLogFile;
class RimPlotCurveAppearance;
class RiuDraggableOverlayFrame;
@@ -150,6 +151,7 @@ private:
void connectEnsembleCurveSetFilterSignals();
void onFilterSourceChanged( const caf::SignalEmitter* emitter );
void onEnsembleCurvesAppearanceChanged( const caf::SignalEmitter* emitter );
private:
caf::PdmField<bool> m_showCurves;
@@ -167,9 +169,10 @@ private:
caf::PdmField<QString> m_userDefinedName;
caf::PdmProxyValueField<QString> m_autoGeneratedName;
caf::PdmPtrField<RimEnsembleWellLogs*> m_ensembleWellLogs;
caf::PdmField<QString> m_wellLogChannelName;
caf::PdmPtrField<RimEnsembleCurveSet*> m_ensembleCurveSet;
caf::PdmPtrField<RimEnsembleWellLogs*> m_ensembleWellLogs;
caf::PdmField<QString> m_wellLogChannelName;
caf::PdmPtrField<RimEnsembleCurveSet*> m_ensembleCurveSet;
caf::PdmChildField<RimPlotCurveAppearance*> m_curveAppearance;
QwtPlotCurve* m_qwtPlotCurveForLegendText;
QPointer<RiuDraggableOverlayFrame> m_legendOverlayFrame;