(#541) Using result name as well log channel name when exporting to LAS

This commit is contained in:
Pål Hagen
2015-10-15 14:37:57 +02:00
parent 707ddf15d7
commit f8c725e2b8
6 changed files with 48 additions and 22 deletions

View File

@@ -403,32 +403,14 @@ QString RimWellLogExtractionCurve::createCurveName()
generatedCurveName += m_case->caseUserDescription();
}
if (m_addPropertyToCurveName && eclipseCase)
if (m_addPropertyToCurveName)
{
if (!generatedCurveName.isEmpty())
{
generatedCurveName += ",";
}
generatedCurveName += m_eclipseResultDefinition->resultVariable();
}
if (m_addPropertyToCurveName && geomCase)
{
QString geoMechResultName;
QString resCompName = m_geomResultDefinition->resultComponentUiName();
if (resCompName.isEmpty())
geoMechResultName = m_geomResultDefinition->resultFieldUiName();
else
geoMechResultName += m_geomResultDefinition->resultFieldUiName() + "." + resCompName;
if (!generatedCurveName.isEmpty())
{
generatedCurveName += ", ";
}
generatedCurveName += geoMechResultName;
generatedCurveName += wellLogChannelName();
}
if (m_addTimestepToCurveName || m_addDateToCurveName)
@@ -478,3 +460,32 @@ QString RimWellLogExtractionCurve::createCurveName()
return generatedCurveName;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimWellLogExtractionCurve::wellLogChannelName() const
{
RimGeoMechCase* geoMechCase = dynamic_cast<RimGeoMechCase*>(m_case.value());
RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>(m_case.value());
QString name;
if (eclipseCase)
{
name = m_eclipseResultDefinition->resultVariable();
}
else if (geoMechCase)
{
QString resCompName = m_geomResultDefinition->resultComponentUiName();
if (resCompName.isEmpty())
{
name = m_geomResultDefinition->resultFieldUiName();
}
else
{
name = m_geomResultDefinition->resultFieldUiName() + "." + resCompName;
}
}
return name;
}

View File

@@ -46,6 +46,8 @@ public:
void setWellPath(RimWellPath* wellPath);
void setPropertiesFromView(RimView* view);
virtual QString wellLogChannelName() const;
protected:
virtual QString createCurveName();

View File

@@ -248,3 +248,11 @@ QString RimWellLogFileCurve::createCurveName()
return "Empty curve";
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimWellLogFileCurve::wellLogChannelName() const
{
return m_wellLogChannnelName;
}

View File

@@ -46,6 +46,7 @@ public:
// Overrides from RimWellLogPlotCurve
virtual void updatePlotData();
virtual QString wellLogChannelName() const;
protected:
// Overrides from RimWellLogPlotCurve

View File

@@ -61,6 +61,7 @@ public:
void updateCurveName();
void updatePlotTitle();
virtual QString wellLogChannelName() const = 0;
virtual void updatePlotData() = 0;
protected:

View File

@@ -266,9 +266,12 @@ bool RigWellLogFile::exportToLasFile(const RimWellLogPlotCurve* curve, const QSt
}
}
QString wellLogChannelName = curve->wellLogChannelName();
wellLogChannelName.replace(".", "_");
NRLib::LasWell lasFile;
lasFile.AddLog("DEPTH", "m", "Depth [m]", curveData->yValues());
lasFile.AddLog(curve->name().trimmed().toStdString(), "NO_UNIT", "PARAMETERINFO", wellLogValues);
lasFile.AddLog(wellLogChannelName.toStdString(), "NO_UNIT", "PARAMETERINFO", wellLogValues);
lasFile.SetMissing(absentValue);
std::vector<std::string> commentHeader;