#1167, #1143 Calculating angle for simulation well, and setting angle based on this for "along well" and "transverse well" orientation of frac template. Azimuth field for fracture read-only if orientation not "azimuth" for frac template.

This commit is contained in:
astridkbjorke
2017-02-06 11:44:24 +01:00
parent 073c7a6ecc
commit 53e7d99652
9 changed files with 173 additions and 9 deletions

View File

@@ -86,7 +86,7 @@ caf::PdmFieldHandle* RimEllipseFractureTemplate::userDescriptionField()
void RimEllipseFractureTemplate::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (changedField == &halfLength || changedField == &height || changedField == &azimuthAngle || changedField == &perforationLength)
if (changedField == &halfLength || changedField == &height || changedField == &azimuthAngle || changedField == &perforationLength || changedField == &orientation)
{
//Changes to one of these parameters should change all fractures with this fracture template attached.
RimProject* proj;
@@ -112,6 +112,12 @@ void RimEllipseFractureTemplate::fieldChangedByUi(const caf::PdmFieldHandle* cha
fracture->setRecomputeGeometryFlag();
}
if (changedField == &orientation)
{
fracture->setAzimuth(orientation());
fracture->setRecomputeGeometryFlag();
}
if (changedField == &perforationLength && (abs(oldValue.toDouble() - fracture->perforationLength()) < 1e-5))
{
fracture->perforationLength = perforationLength;