Files
ResInsight/ApplicationLibCode/Commands/FractureCommands/RicCreateMultipleFracturesFeature.h
T
Kristian Bendiksen 6e3e6e738f #14772 Python: Add Reservoir.create_multiple_fractures as object method and forward createMultipleFractures to it
RimEclipseCase_createMultipleFractures takes WellPath objects and a
FractureTemplate object instead of names and ids. The
MultipleFractures::Action enum is moved from the Ricf header to
RicCreateMultipleFracturesFeature.h so the object method does not
depend on CommandFileInterface, and is registered as the Python
StrEnum MultipleFracturesAction.

Add RicfForwarding::findFractureTemplate(). RicfCreateMultipleFractures
resolves names/ids and forwards to the object method.

The hand-written Case.create_multiple_fractures(template_id=...,
well_path_names=...) Python wrapper is removed: the generated
Reservoir method has the same name and shadows it. The test is updated
to the object based signature.
2026-09-22 14:19:23 +02:00

77 lines
2.0 KiB
C++

/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2018- Equinor ASA
//
// ResInsight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.
//
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
// for more details.
//
/////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "cafCmdFeature.h"
#include "RigBoundingBoxIjk.h"
#include "cafVecIjk.h"
#include <QPointer>
class RiuCreateMultipleFractionsUi;
class RimEclipseCase;
namespace MultipleFractures
{
enum class Action
{
NONE,
APPEND_FRACTURES,
REPLACE_FRACTURES
};
}
namespace caf
{
class PdmUiPropertyViewDialog;
}
//==================================================================================================
///
//==================================================================================================
class RicCreateMultipleFracturesFeature : public caf::CmdFeature
{
Q_OBJECT
CAF_CMD_HEADER_INIT;
public:
RicCreateMultipleFracturesFeature() {}
void appendFractures();
void replaceFractures();
RigBoundingBoxIjk<caf::VecIjk0> ijkRangeForGrid( RimEclipseCase* gridCase ) const;
private slots:
void slotDeleteAndAppendFractures();
void slotAppendFractures();
void slotClose();
private:
void onActionTriggered( bool isChecked ) override;
void setupActionLook( QAction* actionToSetup ) override;
bool isCommandEnabled() const override;
RiuCreateMultipleFractionsUi* multipleFractionsUi() const;
private:
QString m_copyOfObject;
};