mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-09 23:16:00 -06:00
parent
6f4a4e16c6
commit
adc777083d
@ -338,8 +338,8 @@ void Rim3dOverlayInfoConfig::updateEclipse3DInfo(RimEclipseView * reservoirView)
|
||||
|| reservoirView->cellResult()->isTernarySaturationSelected())
|
||||
{
|
||||
int currentTimeStep = reservoirView->currentTimeStep();
|
||||
QDateTime date = reservoirView->currentGridCellResults()->cellResults()->timeStepDate(0, currentTimeStep);
|
||||
infoText += QString("<b>Time Step:</b> %1 <b>Time:</b> %2").arg(currentTimeStep).arg(date.toString("dd.MMM yyyy"));
|
||||
QString dateString = reservoirView->ownerCase()->timeStepName(currentTimeStep);
|
||||
infoText += QString("<b>Time Step:</b> %1 <b>Time:</b> %2").arg(currentTimeStep).arg(dateString);
|
||||
}
|
||||
|
||||
reservoirView->viewer()->setInfoText(infoText);
|
||||
@ -480,8 +480,8 @@ void Rim3dOverlayInfoConfig::updateGeoMech3DInfo(RimGeoMechView * geoMechView)
|
||||
}
|
||||
{
|
||||
int currentTimeStep = geoMechView->currentTimeStep();
|
||||
QString stepName = QString::fromStdString(caseData->femPartResults()->stepNames()[currentTimeStep]);
|
||||
infoText += QString("<b>Time Step:</b> %1 <b>Time:</b> %2").arg(currentTimeStep).arg(stepName);
|
||||
QString dateString = geoMechView->ownerCase()->timeStepName(currentTimeStep);
|
||||
infoText += QString("<b>Time Step:</b> %1 <b>Time:</b> %2").arg(currentTimeStep).arg(dateString);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -41,14 +41,13 @@ public:
|
||||
|
||||
virtual caf::PdmFieldHandle* userDescriptionField() { return &caseUserDescription; }
|
||||
|
||||
virtual QStringList timeStepStrings() { return QStringList(); }
|
||||
virtual QStringList timeStepStrings() = 0;
|
||||
virtual QString timeStepName(int frameIdx) = 0;
|
||||
|
||||
protected:
|
||||
static QString relocateFile(const QString& fileName, const QString& newProjectPath, const QString& oldProjectPath,
|
||||
bool* foundFile, std::vector<QString>* searchedPaths);
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -52,7 +52,7 @@ CAF_PDM_XML_ABSTRACT_SOURCE_INIT(RimEclipseCase, "RimReservoir");
|
||||
//------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimEclipseCase::RimEclipseCase()
|
||||
RimEclipseCase::RimEclipseCase()
|
||||
{
|
||||
CAF_PDM_InitFieldNoDefault(&reservoirViews, "ReservoirViews", "", "", "", "");
|
||||
reservoirViews.uiCapability()->setUiHidden(true);
|
||||
@ -428,27 +428,44 @@ QStringList RimEclipseCase::timeStepStrings()
|
||||
{
|
||||
QStringList stringList;
|
||||
|
||||
std::vector<QDateTime> timeStepDates = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDates(0);
|
||||
|
||||
bool showHoursAndMinutes = false;
|
||||
for (size_t i = 0; i < timeStepDates.size(); i++)
|
||||
int timeStepCount = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepCount(0);
|
||||
for (size_t i = 0; i < timeStepCount; i++)
|
||||
{
|
||||
if (timeStepDates[i].time().hour() != 0.0 || timeStepDates[i].time().minute() != 0.0)
|
||||
{
|
||||
showHoursAndMinutes = true;
|
||||
}
|
||||
}
|
||||
|
||||
QString formatString = "dd.MMM yyyy";
|
||||
if (showHoursAndMinutes)
|
||||
{
|
||||
formatString += " - hh:mm";
|
||||
}
|
||||
|
||||
for (size_t i = 0; i < timeStepDates.size(); i++)
|
||||
{
|
||||
stringList += timeStepDates[i].toString(formatString);
|
||||
stringList += this->timeStepName(i);
|
||||
}
|
||||
|
||||
return stringList;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
QString RimEclipseCase::timeStepName(int frameIdx)
|
||||
{
|
||||
if (m_timeStepFormatString.isEmpty())
|
||||
{
|
||||
std::vector<QDateTime> timeStepDates = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDates(0);
|
||||
|
||||
bool hasHrsAndMinutesInTimesteps = false;
|
||||
for (size_t i = 0; i < timeStepDates.size(); i++)
|
||||
{
|
||||
if (timeStepDates[i].time().hour() != 0.0 || timeStepDates[i].time().minute() != 0.0)
|
||||
{
|
||||
hasHrsAndMinutesInTimesteps = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_timeStepFormatString = "dd.MMM yyyy";
|
||||
if (hasHrsAndMinutesInTimesteps)
|
||||
{
|
||||
m_timeStepFormatString += " - hh:mm";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
QDateTime date = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDate(0,frameIdx);
|
||||
return date.toString(m_timeStepFormatString);
|
||||
|
||||
}
|
@ -86,6 +86,7 @@ public:
|
||||
|
||||
virtual std::vector<RimView*> views();
|
||||
virtual QStringList timeStepStrings();
|
||||
virtual QString timeStepName(int frameIdx);
|
||||
|
||||
// Overridden methods from PdmObject
|
||||
public:
|
||||
@ -99,13 +100,13 @@ protected:
|
||||
void computeCachedData();
|
||||
void setReservoirData(RigCaseData* eclipseCase);
|
||||
|
||||
|
||||
private:
|
||||
cvf::ref<RigCaseData> m_rigEclipseCase;
|
||||
|
||||
private:
|
||||
caf::PdmChildField<RimReservoirCellResultsStorage*> m_matrixModelResults;
|
||||
caf::PdmChildField<RimReservoirCellResultsStorage*> m_fractureModelResults;
|
||||
QString m_timeStepFormatString;
|
||||
|
||||
// Obsolete fields
|
||||
protected:
|
||||
|
@ -110,6 +110,7 @@ public:
|
||||
|
||||
void setEclipseCase(RimEclipseCase* reservoir);
|
||||
RimEclipseCase* eclipseCase();
|
||||
virtual RimCase* ownerCase();
|
||||
|
||||
// Display model generation
|
||||
|
||||
@ -165,10 +166,10 @@ private:
|
||||
|
||||
void clampCurrentTimestep();
|
||||
|
||||
virtual RimCase* ownerCase();
|
||||
|
||||
virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility);
|
||||
|
||||
|
||||
caf::PdmChildField<RimEclipsePropertyFilterCollection*> m_propertyFilterCollection;
|
||||
caf::PdmPointer<RimEclipsePropertyFilterCollection> m_overridePropertyFilterCollection;
|
||||
|
||||
|
@ -169,3 +169,13 @@ QStringList RimGeoMechCase::timeStepStrings()
|
||||
|
||||
return stringList;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QString RimGeoMechCase::timeStepName(int frameIdx)
|
||||
{
|
||||
std::vector<std::string> stepNames = geoMechData()->femPartResults()->stepNames();
|
||||
|
||||
return QString::fromStdString(stepNames[frameIdx]);
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
virtual std::vector<RimView*> views();
|
||||
|
||||
virtual QStringList timeStepStrings();
|
||||
|
||||
virtual QString timeStepName(int frameIdx);
|
||||
|
||||
// Fields:
|
||||
caf::PdmChildArrayField<RimGeoMechView*> geoMechViews;
|
||||
|
@ -60,6 +60,7 @@ public:
|
||||
|
||||
void setGeoMechCase(RimGeoMechCase* gmCase);
|
||||
RimGeoMechCase* geoMechCase();
|
||||
virtual RimCase* ownerCase();
|
||||
|
||||
virtual void loadDataAndUpdate();
|
||||
|
||||
@ -96,7 +97,6 @@ private:
|
||||
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
|
||||
virtual void initAfterRead();
|
||||
|
||||
virtual RimCase* ownerCase();
|
||||
|
||||
virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility);
|
||||
|
||||
|
@ -47,6 +47,7 @@
|
||||
#include <QLabel>
|
||||
#include <QMouseEvent>
|
||||
#include <QProgressBar>
|
||||
#include "RimCase.h"
|
||||
|
||||
using cvf::ManipulatorTrackball;
|
||||
|
||||
@ -332,6 +333,8 @@ void RiuViewer::paintOverlayItems(QPainter* painter)
|
||||
|
||||
if (showAnimBar && m_showAnimProgress)
|
||||
{
|
||||
QString stepName = m_reservoirView->ownerCase()->timeStepName(currentFrameIndex());
|
||||
m_animationProgress->setFormat("Time Step: %v/%m " + stepName);
|
||||
m_animationProgress->setMinimum(0);
|
||||
m_animationProgress->setMaximum(static_cast<int>(frameCount()) - 1);
|
||||
m_animationProgress->setValue(currentFrameIndex());
|
||||
|
Loading…
Reference in New Issue
Block a user