Пример #1
0
//--------------------------------------------------------------------------------------------------
/// 
//--------------------------------------------------------------------------------------------------
QString RimWellLogFileCurve::createCurveAutoName()
{
    QStringList name;
    QString unit;
    bool channelNameAvailable = false;

    if (m_wellPath)
    {
        name.push_back(wellName());
        name.push_back("LAS");

        if (!m_wellLogChannnelName().isEmpty())
        {
            name.push_back(m_wellLogChannnelName);
            channelNameAvailable = true;
        }

        RigWellLogFile* wellLogFile = m_wellLogFile ? m_wellLogFile->wellLogFileData() : nullptr;

        if (wellLogFile)
        {
            if (channelNameAvailable)
            {
                RimWellLogPlot* wellLogPlot;
                firstAncestorOrThisOfType(wellLogPlot);
                CVF_ASSERT(wellLogPlot);
                QString unitName = wellLogFile->wellLogChannelUnitString(m_wellLogChannnelName, wellLogPlot->depthUnit());

                if (!unitName.isEmpty())
                {
                    name.back() += QString(" [%1]").arg(unitName);
                }
            }

            QString date = wellLogFile->date();
            if (!date.isEmpty())
            {
                name.push_back(wellLogFile->date());
            }

        }

        return name.join(", ");
    }

    return "Empty curve";
}
Пример #2
0
//--------------------------------------------------------------------------------------------------
/// 
//--------------------------------------------------------------------------------------------------
QString RimWellLogExtractionCurve::createCurveAutoName()
{
    RimGeoMechCase* geomCase = dynamic_cast<RimGeoMechCase*>(m_case.value());
    RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>(m_case.value());
    
    QStringList generatedCurveName;

    if (m_addWellNameToCurveName)
    {
        if (!wellName().isEmpty())
        {
            generatedCurveName += wellName();
            if (m_trajectoryType == SIMULATION_WELL && simulationWellBranches().size() > 1)
            {
                generatedCurveName.push_back(" Br" + QString::number(m_branchIndex + 1));
            }
        }
    }

    if (m_addCaseNameToCurveName && m_case())
    {
        generatedCurveName.push_back(m_case->caseUserDescription());
    }

    if (m_addPropertyToCurveName && !wellLogChannelName().isEmpty())
    {
        generatedCurveName.push_back(wellLogChannelName());
    }

    if (m_addTimestepToCurveName || m_addDateToCurveName)
    {
        size_t maxTimeStep = 0;

        if (eclipseCase)
        {
            if (eclipseCase->eclipseCaseData())
            {
                maxTimeStep = eclipseCase->eclipseCaseData()->results(m_eclipseResultDefinition->porosityModel())->maxTimeStepCount();
            }
        }
        else if (geomCase)
        {
            if (geomCase->geoMechData())
            {
                maxTimeStep = geomCase->geoMechData()->femPartResults()->frameCount();
            }
        }

        if (m_addDateToCurveName)
        {
            QString dateString = wellDate();
            if (!dateString.isEmpty())
            {
                generatedCurveName.push_back(dateString);
            }
        }

        if (m_addTimestepToCurveName)
        {
            generatedCurveName.push_back(QString("[%1/%2]").arg(m_timeStep()).arg(maxTimeStep));
        }
    }

    return generatedCurveName.join(", ");
}