Improved mock model settings and use caf property dialog

This commit is contained in:
Magne Sjaastad 2013-10-28 12:05:06 +01:00
parent 4300e74674
commit 6e3860571e
2 changed files with 42 additions and 20 deletions

View File

@ -35,7 +35,7 @@ RimMockModelSettings::RimMockModelSettings()
CAF_PDM_InitField(&cellCountX, "CellCountX", quint64(100), "Cell Count X", "", "", ""); CAF_PDM_InitField(&cellCountX, "CellCountX", quint64(100), "Cell Count X", "", "", "");
CAF_PDM_InitField(&cellCountY, "CellCountY", quint64(100), "Cell Count Y", "", "", ""); CAF_PDM_InitField(&cellCountY, "CellCountY", quint64(100), "Cell Count Y", "", "", "");
CAF_PDM_InitField(&cellCountZ, "CellCountZ", quint64(100), "Cell Count Z", "", "", ""); CAF_PDM_InitField(&cellCountZ, "CellCountZ", quint64(10), "Cell Count Z", "", "", "");
CAF_PDM_InitFieldNoDefault(&totalCellCount, "TotalCellCount", "Total Cell Count", "", "", ""); CAF_PDM_InitFieldNoDefault(&totalCellCount, "TotalCellCount", "Total Cell Count", "", "", "");
totalCellCount.setUiReadOnly(true); totalCellCount.setUiReadOnly(true);
@ -70,4 +70,8 @@ void RimMockModelSettings::defineUiOrdering(QString uiConfigName, caf::PdmUiOrde
gridSizeGroup->add(&cellCountY); gridSizeGroup->add(&cellCountY);
gridSizeGroup->add(&cellCountZ); gridSizeGroup->add(&cellCountZ);
gridSizeGroup->add(&totalCellCount); gridSizeGroup->add(&totalCellCount);
caf::PdmUiGroup* resultGroup = uiOrdering.addNewGroup("Results");
resultGroup->add(&resultCount);
resultGroup->add(&timeStepCount);
} }

View File

@ -17,6 +17,13 @@
///////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////
#include "RiaStdInclude.h" #include "RiaStdInclude.h"
#include "cafProgressInfo.h"
#include "cafPdmSettings.h"
#include "cafPdmFieldCvfMat4d.h"
#include "cafPdmFieldCvfColor.h"
#include "cafPdmUiPropertyDialog.h"
#include "RimResultCase.h" #include "RimResultCase.h"
#include "RigCaseData.h" #include "RigCaseData.h"
#include "RifReaderEclipseOutput.h" #include "RifReaderEclipseOutput.h"
@ -24,7 +31,7 @@
#include "RimReservoirView.h" #include "RimReservoirView.h"
#include "RifReaderMockModel.h" #include "RifReaderMockModel.h"
#include "RifReaderEclipseInput.h" #include "RifReaderEclipseInput.h"
#include "cafProgressInfo.h"
#include "RimProject.h" #include "RimProject.h"
#include "RifEclipseOutputFileTools.h" #include "RifEclipseOutputFileTools.h"
#include "RiaApplication.h" #include "RiaApplication.h"
@ -34,8 +41,6 @@
#include "RimReservoirCellResultsCacher.h" #include "RimReservoirCellResultsCacher.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "cafPdmFieldCvfMat4d.h"
#include "cafPdmFieldCvfColor.h"
#include "RimResultSlot.h" #include "RimResultSlot.h"
#include "RimCellEdgeResultSlot.h" #include "RimCellEdgeResultSlot.h"
#include "RimCellRangeFilterCollection.h" #include "RimCellRangeFilterCollection.h"
@ -265,29 +270,42 @@ cvf::ref<RifReaderInterface> RimResultCase::createMockModel(QString modelName)
} }
else if (modelName == RimDefines::mockModelCustomized()) else if (modelName == RimDefines::mockModelCustomized())
{ {
QApplication::setOverrideCursor(QCursor(Qt::ArrowCursor));
RimMockModelSettings rimMockModelSettings; RimMockModelSettings rimMockModelSettings;
caf::Settings::readFieldsFromApplicationStore(&rimMockModelSettings);
//caf::Settings::readFieldsFromApplicationStore(&rimMockModelSettings); caf::PdmUiPropertyDialog propertyDialog(NULL, &rimMockModelSettings, "Customize Mock Model");
if (propertyDialog.exec() == QDialog::Accepted)
{
QApplication::restoreOverrideCursor();
double startX = 0; caf::Settings::writeFieldsToApplicationStore(&rimMockModelSettings);
double startY = 0;
double startZ = 0;
double widthX = 6000; double startX = 0;
double widthY = 12000; double startY = 0;
double widthZ = 500; double startZ = 0;
// Test code to simulate UTM coordinates double widthX = 6000;
double offsetX = 400000; double widthY = 12000;
double offsetY = 6000000; double widthZ = 500;
double offsetZ = 0;
mockFileInterface->setWorldCoordinates(cvf::Vec3d(startX + offsetX, startY + offsetY, startZ + offsetZ), cvf::Vec3d(startX + widthX + offsetX, startY + widthY + offsetY, startZ + widthZ + offsetZ)); // Test code to simulate UTM coordinates
mockFileInterface->setGridPointDimensions(cvf::Vec3st(rimMockModelSettings.cellCountX, rimMockModelSettings.cellCountX, rimMockModelSettings.cellCountX)); double offsetX = 400000;
mockFileInterface->setResultInfo(rimMockModelSettings.resultCount, rimMockModelSettings.timeStepCount); double offsetY = 6000000;
mockFileInterface->enableWellData(false); double offsetZ = 0;
mockFileInterface->open("", reservoir.p()); mockFileInterface->setWorldCoordinates(cvf::Vec3d(startX + offsetX, startY + offsetY, startZ + offsetZ), cvf::Vec3d(startX + widthX + offsetX, startY + widthY + offsetY, startZ + widthZ + offsetZ));
mockFileInterface->setGridPointDimensions(cvf::Vec3st(rimMockModelSettings.cellCountX + 1, rimMockModelSettings.cellCountY + 1, rimMockModelSettings.cellCountZ + 1));
mockFileInterface->setResultInfo(rimMockModelSettings.resultCount, rimMockModelSettings.timeStepCount);
mockFileInterface->enableWellData(false);
mockFileInterface->open("", reservoir.p());
}
else
{
QApplication::restoreOverrideCursor();
}
} }
this->setReservoirData( reservoir.p() ); this->setReservoirData( reservoir.p() );