mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1240 Added checbox to StimPlan Colors
This commit is contained in:
@@ -119,8 +119,12 @@ void RivWellFracturePartMgr::updatePartGeometryTexture(caf::DisplayCoordTransfor
|
||||
if (activeView)
|
||||
{
|
||||
stimPlanColors = activeView->stimPlanColors;
|
||||
|
||||
if (stimPlanColors->isChecked())
|
||||
{
|
||||
legendConfig = stimPlanColors->activeLegend();
|
||||
}
|
||||
}
|
||||
|
||||
// Note : If no legend is found, draw geo using a single color
|
||||
|
||||
@@ -152,6 +156,7 @@ void RivWellFracturePartMgr::updatePartGeometryTexture(caf::DisplayCoordTransfor
|
||||
m_part = new cvf::Part;
|
||||
m_part->setDrawable(geo.p());
|
||||
|
||||
float opacityLevel = activeView->stimPlanColors->opacityLevel();
|
||||
if (legendConfig)
|
||||
{
|
||||
cvf::ScalarMapper* scalarMapper = legendConfig->scalarMapper();
|
||||
@@ -182,7 +187,6 @@ void RivWellFracturePartMgr::updatePartGeometryTexture(caf::DisplayCoordTransfor
|
||||
|
||||
caf::ScalarMapperEffectGenerator effGen(scalarMapper, caf::PO_NEG_LARGE);
|
||||
|
||||
float opacityLevel = activeView->stimPlanColors->opacityLevel();
|
||||
effGen.setOpacityLevel(opacityLevel);
|
||||
|
||||
if (activeView && activeView->isLightingDisabled())
|
||||
@@ -190,7 +194,6 @@ void RivWellFracturePartMgr::updatePartGeometryTexture(caf::DisplayCoordTransfor
|
||||
effGen.disableLighting(true);
|
||||
}
|
||||
|
||||
m_part->setPriority(RivPartPriority::PartType::Transparent);
|
||||
|
||||
cvf::ref<cvf::Effect> eff = effGen.generateCachedEffect();
|
||||
|
||||
@@ -198,10 +201,15 @@ void RivWellFracturePartMgr::updatePartGeometryTexture(caf::DisplayCoordTransfor
|
||||
}
|
||||
else
|
||||
{
|
||||
caf::SurfaceEffectGenerator surfaceGen(cvf::Color4f(cvf::Color3f(cvf::Color3::BROWN)), caf::PO_1);
|
||||
cvf::Color4f fractureColor = cvf::Color4f(cvf::Color3f(cvf::Color3::BROWN));
|
||||
fractureColor.a() = opacityLevel;
|
||||
|
||||
caf::SurfaceEffectGenerator surfaceGen(fractureColor, caf::PO_1);
|
||||
cvf::ref<cvf::Effect> eff = surfaceGen.generateCachedEffect();
|
||||
m_part->setEffect(eff.p());
|
||||
}
|
||||
|
||||
m_part->setPriority(RivPartPriority::PartType::Transparent);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1009,7 +1009,7 @@ void RimEclipseView::updateLegends()
|
||||
{
|
||||
stimPlanColors->updateLegendData();
|
||||
|
||||
if (stimPlanLegend->legend())
|
||||
if (stimPlanColors()->isChecked() && stimPlanLegend->legend())
|
||||
{
|
||||
m_viewer->addColorLegendToBottomLeftCorner(stimPlanLegend->legend());
|
||||
}
|
||||
|
||||
@@ -43,11 +43,12 @@ RimStimPlanColors::RimStimPlanColors()
|
||||
CAF_PDM_InitObject("StimPlan Colors", ":/draw_style_faults_24x24.png", "", "");
|
||||
|
||||
CAF_PDM_InitField(&m_resultNameAndUnit, "ResultName", QString(""), "Result Variable", "", "", "");
|
||||
CAF_PDM_InitField(&opacityLevel, "opacityLevel", 0.2f, "Transparency", "", "", "");
|
||||
|
||||
CAF_PDM_InitField(&m_opacityLevel, "opacityLevel", 0.2f, "Transparency", "", "", "");
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_legendConfigurations, "LegendConfigurations", "", "", "", "");
|
||||
m_legendConfigurations.uiCapability()->setUiTreeHidden(true);
|
||||
|
||||
m_name = "StimPlan Colors";
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -194,6 +195,14 @@ QString RimStimPlanColors::unit() const
|
||||
return RimStimPlanColors::toUnit(m_resultNameAndUnit());
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
float RimStimPlanColors::opacityLevel() const
|
||||
{
|
||||
return m_opacityLevel();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -281,3 +290,13 @@ void RimStimPlanColors::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrder
|
||||
uiTreeOrdering.setForgetRemainingFields(true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimStimPlanColors::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
|
||||
{
|
||||
uiOrdering.add(&m_resultNameAndUnit);
|
||||
uiOrdering.add(&m_opacityLevel);
|
||||
uiOrdering.setForgetRemainingFields(true);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,10 +18,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "RimCheckableNamedObject.h"
|
||||
|
||||
#include "cafAppEnum.h"
|
||||
#include "cafPdmChildField.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmChildArrayField.h"
|
||||
|
||||
namespace caf {
|
||||
@@ -35,7 +36,7 @@ class RimFractureTemplateCollection;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimStimPlanColors : public caf::PdmObject
|
||||
class RimStimPlanColors : public RimCheckableNamedObject
|
||||
{
|
||||
CAF_PDM_HEADER_INIT;
|
||||
|
||||
@@ -44,21 +45,20 @@ public:
|
||||
virtual ~RimStimPlanColors();
|
||||
|
||||
RimLegendConfig* activeLegend() const;
|
||||
|
||||
QString resultName() const;
|
||||
QString unit() const;
|
||||
float opacityLevel() const;
|
||||
|
||||
void loadDataAndUpdate();
|
||||
void updateLegendData();
|
||||
|
||||
caf::PdmField<float> opacityLevel;
|
||||
|
||||
|
||||
protected:
|
||||
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool* useOptionsOnly) override;
|
||||
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
|
||||
virtual void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "") override;
|
||||
|
||||
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
|
||||
|
||||
private:
|
||||
RimFractureTemplateCollection* fractureTemplateCollection() const;
|
||||
static QString toString(const std::pair<QString, QString>& resultNameAndUnit);
|
||||
@@ -67,6 +67,7 @@ private:
|
||||
static QString toUnit(const QString& resultNameAndUnit);
|
||||
|
||||
private:
|
||||
caf::PdmField<float> m_opacityLevel;
|
||||
caf::PdmField<QString> m_resultNameAndUnit;
|
||||
caf::PdmChildArrayField<RimLegendConfig*> m_legendConfigurations;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user